Stop using root in testing containers
[functest-kubernetes.git] / docker / healthcheck / Dockerfile
index e47068c..13ffe44 100644 (file)
@@ -1,20 +1,17 @@
 FROM opnfv/functest-kubernetes-core
 
-ARG K8S_TAG=v1.9.4
-
-RUN apk --no-cache add --update make py-pip bash git go \
-        grep rsync linux-headers musl-dev findutils \
-        libffi libssl1.0 libjpeg-turbo && \
-    apk --no-cache add --virtual .build-deps --update \
-        python-dev libffi-dev openssl-dev libjpeg-turbo-dev && \
-    git clone --depth 1 https://github.com/kubernetes/kubernetes /src/k8s.io/kubernetes && \
-    (cd /src/k8s.io/kubernetes && git fetch --tags origin $K8S_TAG && git checkout FETCH_HEAD && \
-        # Replace the amd64 with arm64 when building e2e.test on arm platform.
-        if [ "$(uname -m)" = "aarch64" ]; then sed -i "s/amd64/arm64/g" ./test/images/clusterapi-tester/pod.yaml ; fi && \
-        make kubectl ginkgo && \
-        make WHAT=test/e2e/e2e.test && \
-        mv _output/bin/* /usr/local/bin) && \
-    rm -r /src/k8s.io && \
-    apk del .build-deps
-COPY testcases.yaml /usr/lib/python2.7/site-packages/xtesting/ci/testcases.yaml
+USER root
+RUN apk --no-cache add --update curl libc6-compat && \
+    tag=$(curl -s https://storage.googleapis.com/kubernetes-release/release/latest.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
+USER xtesting
+COPY testcases.yaml /etc/xtesting/testcases.yaml
 CMD ["run_tests", "-t", "all"]