Update to 1.20.2

This commit is contained in:
Sergey Zhemoitel 2021-02-17 01:33:04 +03:00
parent c2bc30f6ce
commit 8ae6e73902
2 changed files with 65 additions and 59 deletions

View file

@ -1,2 +1,2 @@
sources: sources:
kubernetes-1.13.11.tar.gz: c7df65ee06e563e373004809569f383b9b463262 kubernetes-1.20.2.tar.gz: 06d562409795c779a4826a71e50228f6eb969493

View file

@ -2,16 +2,19 @@
%define debug_package %nil %define debug_package %nil
Name: kubernetes Name: kubernetes
Version: 1.13.11 Version: 1.20.2
Release: 1 Release: 1
Summary: Production-Grade Container Scheduling and Management Summary: Production-Grade Container Scheduling and Management
License: ASL 2.0 License: ASL 2.0
URL: https://kubernetes.io URL: https://kubernetes.io
Source0: %{name}-%{version}.tar.gz Source0: https://github.com/kubernetes/kubernetes/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: https://raw.githubusercontent.com/kubernetes/release/master/packages/rpm/kubelet.service
Source2: https://raw.githubusercontent.com/kubernetes/release/master/packages/rpm/10-kubeadm-post-1.11.conf
Source3: https://raw.githubusercontent.com/kubernetes/release/master/packages/rpm/kubelet.env
Source1000: %{name}.rpmlintrc Source1000: %{name}.rpmlintrc
Group: Development/Other Group: Development/Other
BuildRequires: golang >= 1.12.1 BuildRequires: go >= 1.15
BuildRequires: git BuildRequires: git-core
BuildRequires: upx BuildRequires: upx
%description %description
@ -19,6 +22,8 @@ Kubernetes is an open source system for managing containerized
applications across multiple hosts; providing basic mechanisms applications across multiple hosts; providing basic mechanisms
for deployment, maintenance, and scaling of applications. for deployment, maintenance, and scaling of applications.
#------------------------------------------------------------
%package -n kubectl %package -n kubectl
Summary: Container Cluster Manager - Kubernetes client tools Summary: Container Cluster Manager - Kubernetes client tools
@ -28,32 +33,31 @@ Command-line utility for interacting with a Kubernetes cluster
%files -n kubectl %files -n kubectl
%{_bindir}/kubectl %{_bindir}/kubectl
#------------------------------------------------------------
%package -n kubeadm %package -n kubeadm
Summary: Container Cluster Manager - Kubernetes Cluster Bootstrapping Tool Summary: Command-line utility for administering a Kubernetes cluster
Requires: kubelet >= 1.8.0 Requires: kubelet >= 1.20.0
Requires: kubectl >= 1.8.0 Requires: kubectl >= 1.20.0
Requires: cni-plugins >= 0.7.5 Requires: cni-plugins >= 0.8.6
Requires: cri-tools >= 1.11.0 Requires: cri-tools >= 1.20.0
%description -n kubeadm %description -n kubeadm
Command-line utility for deploying a Kubernetes cluster Command-line utility for deploying a Kubernetes cluster
%files -n kubeadm %files -n kubeadm
%{_bindir}/kubeadm %{_bindir}/kubeadm
%{_sysconfdir}/systemd/kubelet.service.d/10-kubeadm.conf
%{_sysconfdir}/sysconfig/kubelet #------------------------------------------------------------
%dir %{_libexecdir}/modules-load.d
%{_libexecdir}/modules-load.d/kubeadm.conf
%{_prefix}/lib/sysctl.d/50-kubeadm.conf
%package -n kubelet %package -n kubelet
Summary: Container Cluster Manager - Kubernetes Node Agent Summary: Container Cluster Manager - Kubernetes Node Agent
Requires: conntrack Requires: conntrack
Requires: ebtables Requires: ebtables
Requires: ethtool Requires: ethtool
Requires: iproute Requires: iproute
Requires: iptables >= 1.4.21 Requires: iptables >= 1.4.21
Requires: cni-plugins >= 0.7.5 Requires: cni-plugins >= 0.8.6
Requires: socat Requires: socat
Requires: util-linux Requires: util-linux
Requires: systemd Requires: systemd
@ -63,78 +67,80 @@ The node agent of Kubernetes, the container cluster manager
%files -n kubelet %files -n kubelet
%{_bindir}/kubelet %{_bindir}/kubelet
%attr(644,-,-) %{_unitdir}/kubelet.service %{_unitdir}/kubelet.service
%{_unitdir}/kubelet.service.d/10-kubeadm.conf
%{_sysconfdir}/kubernetes/manifests/ %{_sysconfdir}/kubernetes/manifests/
%{_sysconfdir}/sysconfig/kubelet
%package client #------------------------------------------------------------
Summary: Kubernetes client tools
BuildRequires: golang >= 1.12.0
Requires: kubectl == %{version}
%description client %package tools
Kubernetes client tools like kubectl Summary: Kubernetes tools
%files client %description tools
%doc *.md LICENSE Kubernetes tools
%{_bindir}/hyperkube
%package docs %files tools
Summary: Kubernetes documentations %{_bindir}/kube-*
%description docs #------------------------------------------------------------
Kubernetes documentations
%files docs %package docs
%doc docs/admin/*.md docs/user-guide/kubectl/*.md docs/yaml/kubectl/*.yaml docs/api-reference LICENSE Summary: Documentation for Kubernetes
%description docs
Documentation for Kubernetes
%files docs
%doc docs/admin docs/user-guide docs/yaml README.md LICENSE
%{_mandir}/man1/* %{_mandir}/man1/*
#------------------------------------------------------------
%prep %prep
%setup -q %setup -q
%build %build
%define GOPATH $RPM_BUILD_DIR/go #create docs
GOPATH=%{GOPATH} make hack/update-generated-docs.sh
hack/generate-docs.sh make all GOLDFLAGS="-s -w"
upx _output/bin/kubeadm #upx _output/bin/kubeadm
upx _output/bin/kubelet #upx _output/bin/kubelet
upx _output/bin/kubectl #upx _output/bin/kubectl
upx _output/bin/hyperkube #upx _output/bin/*
%install %install
#make install
install -dm0755 %{buildroot}%{_bindir} install -dm0755 %{buildroot}%{_bindir}
install -dm0755 %{buildroot}%{_sysconfdir}/systemd/kubelet.service.d install -dm0755 %{buildroot}%{_unitdir}/kubelet.service.d/
install -dm0755 %{buildroot}%{_sysconfdir}/sysconfig install -dm0755 %{buildroot}%{_sysconfdir}/sysconfig
install -dm0755 %{buildroot}%{_sysconfdir}/kubernetes/manifests install -dm0755 %{buildroot}%{_sysconfdir}/kubernetes/manifests
install -dm0755 %{buildroot}%{_sysconfdir}/sysconfig/kubelet
install -dm0755 %{buildroot}%{_sysconfdir}/cni/net.d
install -dm0755 %{buildroot}%{_libexecdir}/modules-load.d install -dm0755 %{buildroot}%{_libexecdir}/modules-load.d
install -dm0755 %{buildroot}/usr/lib/sysctl.d install -dm0755 %{buildroot}/usr/lib/sysctl.d
install -dm0755 %{buildroot}%{_mandir}/man1 install -dm0755 %{buildroot}%{_mandir}/man1
install -dm0755 %{buildroot}%{_unitdir}
# kubeadm # kubeadm
install -p -m 0755 -t %{buildroot}%{_bindir} _output/bin/kubeadm install -Dm0755 _output/bin/kubeadm %{buildroot}%{_bindir}/kubeadm
install -p -m 0644 -t %{buildroot}%{_sysconfdir}/systemd/kubelet.service.d/ build/rpms/10-kubeadm.conf
install -p -m 0644 -T build/rpms/kubelet.env %{buildroot}%{_sysconfdir}/sysconfig/kubelet
install -p -m 0644 -t %{buildroot}%{_libexecdir}/modules-load.d/ build/rpms/kubeadm.conf
install -p -m 0644 -t %{buildroot}/usr/lib/sysctl.d/ build/rpms/50-kubeadm.conf
# kubelet # kubelet
install -p -m 0755 -t %{buildroot}%{_bindir} _output/bin/kubelet install -Dm0755 _output/bin/kubelet %{buildroot}%{_bindir}/kubelet
install -p -m 0644 build/rpms/kubelet.service %{buildroot}%{_unitdir} install -Dm0644 %{SOURCE1} %{buildroot}%{_unitdir}/kubelet.service
install -Dm0644 %{SOURCE2} %{buildroot}%{_unitdir}/kubelet.service.d/10-kubeadm.conf
install -Dm0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/kubelet
# kubectl # kubectl
install -p -m 0755 -t %{buildroot}%{_bindir} _output/bin/kubectl install -Dm0755 _output/bin/kubectl %{buildroot}%{_bindir}/kubectl
# other bins
install -Dm0755 _output/bin/kube-* %{buildroot}%{_bindir}
# docs # docs
install -p -m 0644 docs/man/man1/* %{buildroot}%{_mandir}/man1/ install -Dm0644 docs/man/man1/* %{buildroot}%{_mandir}/man1
# client
install -p -m 0755 _output/bin/hyperkube %{buildroot}%{_bindir}
# fix perm docs
find docs/ -type f -exec chmod 0644 {} \;
%files %files
%doc README.md LICENSE CHANGELOG-*.md %doc README.md LICENSE LICENSES