Update cnf_conformance to v0.9.4
[functest-kubernetes.git] / docker / cnf / Dockerfile
1 FROM opnfv/functest-kubernetes-core:hunter
2
3 ARG K8S_TAG=v1.13.12
4 ARG CNF_CONFORMANCE_TAG=v0.9.4
5 ARG HELM_TAG=v3.3.1
6
7 RUN apk --no-cache add --update wget curl libc6-compat && \
8     apk --no-cache add --virtual .build-deps --update make rsync findutils gcc musl-dev && \
9     case $(uname -m) in armv7l) ARCH=arm;; aarch64) ARCH=arm64;; x86_64) ARCH=amd64;; esac && \
10     git init /src/k8s.io/kubernetes && \
11     (cd /src/k8s.io/kubernetes && \
12         git fetch --tags https://github.com/kubernetes/kubernetes $K8S_TAG && \
13         git checkout FETCH_HEAD && \
14         make kubectl && \
15         mv _output/bin/* /usr/local/bin) && \
16     curl https://get.helm.sh/helm-$HELM_TAG-linux-$ARCH.tar.gz \
17         -s --output /src/helm-$HELM_TAG-linux-$ARCH.tar.gz && \
18     tar zxf /src/helm-$HELM_TAG-linux-$ARCH.tar.gz linux-$ARCH/helm -C /src && \
19     mv /src/linux-$ARCH/helm /usr/local/bin && \
20     chmod +x /usr/local/bin/kubectl /usr/local/bin/helm && \
21     rm -r /src/k8s.io /src/helm-$HELM_TAG-linux-$ARCH.tar.gz /src/linux-$ARCH && \
22     case $(uname -m) in x86_64) \
23         curl https://github.com/cncf/cnf-conformance/releases/download/$CNF_CONFORMANCE_TAG/cnf-conformance-$CNF_CONFORMANCE_TAG.tar.gz \
24             -Ls --output /src/cnf-conformance-$CNF_CONFORMANCE_TAG.tar.gz && \
25         tar zxf /src/cnf-conformance-$CNF_CONFORMANCE_TAG.tar.gz ./cnf-conformance -C /usr/local/bin && \
26         chmod +x /usr/local/bin/cnf-conformance && \
27         mkdir /src/cnf-conformance && \
28         curl -Ls https://raw.githubusercontent.com/cncf/cnf-conformance/e636baff623dd934eadfce77891fc54da08a8134/example-cnfs/coredns/cnf-conformance.yml \
29             --output /src/cnf-conformance/cnf-conformance.yml && \
30         curl -Ls https://raw.githubusercontent.com/cncf/cnf-conformance/$CNF_CONFORMANCE_TAG/points.yml \
31             --output /src/cnf-conformance/points.yml && \
32         helm repo add stable https://cncf.gitlab.io/stable && \
33         rm /src/cnf-conformance-$CNF_CONFORMANCE_TAG.tar.gz ;; esac
34 COPY testcases.yaml /usr/lib/python2.7/site-packages/xtesting/ci/testcases.yaml
35 CMD ["run_tests", "-t", "all"]