From db4ec3d73e8da4c77d095b5417d24da5f749d32a Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Mon, 23 Jan 2023 11:36:17 +0100 Subject: Prepare Functest K8s v1.26 release MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I1e542daeaabfefe5d4df8f81746b2ac6d35bc612 Signed-off-by: Cédric Ollivier --- README.md | 25 ++++----- ansible/site.cntt.yml | 3 ++ ansible/site.gate.yml | 3 ++ ansible/site.yml | 3 ++ build.sh | 59 ++++++++++++---------- docker/benchmarking/Dockerfile | 6 +-- docker/cnf/Dockerfile | 5 +- docker/core/Dockerfile | 6 +-- docker/healthcheck/Dockerfile | 5 +- docker/security/Dockerfile | 2 +- docker/smoke/Dockerfile | 2 +- .../security/kube-bench-master.yaml | 2 +- functest_kubernetes/security/kube-bench-node.yaml | 2 +- functest_kubernetes/security/kube-hunter.yaml | 2 +- tox.ini | 4 +- 15 files changed, 72 insertions(+), 57 deletions(-) diff --git a/README.md b/README.md index 6d7bb051..7ff47022 100644 --- a/README.md +++ b/README.md @@ -15,13 +15,14 @@ and testing (vIMS, vRouter and vEPC) to ensure that the platforms meet Network Functions Virtualization requirements. Raspberry PI is also supported to verify datacenters as the lowest cost (50 euros hardware and software included). -| Functest releases | Kubernetes releases | -|-------------------|-------------------------------| -| v1.22 | v1.22 | -| v1.23 | v1.23 | -| v1.24 | v1.24 | -| v1.25 | v1.25 | -| **Master** | **v1.26.0-alpha.2 (rolling)** | +| Functest releases | Kubernetes releases | +|-------------------|---------------------------| +| v1.22 | v1.22 | +| v1.23 | v1.23 | +| v1.24 | v1.24 | +| v1.25 | v1.25 | +| **v1.26** | **v1.26** | +| Master | v1.27.0-alpha.0 (rolling) | ## Prepare your environment @@ -35,7 +36,7 @@ DEPLOY_SCENARIO=k8s-XXX ```bash sudo docker run --env-file env \ -v $(pwd)/config:/home/xtesting/.kube/config \ - opnfv/functest-kubernetes-healthcheck + opnfv/functest-kubernetes-healthcheck:v1.26 ``` ``` @@ -52,7 +53,7 @@ sudo docker run --env-file env \ ```bash sudo docker run --env-file env \ -v $(pwd)/config:/home/xtesting/.kube/config \ - opnfv/functest-kubernetes-smoke + opnfv/functest-kubernetes-smoke:v1.26 ``` ``` @@ -82,7 +83,7 @@ sudo docker run --env-file env \ ```bash sudo docker run --env-file env \ -v $(pwd)/config:/home/xtesting/.kube/config \ - opnfv/functest-kubernetes-security + opnfv/functest-kubernetes-security:v1.26 ``` ``` @@ -100,7 +101,7 @@ sudo docker run --env-file env \ ```bash sudo docker run --env-file env \ -v $(pwd)/config:/home/xtesting/.kube/config \ - opnfv/functest-kubernetes-benchmarking + opnfv/functest-kubernetes-benchmarking:v1.26 ``` ``` @@ -117,7 +118,7 @@ sudo docker run --env-file env \ ```bash sudo docker run --env-file env \ -v $(pwd)/config:/home/xtesting/.kube/config \ - opnfv/functest-kubernetes-cnf + opnfv/functest-kubernetes-cnf:v1.26 ``` ``` diff --git a/ansible/site.cntt.yml b/ansible/site.cntt.yml index f9bbef36..6a61f4e7 100644 --- a/ansible/site.cntt.yml +++ b/ansible/site.cntt.yml @@ -4,6 +4,9 @@ - role: collivier.xtesting project: functest-kubernetes db_project: functest + docker_tags: + - v1.26: + branch: stable/v1.26 suites: - container: functest-kubernetes-healthcheck tests: diff --git a/ansible/site.gate.yml b/ansible/site.gate.yml index 1cc5683d..47140c82 100644 --- a/ansible/site.gate.yml +++ b/ansible/site.gate.yml @@ -5,6 +5,9 @@ project: functest-kubernetes db_project: functest gerrit_project: functest-kubernetes + docker_tags: + - v1.26: + branch: stable/v1.26 builds: dependencies: - repo: _ diff --git a/ansible/site.yml b/ansible/site.yml index 7c8ddd7c..00f9b9be 100644 --- a/ansible/site.yml +++ b/ansible/site.yml @@ -4,6 +4,9 @@ - role: collivier.xtesting project: functest-kubernetes db_project: functest + docker_tags: + - v1.26: + branch: stable/v1.26 suites: - container: functest-kubernetes-healthcheck tests: diff --git a/build.sh b/build.sh index c4b2df33..2e2b9da2 100644 --- a/build.sh +++ b/build.sh @@ -15,71 +15,74 @@ arm64_dirs=${arm64_dirs-${amd64_dirs}} build_opts=(--pull=true --no-cache --force-rm=true) find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-core|\ -${repo}/functest-kubernetes-core:amd64-latest|g" {} + + -e "s|opnfv/functest-kubernetes-core:v1.26|\ +${repo}/functest-kubernetes-core:amd64-v1.26|g" {} + find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-healthcheck|\ -${repo}/functest-kubernetes-healthcheck:amd64-latest|g" {} + + -e "s|opnfv/functest-kubernetes-healthcheck:v1.26|\ +${repo}/functest-kubernetes-healthcheck:amd64-v1.26|g" {} + +find . -name Dockerfile -exec sed -i \ + -e "s|opnfv/functest-kubernetes-smoke:v1.26|\ +${repo}/functest-kubernetes-smoke:amd64-v1.26|g" {} + for dir in ${amd64_dirs}; do (cd "${dir}" && docker build "${build_opts[@]}" \ - -t "${repo}/functest-kubernetes-${dir##**/}:amd64-latest" .) - docker push "${repo}/functest-kubernetes-${dir##**/}:amd64-latest" + -t "${repo}/functest-kubernetes-${dir##**/}:amd64-v1.26" .) + docker push "${repo}/functest-kubernetes-${dir##**/}:amd64-v1.26" [ "${dir}" != "docker/core" ] && (docker rmi \ - "${repo}/functest-kubernetes-${dir##**/}:amd64-latest" || true) + "${repo}/functest-kubernetes-${dir##**/}:amd64-v1.26" || true) done [ ! -z "${amd64_dirs}" ] && (docker rmi \ - "${repo}/functest-kubernetes-core:amd64-latest" \ + "${repo}/functest-kubernetes-core:amd64-v1.26" \ alpine:3.16 || true) find . -name Dockerfile -exec git checkout {} + find . -name Dockerfile -exec sed -i \ -e "s|alpine:3.16|arm64v8/alpine:3.16|g" {} + find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-core|\ -${repo}/functest-kubernetes-core:arm64-latest|g" {} + + -e "s|opnfv/functest-kubernetes-core:v1.26|\ +${repo}/functest-kubernetes-core:arm64-v1.26|g" {} + find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-healthcheck|\ -${repo}/functest-kubernetes-healthcheck:arm64-latest|g" {} + + -e "s|opnfv/functest-kubernetes-healthcheck:v1.26|\ +${repo}/functest-kubernetes-healthcheck:arm64-v1.26|g" {} + find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-smoke|\ -${repo}/functest-kubernetes-smoke:arm64-latest|g" {} + + -e "s|opnfv/functest-kubernetes-smoke:v1.26|\ +${repo}/functest-kubernetes-smoke:arm64-v1.26|g" {} + for dir in ${arm64_dirs}; do (cd "${dir}" && docker build "${build_opts[@]}" \ - -t "${repo}/functest-kubernetes-${dir##**/}:arm64-latest" .) - docker push "${repo}/functest-kubernetes-${dir##**/}:arm64-latest" + -t "${repo}/functest-kubernetes-${dir##**/}:arm64-v1.26" .) + docker push "${repo}/functest-kubernetes-${dir##**/}:arm64-v1.26" [ "${dir}" != "docker/core" ] && (docker rmi \ - "${repo}/functest-kubernetes-${dir##**/}:arm64-latest" || true) + "${repo}/functest-kubernetes-${dir##**/}:arm64-v1.26" || true) done [ ! -z "${arm64_dirs}" ] && - (docker rmi "${repo}/functest-kubernetes-core:arm64-latest" \ + (docker rmi "${repo}/functest-kubernetes-core:arm64-v1.26" \ arm64v8/alpine:3.16 || true) find . -name Dockerfile -exec git checkout {} + find . -name Dockerfile -exec sed -i \ -e "s|alpine:3.16|arm32v7/alpine:3.16|g" {} + find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-core|\ -${repo}/functest-kubernetes-core:arm-latest|g" {} + + -e "s|opnfv/functest-kubernetes-core:v1.26|\ +${repo}/functest-kubernetes-core:arm-v1.26|g" {} + find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-healthcheck|\ -${repo}/functest-kubernetes-healthcheck:arm-latest|g" {} + + -e "s|opnfv/functest-kubernetes-healthcheck:v1.26|\ +${repo}/functest-kubernetes-healthcheck:arm-v1.26|g" {} + find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-smoke|\ -${repo}/functest-kubernetes-smoke:arm-latest|g" {} + + -e "s|opnfv/functest-kubernetes-smoke:v1.26|\ +${repo}/functest-kubernetes-smoke:arm-v1.26|g" {} + for dir in ${arm_dirs}; do (cd "${dir}" && docker build "${build_opts[@]}" \ - -t "${repo}/functest-kubernetes-${dir##**/}:arm-latest" .) - docker push "${repo}/functest-kubernetes-${dir##**/}:arm-latest" + -t "${repo}/functest-kubernetes-${dir##**/}:arm-v1.26" .) + docker push "${repo}/functest-kubernetes-${dir##**/}:arm-v1.26" [ "${dir}" != "docker/core" ] && (docker rmi \ - "${repo}/functest-kubernetes-${dir##**/}:arm-latest" || true) + "${repo}/functest-kubernetes-${dir##**/}:arm-v1.26" || true) done [ ! -z "${arm_dirs}" ] && - (docker rmi "${repo}/functest-kubernetes-core:arm-latest" \ + (docker rmi "${repo}/functest-kubernetes-core:arm-v1.26" \ arm32v7/alpine:3.16 || true) find . -name Dockerfile -exec git checkout {} + diff --git a/docker/benchmarking/Dockerfile b/docker/benchmarking/Dockerfile index d958b565..f301535c 100644 --- a/docker/benchmarking/Dockerfile +++ b/docker/benchmarking/Dockerfile @@ -1,7 +1,7 @@ -FROM opnfv/functest-kubernetes-smoke +FROM opnfv/functest-kubernetes-smoke:v1.26 -ARG NETPERF_TAG=master -ARG PLOTPERF_TAG=master +ARG NETPERF_TAG=1104ce23f6c1758796e88f3c23b050099074cf81 +ARG PLOTPERF_TAG=2455313f4b9581795a8f642243acaad472d91804 USER root COPY plotperf.py.patch /tmp/plotperf.py.patch diff --git a/docker/cnf/Dockerfile b/docker/cnf/Dockerfile index 37cb4691..bb8b181a 100644 --- a/docker/cnf/Dockerfile +++ b/docker/cnf/Dockerfile @@ -1,11 +1,12 @@ -FROM opnfv/functest-kubernetes-core +FROM opnfv/functest-kubernetes-core:v1.26 +ARG K8S_TAG=1.26 ARG CNF_TESTSUITE_TAG=v0.34.0 ARG HELM_TAG=v3.3.1 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) && \ + tag=$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable-$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 \ --output /usr/local/bin/kubectl && \ diff --git a/docker/core/Dockerfile b/docker/core/Dockerfile index 88dbe347..dbd864ef 100644 --- a/docker/core/Dockerfile +++ b/docker/core/Dockerfile @@ -1,8 +1,8 @@ FROM alpine:3.16 -ARG BRANCH=master -ARG OPENSTACK_TAG=master -ARG OPNFV_TAG=master +ARG BRANCH=stable/v1.26 +ARG OPENSTACK_TAG=stable/zed +ARG OPNFV_TAG=stable/zed COPY Try-a-quick-fix-vs-asynchronuous-issues.patch /tmp/Try-a-quick-fix-vs-asynchronuous-issues.patch COPY Switch-to-threading.Thread-for-Rally-tasks.patch /tmp/Switch-to-threading.Thread-for-Rally-tasks.patch diff --git a/docker/healthcheck/Dockerfile b/docker/healthcheck/Dockerfile index 13ffe449..37387016 100644 --- a/docker/healthcheck/Dockerfile +++ b/docker/healthcheck/Dockerfile @@ -1,8 +1,9 @@ -FROM opnfv/functest-kubernetes-core +FROM opnfv/functest-kubernetes-core:v1.26 +ARG K8S_TAG=1.26 USER root RUN apk --no-cache add --update curl libc6-compat && \ - tag=$(curl -s https://storage.googleapis.com/kubernetes-release/release/latest.txt) && \ + tag=$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable-$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 && \ diff --git a/docker/security/Dockerfile b/docker/security/Dockerfile index 5ecdc9bd..9c15a911 100644 --- a/docker/security/Dockerfile +++ b/docker/security/Dockerfile @@ -1,3 +1,3 @@ -FROM opnfv/functest-kubernetes-core +FROM opnfv/functest-kubernetes-core:v1.26 COPY testcases.yaml /etc/xtesting/testcases.yaml diff --git a/docker/smoke/Dockerfile b/docker/smoke/Dockerfile index 1ae498dc..e4219ef1 100644 --- a/docker/smoke/Dockerfile +++ b/docker/smoke/Dockerfile @@ -1,4 +1,4 @@ -FROM opnfv/functest-kubernetes-healthcheck +FROM opnfv/functest-kubernetes-healthcheck:v1.26 COPY testcases.yaml /etc/xtesting/testcases.yaml CMD ["run_tests", "-t", "all"] diff --git a/functest_kubernetes/security/kube-bench-master.yaml b/functest_kubernetes/security/kube-bench-master.yaml index ccfc842b..e2339921 100644 --- a/functest_kubernetes/security/kube-bench-master.yaml +++ b/functest_kubernetes/security/kube-bench-master.yaml @@ -26,7 +26,7 @@ spec: effect: NoSchedule containers: - name: kube-bench - image: {{ dockerhub_repo }}/aquasec/kube-bench:latest + image: {{ dockerhub_repo }}/aquasec/kube-bench:v0.6.9 command: ["kube-bench", "run", "--targets", "master", "--json"] volumeMounts: - name: var-lib-etcd diff --git a/functest_kubernetes/security/kube-bench-node.yaml b/functest_kubernetes/security/kube-bench-node.yaml index 03d428ad..8f1fbb03 100644 --- a/functest_kubernetes/security/kube-bench-node.yaml +++ b/functest_kubernetes/security/kube-bench-node.yaml @@ -9,7 +9,7 @@ spec: hostPID: true containers: - name: kube-bench - image: {{ dockerhub_repo }}/aquasec/kube-bench:latest + image: {{ dockerhub_repo }}/aquasec/kube-bench:v0.6.9 command: ["kube-bench", "run", "--targets", "node", "--json"] volumeMounts: - name: var-lib-etcd diff --git a/functest_kubernetes/security/kube-hunter.yaml b/functest_kubernetes/security/kube-hunter.yaml index 0b58cab7..d1169618 100644 --- a/functest_kubernetes/security/kube-hunter.yaml +++ b/functest_kubernetes/security/kube-hunter.yaml @@ -7,7 +7,7 @@ spec: spec: containers: - name: kube-hunter - image: {{ dockerhub_repo }}/aquasec/kube-hunter:latest + image: {{ dockerhub_repo }}/aquasec/kube-hunter:0.6.8 command: ["kube-hunter"] args: ["--pod", "--report", "json", "--statistics"] restartPolicy: Never diff --git a/tox.ini b/tox.ini index 43c8e67a..1024b9cc 100644 --- a/tox.ini +++ b/tox.ini @@ -5,8 +5,8 @@ envlist = pep8,pylint,yamllint,bashate,py310,bandit,perm pip_version = pip==20.2.4 usedevelop = True deps = - -chttps://git.opnfv.org/functest/plain/upper-constraints.txt - -c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt} + -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=stable/zed + -c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/stable/zed/upper-constraints.txt} -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt install_command = pip install {opts} {packages} -- cgit 1.2.3-korg