%define COMPONENT kubernetes
%define RPM_NAME caas-%{COMPONENT}
%define RPM_MAJOR_VERSION 1.16.2
-%define RPM_MINOR_VERSION 0
+%define RPM_MINOR_VERSION 1
%define IMAGE_TAG %{RPM_MAJOR_VERSION}-%{RPM_MINOR_VERSION}
%define KUBERNETESPAUSE_VERSION 3.1
%define docker_build_dir %{_builddir}/%{RPM_NAME}-%{RPM_MAJOR_VERSION}/docker-build
%define docker_save_dir %{_builddir}/%{RPM_NAME}-%{RPM_MAJOR_VERSION}/docker-save
%define built_binaries_dir /binary-save
+%define centos_build 191001
Name: %{RPM_NAME}
Version: %{RPM_MAJOR_VERSION}
Source0: %{name}-%{version}.tar.gz
Requires: docker-ce >= 18.09.2, rsync
-BuildRequires: docker-ce-cli >= 18.09.2, xz
+BuildRequires: docker-ce-cli >= 18.09.2, xz, wget
# more info at: https://fedoraproject.org/wiki/Packaging:Debuginfo No build ID note in Flannel
%global debug_package %{nil}
# Build Kubernetes binaries
%build
+wget --progress=dot:giga http://artifacts.ci.centos.org/sig-cloudinstance/centos-7-%{centos_build}/%{_arch}/centos-7-%{_arch}-docker.tar.xz -O %{docker_build_dir}/kubernetes-builder/centos-7-docker.tar.xz
set -x
docker build \
--network=host \
docker rmi kubernetes-builder:%{IMAGE_TAG}
# Build hyperkube container image
+wget --progress=dot:giga http://artifacts.ci.centos.org/sig-cloudinstance/centos-7-%{centos_build}/%{_arch}/centos-7-%{_arch}-docker.tar.xz -O %{docker_build_dir}/hyperkube/centos-7-docker.tar.xz
rsync -av %{binary_build_dir}/kube-apiserver %{docker_build_dir}/hyperkube/
rsync -av %{binary_build_dir}/kube-controller-manager %{docker_build_dir}/hyperkube/
rsync -av %{binary_build_dir}/kube-proxy %{docker_build_dir}/hyperkube/
# See the License for the specific language governing permissions and
# limitations under the License.
-FROM centos:7.6.1810
+FROM scratch
+ADD centos-7-docker.tar.xz /
+CMD ["/bin/bash"]
MAINTAINER Krisztian Lengyel <krisztian.lengyel@nokia.com>
ARG KUBERNETES_VERSION
grep \
util-linux \
&& mkdir -p ${go_install_dir} \
-&& curl -fsSL -k https://dl.google.com/go/go${go_version}.linux-amd64.tar.gz | tar zx --strip-components=1 -C ${go_install_dir} \
+&& if [ $(uname -m) == 'aarch64' ]; then HOST_ARCH=arm64; else HOST_ARCH=amd64; fi \
+&& curl -fsSL -k https://dl.google.com/go/go${go_version}.linux-${HOST_ARCH}.tar.gz | tar zx --strip-components=1 -C ${go_install_dir} \
#
# Build Kubernetes
#
&& make WHAT="cmd/kube-proxy" \
&& make WHAT="cmd/kube-scheduler" \
&& mkdir -p ${binaries} \
-&& mv ./_output/local/bin/linux/amd64/{kubelet,kubectl,kube-apiserver,kube-controller-manager,kube-proxy,kube-scheduler} ${binaries}/ \
+&& mv ./_output/local/bin/linux/${HOST_ARCH}/{kubelet,kubectl,kube-apiserver,kube-controller-manager,kube-proxy,kube-scheduler} ${binaries}/ \