diff options
Diffstat (limited to 'docker/benchmarking')
-rw-r--r-- | docker/benchmarking/Dockerfile | 30 | ||||
-rw-r--r-- | docker/benchmarking/hooks/post_checkout | 6 | ||||
-rw-r--r-- | docker/benchmarking/testcases.yaml | 67 |
3 files changed, 103 insertions, 0 deletions
diff --git a/docker/benchmarking/Dockerfile b/docker/benchmarking/Dockerfile new file mode 100644 index 000000000..d0957f6b8 --- /dev/null +++ b/docker/benchmarking/Dockerfile @@ -0,0 +1,30 @@ +FROM opnfv/functest-core + +ARG VMTP_TAG=34a82c9f3598ec7f5d8de0a6d5139b92931db4cc +ARG NEUTRON_TAG=master + +RUN apk --no-cache add --update libxml2 libxslt && \ + apk --no-cache add --virtual .build-deps --update \ + python3-dev build-base linux-headers libffi-dev \ + openssl-dev libjpeg-turbo-dev libxml2-dev libxslt-dev && \ + case $(uname -m) in aarch*|arm*) CFLAGS="-O0" \ + pip3 install --use-deprecated=legacy-resolver --no-cache-dir -c/src/requirements/upper-constraints.txt \ + -c/src/functest/upper-constraints.txt lxml ;; esac && \ + git init /src/vmtp && \ + (cd /src/vmtp && \ + git fetch --tags https://review.opendev.org/x/vmtp.git $VMTP_TAG && \ + git checkout FETCH_HEAD) && \ + update-requirements -s --source /src/requirements /src/vmtp/ && \ + pip3 install --use-deprecated=legacy-resolver --no-cache-dir --src /src -c/src/requirements/upper-constraints.txt \ + -c/src/functest/upper-constraints.txt \ + /src/vmtp && \ + mkdir -p /home/opnfv/functest/data/rally/neutron/rally-jobs && \ + git init /src/neutron && \ + (cd /src/neutron && \ + git fetch --tags https://opendev.org/openstack/neutron.git $NEUTRON_TAG && \ + git checkout FETCH_HEAD) && \ + cp /src/neutron/rally-jobs/task-neutron.yaml /home/opnfv/functest/data/rally/neutron/rally-jobs/ && \ + rm -r /src/vmtp /src/neutron && \ + apk del .build-deps +COPY testcases.yaml /etc/xtesting/testcases.yaml +CMD ["run_tests", "-t", "all"] diff --git a/docker/benchmarking/hooks/post_checkout b/docker/benchmarking/hooks/post_checkout new file mode 100644 index 000000000..c347524ea --- /dev/null +++ b/docker/benchmarking/hooks/post_checkout @@ -0,0 +1,6 @@ +#!/bin/sh + +from="${DOCKER_REPO%/*}/functest-core:${DOCKER_TAG}" +sed -i "s|^FROM.*$|FROM ${from}|" Dockerfile + +exit $? diff --git a/docker/benchmarking/testcases.yaml b/docker/benchmarking/testcases.yaml new file mode 100644 index 000000000..c84d3a00f --- /dev/null +++ b/docker/benchmarking/testcases.yaml @@ -0,0 +1,67 @@ +--- +tiers: + - + name: benchmarking + description: >- + Run several OpenStack performance tools + https://docs.openstack.org/performance-docs/latest/methodologies/tools.html + testcases: + - + case_name: rally_full + project_name: functest + criteria: 100 + blocking: false + description: >- + This test case runs the full suite of scenarios of the + OpenStack Rally suite using several threads and iterations. + run: + name: rally_full + args: + optional: + - 'gnocchi' + - 'barbican' + + - + case_name: rally_jobs + project_name: functest + criteria: 100 + blocking: false + description: >- + This test case runs a group of Rally jobs used in + OpenStack gating + dependencies: + - NO_TENANT_NETWORK: '^(?![tT]rue$)' + run: + name: rally_jobs + args: + optional: + - 'gnocchi' + + - + case_name: vmtp + project_name: functest + criteria: 100 + blocking: false + description: >- + VMTP is a small python application that will automatically + perform ping connectivity, round trip time measurement + (latency) and TCP/UDP throughput + dependencies: + - NO_TENANT_NETWORK: '^(?![tT]rue$)' + run: + name: vmtp + + - + case_name: shaker + project_name: functest + criteria: 100 + blocking: false + description: >- + Shaker wraps around popular system network testing tools + like iperf, iperf3 and netperf (with help of flent). Shaker + is able to deploy OpenStack instances and networks in + different topologies. + dependencies: + - NO_TENANT_NETWORK: '^(?![tT]rue$)' + run: + name: shaker |