forked from ovn-kubernetes/ovn-kubernetes
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathopenvswitch-ovn-kubernetes.spec
142 lines (113 loc) · 4.42 KB
/
openvswitch-ovn-kubernetes.spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
%global project ovn-kubernetes
%global repo %{project}
%global debug_package %{nil}
# some distros (e.g: RHEL-7) don't define _rundir macro yet
# Fedora 15 onwards uses /run as _rundir
%if 0%{!?_rundir:1}
%define _rundir /run
%endif
# define the python package prefix based on distribution version so that we can
# simultaneously support RHEL-based and later Fedora versions in this spec file.
%if 0%{?fedora} >= 25
%define _py2 python2
%endif
%if 0%{?rhel} || 0%{?fedora} < 25
%define _py2 python
%endif
Name: openvswitch-ovn-kubernetes
Version: 0.2.0
Release: 1%{?dist}
URL: https://www.github.com/openvswitch/ovn-kubernetes
Summary: Open Virtual Networking Kubernetes Wedge
License: ASL 2.0
Source0: https://github.com/openvswitch/ovn-kubernetes/archive/v%{version}.tar.gz
# golang not supported
ExcludeArch: ppc64
BuildRequires: %{_py2}-devel
%if 0%{?fedora} > 22 || %{with build_python3}
BuildRequires: python3-devel
%endif
BuildRequires: golang
%description
This allows kubernetes to use Open Virtual Networking (OVN)
%package master
Summary: ovn-kubernetes systemd for master
License: ASL 2.0
#Requires: openvswitch-ovn-kubernetes systemd openvswitch
%description master
This allows systemd to control ovn on the master
%package node
Summary: ovn-kubernetes systemd for node
License: ASL 2.0
#Requires: openvswitch-ovn-kubernetes systemd openvswitch
%description node
This allows systemd to control ovn on the node
%prep
%setup -q -n %{repo}-%{version}
%build
cd go-controller && make
strip _output/go/bin/ovnkube
strip _output/go/bin/ovn-kube-util
strip _output/go/bin/ovn-k8s-overlay
strip _output/go/bin/ovn-k8s-cni-overlay
%install
install -d -m 0750 %{buildroot}%{_bindir}
install -d -m 0750 %{buildroot}%{_libexecdir}/cni
install -p -m 755 go-controller/_output/go/bin/ovnkube %{buildroot}%{_bindir}
install -p -m 755 go-controller/_output/go/bin/ovn-kube-util %{buildroot}%{_bindir}
install -p -m 755 go-controller/_output/go/bin/ovn-k8s-overlay %{buildroot}%{_bindir}
install -p -m 755 go-controller/_output/go/bin/ovn-k8s-cni-overlay %{buildroot}%{_libexecdir}/cni
install -d -m 0750 %{buildroot}/etc/openvswitch
install -p -m 644 go-controller/etc/ovn_k8s.conf %{buildroot}/etc/openvswitch
install -d -m 0750 %{buildroot}%{_mandir}/man1
install -p -m 644 docs/ovnkube.1 %{buildroot}%{_mandir}/man1
install -p -m 644 docs/ovn-kube-util.1 %{buildroot}%{_mandir}/man1
install -p -m 644 docs/ovn-k8s-overlay.1 %{buildroot}%{_mandir}/man1
install -d -m 0750 %{buildroot}%{_mandir}/man5
install -p -m 644 docs/ovn_k8s.conf.5 %{buildroot}%{_mandir}/man5
install -p -D -m 0644 dist/files/ovn-kubernetes-master.service \
%{buildroot}%{_unitdir}/ovn-kubernetes-master.service
install -p -D -m 0644 dist/files/ovn-kubernetes-node.service \
%{buildroot}%{_unitdir}/ovn-kubernetes-node.service
install -p -m 755 dist/files/ovn-kubernetes-master.sh %{buildroot}%{_bindir}
install -p -m 755 dist/files/ovn-kubernetes-node.sh %{buildroot}%{_bindir}
install -p -D -m 0644 dist/files/ovn-kubernetes.sysconfig \
%{buildroot}%{_sysconfdir}/sysconfig/ovn-kubernetes
%preun node
%systemd_preun openvswitch-ovn-kubernetes-node
%preun master
%systemd_preun openvswitch-ovn-kubernetes-master
%post node
%systemd_post openvswitch-ovn-kubernetes-node
%post master
%systemd_post openvswitch-ovn-kubernetes-master
%files
%defattr(-,root,root)
%license COPYING
%doc CONTRIBUTING.md README.md
%doc docs/config.md docs/debugging.md docs/INSTALL.SSL.md docs/INSTALL.UBUNTU.md
%{_mandir}/man1/ovnkube.1.*
%{_mandir}/man1/ovn-kube-util.1.*
%{_mandir}/man1/ovn-k8s-overlay.1.*
%{_mandir}/man5/ovn_k8s.conf.5.*
%{_bindir}/ovnkube
%{_bindir}/ovn-kube-util
%{_bindir}/ovn-k8s-overlay
%{_libexecdir}/cni/ovn-k8s-cni-overlay
%config(noreplace) %{_sysconfdir}/openvswitch/ovn_k8s.conf
%files node
%{_unitdir}/ovn-kubernetes-node.service
%{_bindir}/ovn-kubernetes-node.sh
%config(noreplace) %{_sysconfdir}/sysconfig/ovn-kubernetes
%files master
%{_unitdir}/ovn-kubernetes-master.service
%{_bindir}/ovn-kubernetes-master.sh
%changelog
* Fri Mar 23 2018 Phil Cameron <[email protected]> - 0.2.0-1
- Added packages for systemd packages openvswitch-ovn-kubernetes-node
and openvswitch-ovn-kubernetes-master.
* Thu Jan 25 2018 Phil Cameron <[email protected]> - 0.1.0-2
- Changed from referencing a commit to referencing a release
in the source repo.
* Fri Jan 12 2018 Phil Cameron <[email protected]> - 0.1.0-1
- Initial package for Fedora