FROM opnfv/functest-kubernetes-core
-ARG K8S_TAG=master
+ARG K8S_TAG=latest
-RUN apk --no-cache add --update make bash git \
- grep rsync linux-headers musl-dev findutils \
- libffi openssl libjpeg-turbo && \
- apk --no-cache add --virtual .build-deps --update \
- gcc python3-dev libffi-dev openssl-dev libjpeg-turbo-dev && \
- git init /src/k8s.io/kubernetes && \
- (cd /src/k8s.io/kubernetes && \
- git fetch --tags https://github.com/kubernetes/kubernetes $K8S_TAG && \
- git checkout FETCH_HEAD && \
- make kubectl ginkgo && \
- make WHAT=test/e2e/e2e.test && \
- mv _output/bin/* /usr/local/bin) && \
- rm -r /src/k8s.io/kubernetes/.git /src/k8s.io/kubernetes/_output && \
- apk del .build-deps
-COPY testcases.yaml /usr/lib/python3.6/site-packages/xtesting/ci/testcases.yaml
+RUN apk --no-cache add --update curl libc6-compat && \
+ tag=$(curl -s https://storage.googleapis.com/kubernetes-release/release/$K8S_TAG.txt) && \
+ case $(uname -m) in armv7l) arch=arm;; aarch64) arch=arm64;; x86_64) arch=amd64;; esac && \
+ curl https://storage.googleapis.com/kubernetes-release/release/$tag/bin/linux/$arch/kubectl \
+ -s --output /usr/local/bin/kubectl && \
+ curl https://storage.googleapis.com/kubernetes-release/release/$tag/kubernetes-test-linux-$arch.tar.gz \
+ -s --output /src/kubernetes-test-linux-$arch.tar.gz && \
+ tar zxf /src/kubernetes-test-linux-$arch.tar.gz kubernetes/test/bin/e2e.test kubernetes/test/bin/ginkgo -C /src && \
+ mv /src/kubernetes/test/bin/e2e.test /src/kubernetes/test/bin/ginkgo /usr/local/bin/ && \
+ chmod +x /usr/local/bin/kubectl /usr/local/bin/e2e.test /usr/local/bin/ginkgo && \
+ rm -r /src/kubernetes /src/kubernetes-test-linux-$arch.tar.gz
+COPY testcases.yaml /usr/lib/python3.8/site-packages/xtesting/ci/testcases.yaml
CMD ["run_tests", "-t", "all"]