From 7d31a545c6c4ef88fa19b1976cdbcd3762045e8f Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Wed, 11 Sep 2024 15:51:38 +0200 Subject: Prepare Functest Kubernetes v1.30 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Ic38e6a3b090907635cf1a025eda20e900c4f0cd9 Signed-off-by: Cédric Ollivier --- .gitreview | 1 + README.md | 28 ++++----- ansible/site.cntt.yml | 3 + ansible/site.gate.yml | 6 +- ansible/site.yml | 3 + build.sh | 70 +++++++++++----------- docker/benchmarking/Dockerfile | 6 +- docker/cnf/Dockerfile | 5 +- docker/core/Dockerfile | 4 +- docker/healthcheck/Dockerfile | 5 +- docker/security/Dockerfile | 2 +- docker/smoke/Dockerfile | 2 +- .../install.d/16-functest-kubernetes | 10 ++-- .../security/kube-bench-master.yaml | 2 +- functest_kubernetes/security/kube-bench-node.yaml | 2 +- functest_kubernetes/security/kube-hunter.yaml | 2 +- 16 files changed, 78 insertions(+), 73 deletions(-) diff --git a/.gitreview b/.gitreview index 84c0d555..6f904219 100644 --- a/.gitreview +++ b/.gitreview @@ -2,3 +2,4 @@ host=gerrit.opnfv.org port=29418 project=functest-kubernetes.git +defaultbranch=stable/v1.30 diff --git a/README.md b/README.md index b950d8aa..f89e8c30 100644 --- a/README.md +++ b/README.md @@ -15,17 +15,13 @@ 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 | -| v1.26 | v1.26 | -| v1.27 | v1.27 | -| v1.28 | v1.28 | -| v1.29 | v1.29 | -| **Master** | **v1.30.0-alpha.0 (rolling)** | +| Functest releases | Kubernetes releases | +|-------------------|---------------------| +| v1.28 | v1.28 | +| v1.29 | v1.29 | +| **v1.30** | **v1.30** | +| v1.31 | v1.31 | +| Master | latest | ## Prepare your environment @@ -39,7 +35,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.30 ``` ``` @@ -56,7 +52,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.30 ``` ``` @@ -86,7 +82,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.30 ``` ``` @@ -104,7 +100,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.30 ``` ``` @@ -121,7 +117,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.30 ``` ``` diff --git a/ansible/site.cntt.yml b/ansible/site.cntt.yml index f9bbef36..97d52368 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.31: + branch: stable/v1.31 suites: - container: functest-kubernetes-healthcheck tests: diff --git a/ansible/site.gate.yml b/ansible/site.gate.yml index 3ac80e3b..43eb85b6 100644 --- a/ansible/site.gate.yml +++ b/ansible/site.gate.yml @@ -8,9 +8,9 @@ gerrit_project: functest-kubernetes git_url: https://gerrit.opnfv.org/gerrit/functest-kubernetes docker_tags: - - latest: - branch: master - dependency: '3.16' + - v1.30: + branch: stable/v1.30 + dependency: '3.20' builds: dependency: repo: _ diff --git a/ansible/site.yml b/ansible/site.yml index 7c8ddd7c..90700fcc 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.30: + branch: stable/v1.30 suites: - container: functest-kubernetes-healthcheck tests: diff --git a/build.sh b/build.sh index 4db163de..c13fa83b 100644 --- a/build.sh +++ b/build.sh @@ -15,75 +15,75 @@ 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.30|\ +${repo}/functest-kubernetes-core:amd64-v1.30|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.30|\ +${repo}/functest-kubernetes-healthcheck:amd64-v1.30|g" {} + find . -name Dockerfile -exec sed -i \ - -e "s|opnfv/functest-kubernetes-smoke|\ -${repo}/functest-kubernetes-smoke:amd64-latest|g" {} + + -e "s|opnfv/functest-kubernetes-smoke:v1.30|\ +${repo}/functest-kubernetes-smoke:amd64-v1.30|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.30" .) + docker push "${repo}/functest-kubernetes-${dir##**/}:amd64-v1.30" [ "${dir}" != "docker/core" ] && (docker rmi \ - "${repo}/functest-kubernetes-${dir##**/}:amd64-latest" || true) + "${repo}/functest-kubernetes-${dir##**/}:amd64-v1.30" || true) done [ ! -z "${amd64_dirs}" ] && (docker rmi \ - "${repo}/functest-kubernetes-core:amd64-latest" \ - alpine:3.16 || true) + "${repo}/functest-kubernetes-core:amd64-v1.30" \ + alpine:3.20 || true) find . -name Dockerfile -exec git checkout {} + find . -name Dockerfile -exec sed -i \ - -e "s|alpine:3.16|arm64v8/alpine:3.16|g" {} + + -e "s|alpine:3.20|arm64v8/alpine:3.20|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.30|\ +${repo}/functest-kubernetes-core:arm64-v1.30|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.30|\ +${repo}/functest-kubernetes-healthcheck:arm64-v1.30|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.30|\ +${repo}/functest-kubernetes-smoke:arm64-v1.30|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.30" .) + docker push "${repo}/functest-kubernetes-${dir##**/}:arm64-v1.30" [ "${dir}" != "docker/core" ] && (docker rmi \ - "${repo}/functest-kubernetes-${dir##**/}:arm64-latest" || true) + "${repo}/functest-kubernetes-${dir##**/}:arm64-v1.30" || true) done [ ! -z "${arm64_dirs}" ] && - (docker rmi "${repo}/functest-kubernetes-core:arm64-latest" \ - arm64v8/alpine:3.16 || true) + (docker rmi "${repo}/functest-kubernetes-core:arm64-v1.30" \ + arm64v8/alpine:3.20 || true) find . -name Dockerfile -exec git checkout {} + find . -name Dockerfile -exec sed -i \ - -e "s|alpine:3.16|arm32v7/alpine:3.16|g" {} + + -e "s|alpine:3.20|arm32v7/alpine:3.20|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.30|\ +${repo}/functest-kubernetes-core:arm-v1.30|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.30|\ +${repo}/functest-kubernetes-healthcheck:arm-v1.30|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.30|\ +${repo}/functest-kubernetes-smoke:arm-v1.30|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.30" .) + docker push "${repo}/functest-kubernetes-${dir##**/}:arm-v1.30" [ "${dir}" != "docker/core" ] && (docker rmi \ - "${repo}/functest-kubernetes-${dir##**/}:arm-latest" || true) + "${repo}/functest-kubernetes-${dir##**/}:arm-v1.30" || true) done [ ! -z "${arm_dirs}" ] && - (docker rmi "${repo}/functest-kubernetes-core:arm-latest" \ - arm32v7/alpine:3.16 || true) + (docker rmi "${repo}/functest-kubernetes-core:arm-v1.30" \ + arm32v7/alpine:3.20 || true) find . -name Dockerfile -exec git checkout {} + exit $? diff --git a/docker/benchmarking/Dockerfile b/docker/benchmarking/Dockerfile index d958b565..b424e5de 100644 --- a/docker/benchmarking/Dockerfile +++ b/docker/benchmarking/Dockerfile @@ -1,7 +1,7 @@ -FROM opnfv/functest-kubernetes-smoke +FROM opnfv/functest-kubernetes-smoke:v1.30 -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 8c2e6e0a..e8edcb65 100644 --- a/docker/cnf/Dockerfile +++ b/docker/cnf/Dockerfile @@ -1,11 +1,12 @@ -FROM opnfv/functest-kubernetes-core +FROM opnfv/functest-kubernetes-core:v1.30 +ARG K8S_TAG=1.30 ARG CNF_TESTSUITE_TAG=v1.0.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-1.30.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 8ebd2c51..4d1c892c 100644 --- a/docker/core/Dockerfile +++ b/docker/core/Dockerfile @@ -1,7 +1,7 @@ FROM alpine:3.20 -ARG BRANCH=master -ARG OPENSTACK_TAG=master +ARG BRANCH=stable/v1.30 +ARG OPENSTACK_TAG=stable/2024.1 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 b8970d98..bb3e58e2 100644 --- a/docker/healthcheck/Dockerfile +++ b/docker/healthcheck/Dockerfile @@ -1,8 +1,9 @@ -FROM opnfv/functest-kubernetes-core +FROM opnfv/functest-kubernetes-core:v1.30 +ARG K8S_TAG=1.30 USER root RUN apk --no-cache add --update curl libc6-compat && \ - tag=$(curl -s https://storage.googleapis.com/kubernetes-release/release/latest-1.30.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..d1fd7b4e 100644 --- a/docker/security/Dockerfile +++ b/docker/security/Dockerfile @@ -1,3 +1,3 @@ -FROM opnfv/functest-kubernetes-core +FROM opnfv/functest-kubernetes-core:v1.30 COPY testcases.yaml /etc/xtesting/testcases.yaml diff --git a/docker/smoke/Dockerfile b/docker/smoke/Dockerfile index 1ae498dc..98590c76 100644 --- a/docker/smoke/Dockerfile +++ b/docker/smoke/Dockerfile @@ -1,4 +1,4 @@ -FROM opnfv/functest-kubernetes-healthcheck +FROM opnfv/functest-kubernetes-healthcheck:v1.30 COPY testcases.yaml /etc/xtesting/testcases.yaml CMD ["run_tests", "-t", "all"] diff --git a/elements/functest-kubernetes/install.d/16-functest-kubernetes b/elements/functest-kubernetes/install.d/16-functest-kubernetes index e2144e76..5c034860 100755 --- a/elements/functest-kubernetes/install.d/16-functest-kubernetes +++ b/elements/functest-kubernetes/install.d/16-functest-kubernetes @@ -1,11 +1,11 @@ #!/bin/bash download-frozen-image-v2.sh /data/docker/functest-kubernetes \ - opnfv/functest-kubernetes-healthcheck:latest \ - opnfv/functest-kubernetes-smoke:latest \ - opnfv/functest-kubernetes-benchmarking:latest \ - opnfv/functest-kubernetes-security:latest \ - opnfv/functest-kubernetes-cnf:latest + opnfv/functest-kubernetes-healthcheck:v1.30 \ + opnfv/functest-kubernetes-smoke:v1.30 \ + opnfv/functest-kubernetes-benchmarking:v1.30 \ + opnfv/functest-kubernetes-security:v1.30 \ + opnfv/functest-kubernetes-cnf:v1.30 git clone https://git.opnfv.org/functest-kubernetes /home/debian/functest-kubernetes chown -R 1000:1000 /home/debian/functest-kubernetes diff --git a/functest_kubernetes/security/kube-bench-master.yaml b/functest_kubernetes/security/kube-bench-master.yaml index ccfc842b..b901bc51 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.10 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..43746a0b 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.10 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 -- cgit 1.2.3-korg