script: >
manifest-tool push from-args \
--platforms linux/amd64,linux/arm,linux/arm64 \
- --template ${DOCKER_USERNAME}/functest-kubernetes-core:ARCH-latest \
- --target ${DOCKER_USERNAME}/functest-kubernetes-core:latest
+ --template ${DOCKER_USERNAME}/functest-kubernetes-core:ARCH-v1.23 \
+ --target ${DOCKER_USERNAME}/functest-kubernetes-core:v1.23
- stage: build functest-kubernetes-[healthcheck,cnf,security] images
script: bash build.sh
env:
manifest-tool push from-args \
--platforms linux/amd64,linux/arm,linux/arm64 \
--template \
- ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:ARCH-latest \
- --target ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:latest
+ ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:ARCH-v1.23 \
+ --target ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:v1.23
- script: >
manifest-tool push from-args \
--platforms linux/amd64,linux/arm,linux/arm64 \
- --template ${DOCKER_USERNAME}/functest-kubernetes-cnf:ARCH-latest \
- --target ${DOCKER_USERNAME}/functest-kubernetes-cnf:latest
+ --template ${DOCKER_USERNAME}/functest-kubernetes-cnf:ARCH-v1.23 \
+ --target ${DOCKER_USERNAME}/functest-kubernetes-cnf:v1.23
- script: >
manifest-tool push from-args \
--platforms linux/amd64,linux/arm,linux/arm64 \
--template \
- ${DOCKER_USERNAME}/functest-kubernetes-security:ARCH-latest \
- --target ${DOCKER_USERNAME}/functest-kubernetes-security:latest
+ ${DOCKER_USERNAME}/functest-kubernetes-security:ARCH-v1.23 \
+ --target ${DOCKER_USERNAME}/functest-kubernetes-security:v1.23
- stage: build functest-kubernetes-smoke image
script: bash build.sh
env:
script: >
manifest-tool push from-args \
--platforms linux/amd64,linux/arm,linux/arm64 \
- --template ${DOCKER_USERNAME}/functest-kubernetes-smoke:ARCH-latest \
- --target ${DOCKER_USERNAME}/functest-kubernetes-smoke:latest
+ --template ${DOCKER_USERNAME}/functest-kubernetes-smoke:ARCH-v1.23 \
+ --target ${DOCKER_USERNAME}/functest-kubernetes-smoke:v1.23
- stage: build functest-kubernetes-benchmarking image
script: bash build.sh
env:
manifest-tool push from-args \
--platforms linux/amd64,linux/arm,linux/arm64 \
--template \
- ${DOCKER_USERNAME}/functest-kubernetes-benchmarking:ARCH-latest \
- --target ${DOCKER_USERNAME}/functest-kubernetes-benchmarking:latest
+ ${DOCKER_USERNAME}/functest-kubernetes-benchmarking:ARCH-v1.23 \
+ --target ${DOCKER_USERNAME}/functest-kubernetes-benchmarking:v1.23
| Functest releases | Kubernetes releases |
|-------------------|-------------------------------|
-| Hunter | v1.13 |
-| Iruya | v1.15 |
-| Jerma | v1.17 |
| Kali | v1.19 |
| Leguer | v1.20 |
| v1.21 | v1.21 |
-| **Master** | **v1.22.0-alpha.1 (rolling)** |
+| v1.22 | v1.22 |
+| v1.23 | v1.23 |
+| **Master** | **v1.24.0-alpha.1 (rolling)** |
## Prepare your environment
```bash
sudo docker run --env-file env \
-v $(pwd)/config:/root/.kube/config \
- opnfv/functest-kubernetes-healthcheck
+ opnfv/functest-kubernetes-healthcheck:v1.23
```
```
```bash
sudo docker run --env-file env \
-v $(pwd)/config:/root/.kube/config \
- opnfv/functest-kubernetes-smoke
+ opnfv/functest-kubernetes-smoke:v1.23
```
```
```bash
sudo docker run --env-file env \
-v $(pwd)/config:/root/.kube/config \
- opnfv/functest-kubernetes-security
+ opnfv/functest-kubernetes-security:v1.23
```
```
```bash
sudo docker run --env-file env \
-v $(pwd)/config:/root/.kube/config \
- opnfv/functest-kubernetes-benchmarking
+ opnfv/functest-kubernetes-benchmarking:v1.23
```
```
```bash
sudo docker run --env-file env \
-v $(pwd)/config:/root/.kube/config \
- opnfv/functest-kubernetes-cnf
+ opnfv/functest-kubernetes-cnf:v1.23
```
```
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.23|\
+${repo}/functest-kubernetes-core:amd64-v1.23|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.23|\
+${repo}/functest-kubernetes-healthcheck:amd64-v1.23|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.23" .)
+ docker push "${repo}/functest-kubernetes-${dir##**/}:amd64-v1.23"
[ "${dir}" != "docker/core" ] &&
(docker rmi \
- "${repo}/functest-kubernetes-${dir##**/}:amd64-latest" || true)
+ "${repo}/functest-kubernetes-${dir##**/}:amd64-v1.23" || true)
done
[ ! -z "${amd64_dirs}" ] &&
(docker rmi \
- "${repo}/functest-kubernetes-core:amd64-latest" \
+ "${repo}/functest-kubernetes-core:amd64-v1.23" \
alpine:3.14 || true)
find . -name Dockerfile -exec git checkout {} +
find . -name Dockerfile -exec sed -i \
-e "s|alpine:3.14|arm64v8/alpine:3.14|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.23|\
+${repo}/functest-kubernetes-core:arm64-v1.23|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.23|\
+${repo}/functest-kubernetes-healthcheck:arm64-v1.23|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.23|\
+${repo}/functest-kubernetes-smoke:arm64-v1.23|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.23" .)
+ docker push "${repo}/functest-kubernetes-${dir##**/}:arm64-v1.23"
[ "${dir}" != "docker/core" ] &&
(docker rmi \
- "${repo}/functest-kubernetes-${dir##**/}:arm64-latest" || true)
+ "${repo}/functest-kubernetes-${dir##**/}:arm64-v1.23" || true)
done
[ ! -z "${arm64_dirs}" ] &&
- (docker rmi "${repo}/functest-kubernetes-core:arm64-latest" \
+ (docker rmi "${repo}/functest-kubernetes-core:arm64-v1.23" \
arm64v8/alpine:3.14 || true)
find . -name Dockerfile -exec git checkout {} +
find . -name Dockerfile -exec sed -i \
-e "s|alpine:3.14|arm32v7/alpine:3.14|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.23|\
+${repo}/functest-kubernetes-core:arm-v1.23|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.23|\
+${repo}/functest-kubernetes-healthcheck:arm-v1.23|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.23|\
+${repo}/functest-kubernetes-smoke:arm-v1.23|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.23" .)
+ docker push "${repo}/functest-kubernetes-${dir##**/}:arm-v1.23"
[ "${dir}" != "docker/core" ] &&
(docker rmi \
- "${repo}/functest-kubernetes-${dir##**/}:arm-latest" || true)
+ "${repo}/functest-kubernetes-${dir##**/}:arm-v1.23" || true)
done
[ ! -z "${arm_dirs}" ] &&
- (docker rmi "${repo}/functest-kubernetes-core:arm-latest" \
+ (docker rmi "${repo}/functest-kubernetes-core:arm-v1.23" \
arm32v7/alpine:3.14 || true)
find . -name Dockerfile -exec git checkout {} +
-FROM opnfv/functest-kubernetes-smoke
+FROM opnfv/functest-kubernetes-smoke:v1.23
ARG NETPERF_TAG=master
ARG PLOTPERF_TAG=master
-FROM opnfv/functest-kubernetes-core
+FROM opnfv/functest-kubernetes-core:v1.23
+ARG K8S_TAG=1.23
ARG CNF_TESTSUITE_TAG=v0.15.0
ARG HELM_TAG=v3.3.1
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 && \
FROM alpine:3.14
-ARG BRANCH=master
-ARG OPENSTACK_TAG=master
-ARG OPNFV_TAG=master
+ARG BRANCH=stable/v1.22
+ARG OPENSTACK_TAG=stable/xena
+ARG OPNFV_TAG=stable/v1.22
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
-FROM opnfv/functest-kubernetes-core
+FROM opnfv/functest-kubernetes-core:v1.23
+
+ARG K8S_TAG=1.23
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 && \
-FROM opnfv/functest-kubernetes-core
+FROM opnfv/functest-kubernetes-core:v1.23
COPY testcases.yaml /usr/lib/python3.9/site-packages/xtesting/ci/testcases.yaml
-FROM opnfv/functest-kubernetes-healthcheck
+FROM opnfv/functest-kubernetes-healthcheck:v1.23
COPY testcases.yaml /usr/lib/python3.9/site-packages/xtesting/ci/testcases.yaml
CMD ["run_tests", "-t", "all"]
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}
+ -c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/stable/xena/upper-constraints.txt}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
install_command = pip install {opts} {packages}