Browse code

kubernetes : Add version 1.10.2

Change-Id: I962909c409622fde0db94e914cf222772300479a
Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/5118
Tested-by: gerrit-photon <photon-checkins@vmware.com>
Reviewed-by: Sharath George

Xiaolin Li authored on 2018/05/05 05:50:38
Showing 4 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,244 @@
0
+Summary:        Kubernetes cluster management
1
+Name:           kubernetes
2
+Version:        1.10.2
3
+Release:        1%{?dist}
4
+License:        ASL 2.0
5
+URL:            https://github.com/kubernetes/kubernetes/archive/v%{version}.tar.gz
6
+Source0:        kubernetes-%{version}.tar.gz
7
+%define sha1    kubernetes-%{version}.tar.gz=e1cef85820ff16265788c96a6fd31056bfaf247c
8
+Source1:        https://github.com/kubernetes/contrib/archive/contrib-0.7.0.tar.gz
9
+%define sha1    contrib-0.7.0=47a744da3b396f07114e518226b6313ef4b2203c
10
+Group:          Development/Tools
11
+Vendor:         VMware, Inc.
12
+Distribution:   Photon
13
+BuildRequires:  go
14
+BuildRequires:  rsync
15
+BuildRequires:  which
16
+Requires:       cni
17
+Requires:       ebtables
18
+Requires:       etcd >= 3.0.4
19
+Requires:       ethtool
20
+Requires:       iptables
21
+Requires:       iproute2
22
+Requires(pre):  /usr/sbin/useradd /usr/sbin/groupadd
23
+Requires(postun):/usr/sbin/userdel /usr/sbin/groupdel
24
+Requires:       socat
25
+Requires:       (util-linux or toybox)
26
+
27
+%description
28
+Kubernetes is an open source implementation of container cluster management.
29
+
30
+%package        kubeadm
31
+Summary:        kubeadm deployment tool
32
+Group:          Development/Tools
33
+Requires:       %{name} = %{version}
34
+%description    kubeadm
35
+kubeadm is a tool that enables quick and easy deployment of a kubernetes cluster.
36
+
37
+%package        pause
38
+Summary:        pause binary
39
+Group:          Development/Tools
40
+%description    pause
41
+A pod setup process that holds a pod's namespace.
42
+
43
+%prep -p exit
44
+%setup -qn %{name}-%{version}
45
+cd ..
46
+tar xf %{SOURCE1} --no-same-owner
47
+sed -i -e 's|127.0.0.1:4001|127.0.0.1:2379|g' contrib-0.7.0/init/systemd/environ/apiserver
48
+cd %{name}-%{version}
49
+
50
+%build
51
+make
52
+pushd build/pause
53
+mkdir -p bin
54
+gcc -Os -Wall -Werror -static -o bin/pause-amd64 pause.c
55
+strip bin/pause-amd64
56
+popd
57
+
58
+%install
59
+install -vdm644 %{buildroot}/etc/profile.d
60
+install -m 755 -d %{buildroot}%{_bindir}
61
+
62
+binaries=(cloud-controller-manager hyperkube kube-aggregator kube-apiserver kube-controller-manager kubelet kube-proxy kube-scheduler kubectl)
63
+for bin in "${binaries[@]}"; do
64
+  echo "+++ INSTALLING ${bin}"
65
+  install -p -m 755 -t %{buildroot}%{_bindir} _output/local/bin/linux/amd64/${bin}
66
+done
67
+install -p -m 755 -t %{buildroot}%{_bindir} build/pause/bin/pause-amd64
68
+
69
+# kubeadm install
70
+install -vdm644 %{buildroot}/etc/systemd/system/kubelet.service.d
71
+install -p -m 755 -t %{buildroot}%{_bindir} _output/local/bin/linux/amd64/kubeadm
72
+install -p -m 755 -t %{buildroot}/etc/systemd/system build/rpms/kubelet.service
73
+install -p -m 755 -t %{buildroot}/etc/systemd/system/kubelet.service.d build/rpms/10-kubeadm.conf
74
+sed -i '/KUBELET_CGROUP_ARGS=--cgroup-driver=systemd/d' %{buildroot}/etc/systemd/system/kubelet.service.d/10-kubeadm.conf
75
+
76
+cd ..
77
+# install config files
78
+install -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}
79
+install -m 644 -t %{buildroot}%{_sysconfdir}/%{name} contrib-0.7.0/init/systemd/environ/*
80
+cat << EOF >> %{buildroot}%{_sysconfdir}/%{name}/kubeconfig
81
+apiVersion: v1
82
+clusters:
83
+- cluster:
84
+    server: http://127.0.0.1:8080
85
+EOF
86
+sed -i '/KUBELET_API_SERVER/c\KUBELET_API_SERVER="--kubeconfig=/etc/kubernetes/kubeconfig"' %{buildroot}%{_sysconfdir}/%{name}/kubelet
87
+
88
+# install service files
89
+install -d -m 0755 %{buildroot}/usr/lib/systemd/system
90
+install -m 0644 -t %{buildroot}/usr/lib/systemd/system contrib-0.7.0/init/systemd/*.service
91
+
92
+# install the place the kubelet defaults to put volumes
93
+install -dm755 %{buildroot}/var/lib/kubelet
94
+install -dm755 %{buildroot}/var/run/kubernetes
95
+
96
+mkdir -p %{buildroot}/%{_lib}/tmpfiles.d
97
+cat << EOF >> %{buildroot}/%{_lib}/tmpfiles.d/kubernetes.conf
98
+d /var/run/kubernetes 0755 kube kube -
99
+EOF
100
+
101
+%check
102
+export GOPATH=%{_builddir}
103
+go get golang.org/x/tools/cmd/cover
104
+make %{?_smp_mflags} check
105
+
106
+%clean
107
+rm -rf %{buildroot}/*
108
+
109
+%pre
110
+if [ $1 -eq 1 ]; then
111
+    # Initial installation.
112
+    getent group kube >/dev/null || groupadd -r kube
113
+    getent passwd kube >/dev/null || useradd -r -g kube -d / -s /sbin/nologin \
114
+            -c "Kubernetes user" kube
115
+fi
116
+
117
+%post
118
+chown -R kube:kube /var/lib/kubelet
119
+chown -R kube:kube /var/run/kubernetes
120
+systemctl daemon-reload
121
+
122
+%post kubeadm
123
+systemctl daemon-reload
124
+systemctl stop kubelet
125
+systemctl enable kubelet
126
+
127
+%preun kubeadm
128
+if [ $1 -eq 0 ]; then
129
+    systemctl stop kubelet
130
+fi
131
+
132
+%postun
133
+if [ $1 -eq 0 ]; then
134
+    # Package deletion
135
+    userdel kube
136
+    groupdel kube
137
+    systemctl daemon-reload
138
+fi
139
+
140
+%postun kubeadm
141
+if [ $1 -eq 0 ]; then
142
+    systemctl daemon-reload
143
+fi
144
+
145
+%files
146
+%defattr(-,root,root)
147
+%{_bindir}/cloud-controller-manager
148
+%{_bindir}/hyperkube
149
+%{_bindir}/kube-aggregator
150
+%{_bindir}/kube-apiserver
151
+%{_bindir}/kube-controller-manager
152
+%{_bindir}/kubelet
153
+%{_bindir}/kube-proxy
154
+%{_bindir}/kube-scheduler
155
+%{_bindir}/kubectl
156
+#%{_bindir}/kubefed
157
+%{_lib}/systemd/system/kube-apiserver.service
158
+%{_lib}/systemd/system/kubelet.service
159
+%{_lib}/systemd/system/kube-scheduler.service
160
+%{_lib}/systemd/system/kube-controller-manager.service
161
+%{_lib}/systemd/system/kube-proxy.service
162
+%{_lib}/tmpfiles.d/kubernetes.conf
163
+%dir %{_sysconfdir}/%{name}
164
+%dir /var/lib/kubelet
165
+%dir /var/run/kubernetes
166
+%config(noreplace) %{_sysconfdir}/%{name}/config
167
+%config(noreplace) %{_sysconfdir}/%{name}/apiserver
168
+%config(noreplace) %{_sysconfdir}/%{name}/controller-manager
169
+%config(noreplace) %{_sysconfdir}/%{name}/proxy
170
+%config(noreplace) %{_sysconfdir}/%{name}/kubelet
171
+%config(noreplace) %{_sysconfdir}/%{name}/kubeconfig
172
+%config(noreplace) %{_sysconfdir}/%{name}/scheduler
173
+
174
+%files kubeadm
175
+%defattr(-,root,root)
176
+%{_bindir}/kubeadm
177
+/etc/systemd/system/kubelet.service
178
+/etc/systemd/system/kubelet.service.d/10-kubeadm.conf
179
+
180
+%files pause
181
+%defattr(-,root,root)
182
+%{_bindir}/pause-amd64
183
+
184
+%changelog
185
+*   Thu May 03 2018 Xiaolin Li <xiaolinl@vmware.com> 1.10.2-1
186
+-   Add kubernetes 1.10.2.
187
+*   Tue May 01 2018 Dheeraj Shetty <dheerajs@vmware.com> 1.9.6-2
188
+-   Enable TLS certificate validation in Cascade CLoud Provider
189
+*   Wed Mar 21 2018 Dheeraj Shetty <dheerajs@vmware.com> 1.9.6-1
190
+-   k8s v1.9.6 and Cascade Cloud Provider patch
191
+*   Tue Jan 30 2018 Ashok Chandrasekar <ashokc@vmware.com> 1.8.1-5
192
+-   Fix issue in Cascade cloud provider.
193
+*   Tue Jan 23 2018 Ashok Chandrasekar <ashokc@vmware.com> 1.8.1-4
194
+-   Add Cascade cloud provider.
195
+*   Fri Nov 15 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-3
196
+-   Specify --kubeconfig to pass in config file.
197
+*   Tue Nov 07 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-2
198
+-   Specify API server via kubeconfig file.
199
+*   Wed Nov 01 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-1
200
+-   k8s v1.8.1.
201
+*   Mon Sep 18 2017 Alexey Makhalov <amakhalov@vmware.com> 1.7.5-2
202
+-   Requires util-linux or toybox
203
+-   Remove shadow from requires and use explicit tools for post actions
204
+*   Mon Sep 11 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.5-1
205
+-   k8s v1.7.5.
206
+*   Thu Aug 03 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-3
207
+-   PhotonOS based k8s pause container.
208
+*   Sat Jul 22 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-2
209
+-   Split kubeadm into its own pkg.
210
+*   Fri Jul 14 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-1
211
+-   Upgrade kubernetes to v1.7.0.
212
+*   Tue May 09 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-3
213
+-   Fix kubernetes dependencies.
214
+*   Thu May 04 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-2
215
+-   Include cloud-controller-manager, kube-aggregator binaries.
216
+*   Tue Mar 28 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-1
217
+-   Build kubernetes 1.6.0 from source.
218
+*   Mon Feb 13 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.5.2-3
219
+-   Added kubeadm, kubefed, dns, discovery to package.
220
+*   Fri Jan 27 2017 Xiaolin Li <xiaolinl@vmware.com> 1.5.2-2
221
+-   Added /lib/tmpfiles.d/kubernetes.conf.
222
+*   Thu Jan 19 2017 Xiaolin Li <xiaolinl@vmware.com> 1.5.2-1
223
+-   Upgraded to version 1.5.2
224
+*   Fri Oct 21 2016 Xiaolin Li <xiaolinl@vmware.com> 1.4.4-1
225
+-   Upgraded to version 1.4.4
226
+*   Wed Sep 21 2016 Xiaolin Li <xiaolinl@vmware.com> 1.4.0-1
227
+-   Upgraded to version 1.4.0
228
+*   Fri Jun 24 2016 Xiaolin Li <xiaolinl@vmware.com> 1.2.4-1
229
+-   Upgraded to version 1.2.4
230
+*   Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.1.8-4
231
+-   GA - Bump release of all rpms
232
+*   Wed May 18 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.1.8-3
233
+-   Fix if syntax
234
+*   Thu May 05 2016 Kumar Kaushik <kaushikk@vmware.com> 1.1.8-2
235
+-   Adding support to pre/post/un scripts for package upgrade.
236
+*   Tue Feb 23 2016 Harish Udaiya Kumar <hudaiyakumar@vmware.com> 1.1.8-1
237
+-   Upgraded to version 1.1.8
238
+*   Mon Aug 3 2015 Tom Scanlan <tscanlan@vmware.com> 1.0.2-1
239
+-   bump up to latest release
240
+*   Thu Jul 23 2015 Vinay Kulkarni <kulkarniv@vmware.com> 1.0.1-1
241
+-   Upgrade to kubernetes v1.0.1
242
+*   Tue Mar 10 2015 Divya Thaluru <dthaluru@vmware.com> 0.12.1-1
243
+-   Initial build. First version
0 244
new file mode 100644
... ...
@@ -0,0 +1,244 @@
0
+Summary:        Kubernetes cluster management
1
+Name:           kubernetes
2
+Version:        1.9.6
3
+Release:        2%{?dist}
4
+License:        ASL 2.0
5
+URL:            https://github.com/kubernetes/kubernetes/archive/v%{version}.tar.gz
6
+Source0:        kubernetes-v%{version}.tar.gz
7
+%define sha1    kubernetes-v%{version}.tar.gz=6996c0690a38cda1ae5479a4dde7ebfeb590e5fb
8
+Source1:        https://github.com/kubernetes/contrib/archive/contrib-0.7.0.tar.gz
9
+%define sha1    contrib-0.7.0=47a744da3b396f07114e518226b6313ef4b2203c
10
+Patch0:         k8s-cascade.patch
11
+Group:          Development/Tools
12
+Vendor:         VMware, Inc.
13
+Distribution:   Photon
14
+BuildRequires:  go
15
+BuildRequires:  rsync
16
+BuildRequires:  which
17
+Requires:       cni
18
+Requires:       ebtables
19
+Requires:       etcd >= 3.0.4
20
+Requires:       ethtool
21
+Requires:       iptables
22
+Requires:       iproute2
23
+Requires(pre):  /usr/sbin/useradd /usr/sbin/groupadd
24
+Requires(postun):/usr/sbin/userdel /usr/sbin/groupdel
25
+Requires:       socat
26
+Requires:       (util-linux or toybox)
27
+
28
+%description
29
+Kubernetes is an open source implementation of container cluster management.
30
+
31
+%package        kubeadm
32
+Summary:        kubeadm deployment tool
33
+Group:          Development/Tools
34
+Requires:       %{name} = %{version}
35
+%description    kubeadm
36
+kubeadm is a tool that enables quick and easy deployment of a kubernetes cluster.
37
+
38
+%package        pause
39
+Summary:        pause binary
40
+Group:          Development/Tools
41
+%description    pause
42
+A pod setup process that holds a pod's namespace.
43
+
44
+%prep -p exit
45
+%setup -qn %{name}-%{version}
46
+cd ..
47
+tar xf %{SOURCE1} --no-same-owner
48
+sed -i -e 's|127.0.0.1:4001|127.0.0.1:2379|g' contrib-0.7.0/init/systemd/environ/apiserver
49
+cd %{name}-%{version}
50
+%patch0 -p1
51
+
52
+%build
53
+make
54
+pushd build/pause
55
+mkdir -p bin
56
+gcc -Os -Wall -Werror -static -o bin/pause-amd64 pause.c
57
+strip bin/pause-amd64
58
+popd
59
+
60
+%install
61
+install -vdm644 %{buildroot}/etc/profile.d
62
+install -m 755 -d %{buildroot}%{_bindir}
63
+
64
+binaries=(cloud-controller-manager hyperkube kube-aggregator kube-apiserver kube-controller-manager kubelet kube-proxy kube-scheduler kubectl)
65
+for bin in "${binaries[@]}"; do
66
+  echo "+++ INSTALLING ${bin}"
67
+  install -p -m 755 -t %{buildroot}%{_bindir} _output/local/bin/linux/amd64/${bin}
68
+done
69
+install -p -m 755 -t %{buildroot}%{_bindir} build/pause/bin/pause-amd64
70
+
71
+# kubeadm install
72
+install -vdm644 %{buildroot}/etc/systemd/system/kubelet.service.d
73
+install -p -m 755 -t %{buildroot}%{_bindir} _output/local/bin/linux/amd64/kubeadm
74
+install -p -m 755 -t %{buildroot}/etc/systemd/system build/rpms/kubelet.service
75
+install -p -m 755 -t %{buildroot}/etc/systemd/system/kubelet.service.d build/rpms/10-kubeadm.conf
76
+sed -i '/KUBELET_CGROUP_ARGS=--cgroup-driver=systemd/d' %{buildroot}/etc/systemd/system/kubelet.service.d/10-kubeadm.conf
77
+
78
+cd ..
79
+# install config files
80
+install -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}
81
+install -m 644 -t %{buildroot}%{_sysconfdir}/%{name} contrib-0.7.0/init/systemd/environ/*
82
+cat << EOF >> %{buildroot}%{_sysconfdir}/%{name}/kubeconfig
83
+apiVersion: v1
84
+clusters:
85
+- cluster:
86
+    server: http://127.0.0.1:8080
87
+EOF
88
+sed -i '/KUBELET_API_SERVER/c\KUBELET_API_SERVER="--kubeconfig=/etc/kubernetes/kubeconfig"' %{buildroot}%{_sysconfdir}/%{name}/kubelet
89
+
90
+# install service files
91
+install -d -m 0755 %{buildroot}/usr/lib/systemd/system
92
+install -m 0644 -t %{buildroot}/usr/lib/systemd/system contrib-0.7.0/init/systemd/*.service
93
+
94
+# install the place the kubelet defaults to put volumes
95
+install -dm755 %{buildroot}/var/lib/kubelet
96
+install -dm755 %{buildroot}/var/run/kubernetes
97
+
98
+mkdir -p %{buildroot}/%{_lib}/tmpfiles.d
99
+cat << EOF >> %{buildroot}/%{_lib}/tmpfiles.d/kubernetes.conf
100
+d /var/run/kubernetes 0755 kube kube -
101
+EOF
102
+
103
+%check
104
+export GOPATH=%{_builddir}
105
+go get golang.org/x/tools/cmd/cover
106
+make %{?_smp_mflags} check
107
+
108
+%clean
109
+rm -rf %{buildroot}/*
110
+
111
+%pre
112
+if [ $1 -eq 1 ]; then
113
+    # Initial installation.
114
+    getent group kube >/dev/null || groupadd -r kube
115
+    getent passwd kube >/dev/null || useradd -r -g kube -d / -s /sbin/nologin \
116
+            -c "Kubernetes user" kube
117
+fi
118
+
119
+%post
120
+chown -R kube:kube /var/lib/kubelet
121
+chown -R kube:kube /var/run/kubernetes
122
+systemctl daemon-reload
123
+
124
+%post kubeadm
125
+systemctl daemon-reload
126
+systemctl stop kubelet
127
+systemctl enable kubelet
128
+
129
+%preun kubeadm
130
+if [ $1 -eq 0 ]; then
131
+    systemctl stop kubelet
132
+fi
133
+
134
+%postun
135
+if [ $1 -eq 0 ]; then
136
+    # Package deletion
137
+    userdel kube
138
+    groupdel kube
139
+    systemctl daemon-reload
140
+fi
141
+
142
+%postun kubeadm
143
+if [ $1 -eq 0 ]; then
144
+    systemctl daemon-reload
145
+fi
146
+
147
+%files
148
+%defattr(-,root,root)
149
+%{_bindir}/cloud-controller-manager
150
+%{_bindir}/hyperkube
151
+%{_bindir}/kube-aggregator
152
+%{_bindir}/kube-apiserver
153
+%{_bindir}/kube-controller-manager
154
+%{_bindir}/kubelet
155
+%{_bindir}/kube-proxy
156
+%{_bindir}/kube-scheduler
157
+%{_bindir}/kubectl
158
+#%{_bindir}/kubefed
159
+%{_lib}/systemd/system/kube-apiserver.service
160
+%{_lib}/systemd/system/kubelet.service
161
+%{_lib}/systemd/system/kube-scheduler.service
162
+%{_lib}/systemd/system/kube-controller-manager.service
163
+%{_lib}/systemd/system/kube-proxy.service
164
+%{_lib}/tmpfiles.d/kubernetes.conf
165
+%dir %{_sysconfdir}/%{name}
166
+%dir /var/lib/kubelet
167
+%dir /var/run/kubernetes
168
+%config(noreplace) %{_sysconfdir}/%{name}/config
169
+%config(noreplace) %{_sysconfdir}/%{name}/apiserver
170
+%config(noreplace) %{_sysconfdir}/%{name}/controller-manager
171
+%config(noreplace) %{_sysconfdir}/%{name}/proxy
172
+%config(noreplace) %{_sysconfdir}/%{name}/kubelet
173
+%config(noreplace) %{_sysconfdir}/%{name}/kubeconfig
174
+%config(noreplace) %{_sysconfdir}/%{name}/scheduler
175
+
176
+%files kubeadm
177
+%defattr(-,root,root)
178
+%{_bindir}/kubeadm
179
+/etc/systemd/system/kubelet.service
180
+/etc/systemd/system/kubelet.service.d/10-kubeadm.conf
181
+
182
+%files pause
183
+%defattr(-,root,root)
184
+%{_bindir}/pause-amd64
185
+
186
+%changelog
187
+*   Tue May 01 2018 Dheeraj Shetty <dheerajs@vmware.com> 1.9.6-2
188
+-   Enable TLS certificate validation in Cascade CLoud Provider
189
+*   Wed Mar 21 2018 Dheeraj Shetty <dheerajs@vmware.com> 1.9.6-1
190
+-   k8s v1.9.6 and Cascade Cloud Provider patch
191
+*   Tue Jan 30 2018 Ashok Chandrasekar <ashokc@vmware.com> 1.8.1-5
192
+-   Fix issue in Cascade cloud provider.
193
+*   Tue Jan 23 2018 Ashok Chandrasekar <ashokc@vmware.com> 1.8.1-4
194
+-   Add Cascade cloud provider.
195
+*   Fri Nov 15 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-3
196
+-   Specify --kubeconfig to pass in config file.
197
+*   Tue Nov 07 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-2
198
+-   Specify API server via kubeconfig file.
199
+*   Wed Nov 01 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-1
200
+-   k8s v1.8.1.
201
+*   Mon Sep 18 2017 Alexey Makhalov <amakhalov@vmware.com> 1.7.5-2
202
+-   Requires util-linux or toybox
203
+-   Remove shadow from requires and use explicit tools for post actions
204
+*   Mon Sep 11 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.5-1
205
+-   k8s v1.7.5.
206
+*   Thu Aug 03 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-3
207
+-   PhotonOS based k8s pause container.
208
+*   Sat Jul 22 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-2
209
+-   Split kubeadm into its own pkg.
210
+*   Fri Jul 14 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-1
211
+-   Upgrade kubernetes to v1.7.0.
212
+*   Tue May 09 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-3
213
+-   Fix kubernetes dependencies.
214
+*   Thu May 04 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-2
215
+-   Include cloud-controller-manager, kube-aggregator binaries.
216
+*   Tue Mar 28 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-1
217
+-   Build kubernetes 1.6.0 from source.
218
+*   Mon Feb 13 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.5.2-3
219
+-   Added kubeadm, kubefed, dns, discovery to package.
220
+*   Fri Jan 27 2017 Xiaolin Li <xiaolinl@vmware.com> 1.5.2-2
221
+-   Added /lib/tmpfiles.d/kubernetes.conf.
222
+*   Thu Jan 19 2017 Xiaolin Li <xiaolinl@vmware.com> 1.5.2-1
223
+-   Upgraded to version 1.5.2
224
+*   Fri Oct 21 2016 Xiaolin Li <xiaolinl@vmware.com> 1.4.4-1
225
+-   Upgraded to version 1.4.4
226
+*   Wed Sep 21 2016 Xiaolin Li <xiaolinl@vmware.com> 1.4.0-1
227
+-   Upgraded to version 1.4.0
228
+*   Fri Jun 24 2016 Xiaolin Li <xiaolinl@vmware.com> 1.2.4-1
229
+-   Upgraded to version 1.2.4
230
+*   Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.1.8-4
231
+-   GA - Bump release of all rpms
232
+*   Wed May 18 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.1.8-3
233
+-   Fix if syntax
234
+*   Thu May 05 2016 Kumar Kaushik <kaushikk@vmware.com> 1.1.8-2
235
+-   Adding support to pre/post/un scripts for package upgrade.
236
+*   Tue Feb 23 2016 Harish Udaiya Kumar <hudaiyakumar@vmware.com> 1.1.8-1
237
+-   Upgraded to version 1.1.8
238
+*   Mon Aug 3 2015 Tom Scanlan <tscanlan@vmware.com> 1.0.2-1
239
+-   bump up to latest release
240
+*   Thu Jul 23 2015 Vinay Kulkarni <kulkarniv@vmware.com> 1.0.1-1
241
+-   Upgrade to kubernetes v1.0.1
242
+*   Tue Mar 10 2015 Divya Thaluru <dthaluru@vmware.com> 0.12.1-1
243
+-   Initial build. First version
0 244
deleted file mode 100644
... ...
@@ -1,244 +0,0 @@
1
-Summary:        Kubernetes cluster management
2
-Name:           kubernetes
3
-Version:        1.9.6
4
-Release:        2%{?dist}
5
-License:        ASL 2.0
6
-URL:            https://github.com/kubernetes/kubernetes/archive/v%{version}.tar.gz
7
-Source0:        kubernetes-v%{version}.tar.gz
8
-%define sha1    kubernetes-v%{version}.tar.gz=6996c0690a38cda1ae5479a4dde7ebfeb590e5fb
9
-Source1:        https://github.com/kubernetes/contrib/archive/contrib-0.7.0.tar.gz
10
-%define sha1    contrib-0.7.0=47a744da3b396f07114e518226b6313ef4b2203c
11
-Patch0:         k8s-cascade.patch
12
-Group:          Development/Tools
13
-Vendor:         VMware, Inc.
14
-Distribution:   Photon
15
-BuildRequires:  go
16
-BuildRequires:  rsync
17
-BuildRequires:  which
18
-Requires:       cni
19
-Requires:       ebtables
20
-Requires:       etcd >= 3.0.4
21
-Requires:       ethtool
22
-Requires:       iptables
23
-Requires:       iproute2
24
-Requires(pre):  /usr/sbin/useradd /usr/sbin/groupadd
25
-Requires(postun):/usr/sbin/userdel /usr/sbin/groupdel
26
-Requires:       socat
27
-Requires:       (util-linux or toybox)
28
-
29
-%description
30
-Kubernetes is an open source implementation of container cluster management.
31
-
32
-%package        kubeadm
33
-Summary:        kubeadm deployment tool
34
-Group:          Development/Tools
35
-Requires:       %{name} = %{version}
36
-%description    kubeadm
37
-kubeadm is a tool that enables quick and easy deployment of a kubernetes cluster.
38
-
39
-%package        pause
40
-Summary:        pause binary
41
-Group:          Development/Tools
42
-%description    pause
43
-A pod setup process that holds a pod's namespace.
44
-
45
-%prep -p exit
46
-%setup -qn %{name}-%{version}
47
-cd ..
48
-tar xf %{SOURCE1} --no-same-owner
49
-sed -i -e 's|127.0.0.1:4001|127.0.0.1:2379|g' contrib-0.7.0/init/systemd/environ/apiserver
50
-cd %{name}-%{version}
51
-%patch0 -p1
52
-
53
-%build
54
-make
55
-pushd build/pause
56
-mkdir -p bin
57
-gcc -Os -Wall -Werror -static -o bin/pause-amd64 pause.c
58
-strip bin/pause-amd64
59
-popd
60
-
61
-%install
62
-install -vdm644 %{buildroot}/etc/profile.d
63
-install -m 755 -d %{buildroot}%{_bindir}
64
-
65
-binaries=(cloud-controller-manager hyperkube kube-aggregator kube-apiserver kube-controller-manager kubelet kube-proxy kube-scheduler kubectl)
66
-for bin in "${binaries[@]}"; do
67
-  echo "+++ INSTALLING ${bin}"
68
-  install -p -m 755 -t %{buildroot}%{_bindir} _output/local/bin/linux/amd64/${bin}
69
-done
70
-install -p -m 755 -t %{buildroot}%{_bindir} build/pause/bin/pause-amd64
71
-
72
-# kubeadm install
73
-install -vdm644 %{buildroot}/etc/systemd/system/kubelet.service.d
74
-install -p -m 755 -t %{buildroot}%{_bindir} _output/local/bin/linux/amd64/kubeadm
75
-install -p -m 755 -t %{buildroot}/etc/systemd/system build/rpms/kubelet.service
76
-install -p -m 755 -t %{buildroot}/etc/systemd/system/kubelet.service.d build/rpms/10-kubeadm.conf
77
-sed -i '/KUBELET_CGROUP_ARGS=--cgroup-driver=systemd/d' %{buildroot}/etc/systemd/system/kubelet.service.d/10-kubeadm.conf
78
-
79
-cd ..
80
-# install config files
81
-install -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}
82
-install -m 644 -t %{buildroot}%{_sysconfdir}/%{name} contrib-0.7.0/init/systemd/environ/*
83
-cat << EOF >> %{buildroot}%{_sysconfdir}/%{name}/kubeconfig
84
-apiVersion: v1
85
-clusters:
86
-- cluster:
87
-    server: http://127.0.0.1:8080
88
-EOF
89
-sed -i '/KUBELET_API_SERVER/c\KUBELET_API_SERVER="--kubeconfig=/etc/kubernetes/kubeconfig"' %{buildroot}%{_sysconfdir}/%{name}/kubelet
90
-
91
-# install service files
92
-install -d -m 0755 %{buildroot}/usr/lib/systemd/system
93
-install -m 0644 -t %{buildroot}/usr/lib/systemd/system contrib-0.7.0/init/systemd/*.service
94
-
95
-# install the place the kubelet defaults to put volumes
96
-install -dm755 %{buildroot}/var/lib/kubelet
97
-install -dm755 %{buildroot}/var/run/kubernetes
98
-
99
-mkdir -p %{buildroot}/%{_lib}/tmpfiles.d
100
-cat << EOF >> %{buildroot}/%{_lib}/tmpfiles.d/kubernetes.conf
101
-d /var/run/kubernetes 0755 kube kube -
102
-EOF
103
-
104
-%check
105
-export GOPATH=%{_builddir}
106
-go get golang.org/x/tools/cmd/cover
107
-make %{?_smp_mflags} check
108
-
109
-%clean
110
-rm -rf %{buildroot}/*
111
-
112
-%pre
113
-if [ $1 -eq 1 ]; then
114
-    # Initial installation.
115
-    getent group kube >/dev/null || groupadd -r kube
116
-    getent passwd kube >/dev/null || useradd -r -g kube -d / -s /sbin/nologin \
117
-            -c "Kubernetes user" kube
118
-fi
119
-
120
-%post
121
-chown -R kube:kube /var/lib/kubelet
122
-chown -R kube:kube /var/run/kubernetes
123
-systemctl daemon-reload
124
-
125
-%post kubeadm
126
-systemctl daemon-reload
127
-systemctl stop kubelet
128
-systemctl enable kubelet
129
-
130
-%preun kubeadm
131
-if [ $1 -eq 0 ]; then
132
-    systemctl stop kubelet
133
-fi
134
-
135
-%postun
136
-if [ $1 -eq 0 ]; then
137
-    # Package deletion
138
-    userdel kube
139
-    groupdel kube
140
-    systemctl daemon-reload
141
-fi
142
-
143
-%postun kubeadm
144
-if [ $1 -eq 0 ]; then
145
-    systemctl daemon-reload
146
-fi
147
-
148
-%files
149
-%defattr(-,root,root)
150
-%{_bindir}/cloud-controller-manager
151
-%{_bindir}/hyperkube
152
-%{_bindir}/kube-aggregator
153
-%{_bindir}/kube-apiserver
154
-%{_bindir}/kube-controller-manager
155
-%{_bindir}/kubelet
156
-%{_bindir}/kube-proxy
157
-%{_bindir}/kube-scheduler
158
-%{_bindir}/kubectl
159
-#%{_bindir}/kubefed
160
-%{_lib}/systemd/system/kube-apiserver.service
161
-%{_lib}/systemd/system/kubelet.service
162
-%{_lib}/systemd/system/kube-scheduler.service
163
-%{_lib}/systemd/system/kube-controller-manager.service
164
-%{_lib}/systemd/system/kube-proxy.service
165
-%{_lib}/tmpfiles.d/kubernetes.conf
166
-%dir %{_sysconfdir}/%{name}
167
-%dir /var/lib/kubelet
168
-%dir /var/run/kubernetes
169
-%config(noreplace) %{_sysconfdir}/%{name}/config
170
-%config(noreplace) %{_sysconfdir}/%{name}/apiserver
171
-%config(noreplace) %{_sysconfdir}/%{name}/controller-manager
172
-%config(noreplace) %{_sysconfdir}/%{name}/proxy
173
-%config(noreplace) %{_sysconfdir}/%{name}/kubelet
174
-%config(noreplace) %{_sysconfdir}/%{name}/kubeconfig
175
-%config(noreplace) %{_sysconfdir}/%{name}/scheduler
176
-
177
-%files kubeadm
178
-%defattr(-,root,root)
179
-%{_bindir}/kubeadm
180
-/etc/systemd/system/kubelet.service
181
-/etc/systemd/system/kubelet.service.d/10-kubeadm.conf
182
-
183
-%files pause
184
-%defattr(-,root,root)
185
-%{_bindir}/pause-amd64
186
-
187
-%changelog
188
-*   Tue May 01 2018 Dheeraj Shetty <dheerajs@vmware.com> 1.9.6-2
189
--   Enable TLS certificate validation in Cascade CLoud Provider
190
-*   Wed Mar 21 2018 Dheeraj Shetty <dheerajs@vmware.com> 1.9.6-1
191
--   k8s v1.9.6 and Cascade Cloud Provider patch
192
-*   Tue Jan 30 2018 Ashok Chandrasekar <ashokc@vmware.com> 1.8.1-5
193
--   Fix issue in Cascade cloud provider.
194
-*   Tue Jan 23 2018 Ashok Chandrasekar <ashokc@vmware.com> 1.8.1-4
195
--   Add Cascade cloud provider.
196
-*   Fri Nov 15 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-3
197
--   Specify --kubeconfig to pass in config file.
198
-*   Tue Nov 07 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-2
199
--   Specify API server via kubeconfig file.
200
-*   Wed Nov 01 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.8.1-1
201
--   k8s v1.8.1.
202
-*   Mon Sep 18 2017 Alexey Makhalov <amakhalov@vmware.com> 1.7.5-2
203
--   Requires util-linux or toybox
204
--   Remove shadow from requires and use explicit tools for post actions
205
-*   Mon Sep 11 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.5-1
206
--   k8s v1.7.5.
207
-*   Thu Aug 03 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-3
208
--   PhotonOS based k8s pause container.
209
-*   Sat Jul 22 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-2
210
--   Split kubeadm into its own pkg.
211
-*   Fri Jul 14 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.7.0-1
212
--   Upgrade kubernetes to v1.7.0.
213
-*   Tue May 09 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-3
214
--   Fix kubernetes dependencies.
215
-*   Thu May 04 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-2
216
--   Include cloud-controller-manager, kube-aggregator binaries.
217
-*   Tue Mar 28 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.6.0-1
218
--   Build kubernetes 1.6.0 from source.
219
-*   Mon Feb 13 2017 Vinay Kulkarni <kulkarniv@vmware.com> 1.5.2-3
220
--   Added kubeadm, kubefed, dns, discovery to package.
221
-*   Fri Jan 27 2017 Xiaolin Li <xiaolinl@vmware.com> 1.5.2-2
222
--   Added /lib/tmpfiles.d/kubernetes.conf.
223
-*   Thu Jan 19 2017 Xiaolin Li <xiaolinl@vmware.com> 1.5.2-1
224
--   Upgraded to version 1.5.2
225
-*   Fri Oct 21 2016 Xiaolin Li <xiaolinl@vmware.com> 1.4.4-1
226
--   Upgraded to version 1.4.4
227
-*   Wed Sep 21 2016 Xiaolin Li <xiaolinl@vmware.com> 1.4.0-1
228
--   Upgraded to version 1.4.0
229
-*   Fri Jun 24 2016 Xiaolin Li <xiaolinl@vmware.com> 1.2.4-1
230
--   Upgraded to version 1.2.4
231
-*   Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.1.8-4
232
--   GA - Bump release of all rpms
233
-*   Wed May 18 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.1.8-3
234
--   Fix if syntax
235
-*   Thu May 05 2016 Kumar Kaushik <kaushikk@vmware.com> 1.1.8-2
236
--   Adding support to pre/post/un scripts for package upgrade.
237
-*   Tue Feb 23 2016 Harish Udaiya Kumar <hudaiyakumar@vmware.com> 1.1.8-1
238
--   Upgraded to version 1.1.8
239
-*   Mon Aug 3 2015 Tom Scanlan <tscanlan@vmware.com> 1.0.2-1
240
--   bump up to latest release
241
-*   Thu Jul 23 2015 Vinay Kulkarni <kulkarniv@vmware.com> 1.0.1-1
242
--   Upgrade to kubernetes v1.0.1
243
-*   Tue Mar 10 2015 Divya Thaluru <dthaluru@vmware.com> 0.12.1-1
244
--   Initial build. First version
... ...
@@ -9,62 +9,64 @@ ARCH=x86_64
9 9
 #
10 10
 # Docker images for kubernetes artifacts
11 11
 #
12
-K8S_VER=`cat ${SPEC_DIR}/kubernetes/kubernetes.spec | grep "^Version:" | cut -d: -f2 | tr -d ' '`
13
-K8S_VER_REL=${K8S_VER}-`cat ${SPEC_DIR}/kubernetes/kubernetes.spec | grep "^Release:" | cut -d: -f2 | tr -d ' ' | cut -d% -f1`
14
-K8S_RPM=kubernetes-${K8S_VER_REL}${DIST_TAG}.${ARCH}.rpm
15
-K8S_RPM_FILE=../../../stage/RPMS/x86_64/${K8S_RPM}
16
-K8S_PAUSE_RPM=kubernetes-pause-${K8S_VER_REL}${DIST_TAG}.${ARCH}.rpm
17
-K8S_PAUSE_RPM_FILE=../../../stage/RPMS/x86_64/${K8S_PAUSE_RPM}
12
+for file in ${SPEC_DIR}/kubernetes/kubernetes-*.spec; do
13
+    K8S_VER=`cat ${file} | grep "^Version:" | cut -d: -f2 | tr -d ' '`
14
+    K8S_VER_REL=${K8S_VER}-`cat ${file} | grep "^Release:" | cut -d: -f2 | tr -d ' ' | cut -d% -f1`
15
+    K8S_RPM=kubernetes-${K8S_VER_REL}${DIST_TAG}.${ARCH}.rpm
16
+    K8S_RPM_FILE=../../../stage/RPMS/x86_64/${K8S_RPM}
17
+    K8S_PAUSE_RPM=kubernetes-pause-${K8S_VER_REL}${DIST_TAG}.${ARCH}.rpm
18
+    K8S_PAUSE_RPM_FILE=../../../stage/RPMS/x86_64/${K8S_PAUSE_RPM}
18 19
 
19
-if [ ! -f ${K8S_RPM_FILE} ]
20
-then
21
-    echo "Kubernetes RPM ${K8S_RPM_FILE} not found. Exiting.."
22
-    exit 1
23
-fi
24
-
25
-K8S_BINS=(kube-apiserver kube-controller-manager kube-proxy kube-scheduler)
26
-for K8S_BIN in ${K8S_BINS[*]}; do
27
-    IMG_NAME=vmware/photon-${DIST_VER}-${K8S_BIN}-amd64:v${K8S_VER}
28
-    IMG_ID=`docker images -q ${IMG_NAME} 2> /dev/null`
29
-    if [[ ! -z "${IMG_ID}" ]]; then
30
-        echo "Removing image ${IMG_NAME}"
31
-        docker rmi -f ${IMG_NAME}
20
+    if [ ! -f ${K8S_RPM_FILE} ]
21
+    then
22
+        echo "Kubernetes RPM ${K8S_RPM_FILE} not found. Exiting.."
23
+        exit 1
32 24
     fi
33
-done
34 25
 
35
-mkdir -p tmp/k8s
36
-cp ${K8S_RPM_FILE} tmp/k8s/
37
-cp ${K8S_PAUSE_RPM_FILE} tmp/k8s/
38
-pushd ./tmp/k8s
39
-rpm2cpio ${K8S_RPM} | cpio -vid
40
-rpm2cpio ${K8S_PAUSE_RPM} | cpio -vid
41
-popd
26
+    K8S_BINS=(kube-apiserver kube-controller-manager kube-proxy kube-scheduler)
27
+    for K8S_BIN in ${K8S_BINS[*]}; do
28
+        IMG_NAME=vmware/photon-${DIST_VER}-${K8S_BIN}-amd64:v${K8S_VER}
29
+        IMG_ID=`docker images -q ${IMG_NAME} 2> /dev/null`
30
+        if [[ ! -z "${IMG_ID}" ]]; then
31
+            echo "Removing image ${IMG_NAME}"
32
+            docker rmi -f ${IMG_NAME}
33
+        fi
34
+    done
42 35
 
43
-for K8S_BIN in ${K8S_BINS[*]}; do
44
-    IMG_NAME=vmware/photon-${DIST_VER}-${K8S_BIN}-amd64:v${K8S_VER}
45
-    K8S_TAR_NAME=${K8S_BIN}-v${K8S_VER_REL}.tar
46
-    docker build --rm -t ${IMG_NAME} -f ./Dockerfile.${K8S_BIN} .
47
-    docker save -o ${K8S_TAR_NAME} ${IMG_NAME}
48
-    gzip ${K8S_TAR_NAME}
49
-    mv -f ${K8S_TAR_NAME}.gz ${STAGE_DIR}/docker_images/
50
-done
36
+    mkdir -p tmp/k8s
37
+    cp ${K8S_RPM_FILE} tmp/k8s/
38
+    cp ${K8S_PAUSE_RPM_FILE} tmp/k8s/
39
+    pushd ./tmp/k8s
40
+    rpm2cpio ${K8S_RPM} | cpio -vid
41
+    rpm2cpio ${K8S_PAUSE_RPM} | cpio -vid
42
+    popd
51 43
 
44
+    for K8S_BIN in ${K8S_BINS[*]}; do
45
+        IMG_NAME=vmware/photon-${DIST_VER}-${K8S_BIN}-amd64:v${K8S_VER}
46
+        K8S_TAR_NAME=${K8S_BIN}-v${K8S_VER_REL}.tar
47
+        docker build --rm -t ${IMG_NAME} -f ./Dockerfile.${K8S_BIN} .
48
+        docker save -o ${K8S_TAR_NAME} ${IMG_NAME}
49
+        gzip ${K8S_TAR_NAME}
50
+        mv -f ${K8S_TAR_NAME}.gz ${STAGE_DIR}/docker_images/
51
+    done
52 52
 
53
-#
54
-# K8S Pause container
55
-#
56
-PAUSE_IMG_NAME=vmware/photon-${DIST_VER}-pause-amd64:v${K8S_VER}
57
-PAUSE_TAR_NAME=k8s-pause-v${K8S_VER_REL}.tar
58 53
 
59
-PAUSE_IMG_ID=`docker images -q ${PAUSE_IMG_NAME} 2> /dev/null`
60
-if [[ ! -z "${PAUSE_IMG_ID}" ]]; then
61
-    echo "Removing image ${PAUSE_IMG_NAME}"
62
-    docker rmi -f ${PAUSE_IMG_NAME}
63
-fi
54
+    #
55
+    # K8S Pause container
56
+    #
57
+    PAUSE_IMG_NAME=vmware/photon-${DIST_VER}-pause-amd64:v${K8S_VER}
58
+    PAUSE_TAR_NAME=k8s-pause-v${K8S_VER_REL}.tar
59
+
60
+    PAUSE_IMG_ID=`docker images -q ${PAUSE_IMG_NAME} 2> /dev/null`
61
+    if [[ ! -z "${PAUSE_IMG_ID}" ]]; then
62
+        echo "Removing image ${PAUSE_IMG_NAME}"
63
+        docker rmi -f ${PAUSE_IMG_NAME}
64
+    fi
64 65
 
65
-docker build --rm -t ${PAUSE_IMG_NAME} -f ./Dockerfile.pause .
66
-docker save -o ${PAUSE_TAR_NAME} ${PAUSE_IMG_NAME}
67
-gzip ${PAUSE_TAR_NAME}
68
-mv -f ${PAUSE_TAR_NAME}.gz ${STAGE_DIR}/docker_images/
66
+    docker build --rm -t ${PAUSE_IMG_NAME} -f ./Dockerfile.pause .
67
+    docker save -o ${PAUSE_TAR_NAME} ${PAUSE_IMG_NAME}
68
+    gzip ${PAUSE_TAR_NAME}
69
+    mv -f ${PAUSE_TAR_NAME}.gz ${STAGE_DIR}/docker_images/
69 70
 
70
-rm -rf ./tmp
71
+    rm -rf ./tmp
72
+done