FROM opnfv/functest-kubernetes-core
-ARG CNF_CONFORMANCE_TAG=v0.7.2-beta1
+ARG CNF_TESTSUITE_TAG=v0.34.0
ARG HELM_TAG=v3.3.1
-RUN apk --no-cache add --update wget curl libc6-compat && \
- K8S_TAG=$(curl -s https://storage.googleapis.com/kubernetes-release/release/latest-1.19.txt) && \
- case $(uname -m) in armv7l) ARCH=arm;; aarch64) ARCH=arm64;; x86_64) ARCH=amd64;; esac && \
- curl https://storage.googleapis.com/kubernetes-release/release/$K8S_TAG/bin/linux/$ARCH/kubectl \
- -s --output /usr/local/bin/kubectl && \
- curl https://get.helm.sh/helm-$HELM_TAG-linux-$ARCH.tar.gz \
- -s --output /src/helm-$HELM_TAG-linux-$ARCH.tar.gz && \
- tar zxf /src/helm-$HELM_TAG-linux-$ARCH.tar.gz linux-$ARCH/helm -C /src && \
- mv /src/linux-$ARCH/helm /usr/local/bin && \
+USER root
+RUN apk --no-cache add --update wget curl libc6-compat ncurses && \
+ 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 \
+ --output /usr/local/bin/kubectl && \
+ curl https://get.helm.sh/helm-$HELM_TAG-linux-$arch.tar.gz \
+ --output /src/helm-$HELM_TAG-linux-$arch.tar.gz && \
+ tar zxf /src/helm-$HELM_TAG-linux-$arch.tar.gz linux-$arch/helm -C /src && \
+ mv /src/linux-$arch/helm /usr/local/bin && \
chmod +x /usr/local/bin/kubectl /usr/local/bin/helm && \
- rm -r /src/helm-$HELM_TAG-linux-$ARCH.tar.gz /src/linux-$ARCH && \
+ rm -r /src/helm-$HELM_TAG-linux-$arch.tar.gz /src/linux-$arch && \
case $(uname -m) in x86_64) \
- curl https://github.com/cncf/cnf-conformance/releases/download/$CNF_CONFORMANCE_TAG/cnf-conformance-$(echo $CNF_CONFORMANCE_TAG |cut -d\- -f 1)-$ARCH-static \
- -Ls --output /usr/local/bin/cnf-conformance && \
- chmod +x /usr/local/bin/cnf-conformance ;; esac && \
- mkdir -p /src/cnf-conformance && \
- curl -Ls https://raw.githubusercontent.com/cncf/cnf-conformance/$CNF_CONFORMANCE_TAG/example-cnfs/coredns/cnf-conformance.yml \
- -s --output /src/cnf-conformance/cnf-conformance.yml && \
- curl -Ls https://raw.githubusercontent.com/cncf/cnf-conformance/$CNF_CONFORMANCE_TAG/points.yml \
- -s --output /src/cnf-conformance/points.yml
-COPY testcases.yaml /usr/lib/python3.8/site-packages/xtesting/ci/testcases.yaml
+ curl https://github.com/cncf/cnf-testsuite/releases/download/$CNF_TESTSUITE_TAG/cnf-testsuite-$CNF_TESTSUITE_TAG.tar.gz \
+ -L --output /src/cnf-testsuite-$CNF_TESTSUITE_TAG.tar.gz && \
+ tar zxf /src/cnf-testsuite-$CNF_TESTSUITE_TAG.tar.gz ./cnf-testsuite -C /usr/local/bin && \
+ chmod +x /usr/local/bin/cnf-testsuite && \
+ mkdir /src/cnf-testsuite && \
+ git init /src/cnf-testsuite && \
+ (cd /src/cnf-testsuite && \
+ git fetch --tags https://github.com/cncf/cnf-testsuite.git $CNF_TESTSUITE_TAG && \
+ git checkout FETCH_HEAD) && \
+ ln -s /src/cnf-testsuite/example-cnfs/coredns/cnf-testsuite.yml /src/cnf-testsuite/cnf-testsuite.yml && \
+ ln -s /src/cnf-testsuite/points-all.yml /src/cnf-testsuite/points.yml && \
+ ln -s /usr/local/bin/cnf-testsuite /src/cnf-testsuite/cnf-testsuite && \
+ rm -rf /src/cnf-testsuite-$CNF_TESTSUITE_TAG.tar.gz /src/cnf-testsuite/.git ;; esac
+USER xtesting
+COPY testcases.yaml /etc/xtesting/testcases.yaml
CMD ["run_tests", "-t", "all"]