From 1795e0a039ae18f8cc0a8fa052103c4fc9bfadc8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?C=C3=A9dric=20Ollivier?= Date: Tue, 26 Nov 2019 18:24:43 +0100 Subject: [PATCH] Add functest-benchmarking-cntt MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit It configures Rally to verify the mandatory services asked by CNTT. It also prepares the next benchmarking (API and dataplane) KPIs. Change-Id: Ie8701ddfa1a497f8b1a6f839e6ff7a77849b618c Signed-off-by: Cédric Ollivier (cherry picked from commit 92460cf5330c29eb483d903f3aa659cbad1d58b8) --- .travis.yml | 23 +++++++++++ build.sh | 7 +++- docker/benchmarking-cntt/Dockerfile | 4 ++ docker/benchmarking-cntt/testcases.yaml | 70 +++++++++++++++++++++++++++++++++ 4 files changed, 102 insertions(+), 2 deletions(-) create mode 100644 docker/benchmarking-cntt/Dockerfile create mode 100644 docker/benchmarking-cntt/testcases.yaml diff --git a/.travis.yml b/.travis.yml index 1ddef647e..ee75cc974 100644 --- a/.travis.yml +++ b/.travis.yml @@ -211,9 +211,32 @@ jobs: - amd64_dirs="" - arm64_dirs="" - arm_dirs="docker/smoke-cntt" + - script: sudo -E bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="docker/benchmarking-cntt" + - arm64_dirs="" + - arm_dirs="" + - script: sudo -E bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm64_dirs="docker/benchmarking-cntt" + - arm_dirs="" + - script: sudo -E bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm64_dirs="" + - arm_dirs="docker/benchmarking-cntt" - stage: publish all cntt manifests script: > sudo manifest-tool push from-args \ --platforms linux/amd64,linux/arm,linux/arm64 \ --template ${DOCKER_USERNAME}/functest-smoke-cntt:ARCH-hunter \ --target ${DOCKER_USERNAME}/functest-smoke-cntt:hunter + - script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64,linux/arm,linux/arm64 \ + --template ${DOCKER_USERNAME}/functest-benchmarking-cntt:ARCH-hunter \ + --target ${DOCKER_USERNAME}/functest-benchmarking-cntt:hunter diff --git a/build.sh b/build.sh index 2cd00fa3f..fb401c2d4 100644 --- a/build.sh +++ b/build.sh @@ -10,7 +10,9 @@ docker/healthcheck \ docker/smoke \ docker/benchmarking \ docker/features \ -docker/vnf"} +docker/vnf \ +docker/smoke-cntt \ +docker/benchmarking-cntt"} arm_dirs=${arm_dirs-"\ docker/core \ docker/tempest \ @@ -18,7 +20,8 @@ docker/healthcheck \ docker/smoke \ docker/benchmarking \ docker/features \ -docker/smoke-cntt"} +docker/smoke-cntt \ +docker/benchmarking-cntt"} arm64_dirs=${arm64_dirs-${amd64_dirs}} build_opts=("--pull=true" --no-cache "--force-rm=true") diff --git a/docker/benchmarking-cntt/Dockerfile b/docker/benchmarking-cntt/Dockerfile new file mode 100644 index 000000000..f4a9642b2 --- /dev/null +++ b/docker/benchmarking-cntt/Dockerfile @@ -0,0 +1,4 @@ +FROM opnfv/functest-benchmarking:hunter + +COPY testcases.yaml /usr/lib/python2.7/site-packages/xtesting/ci/testcases.yaml +CMD ["run_tests", "-t", "all"] diff --git a/docker/benchmarking-cntt/testcases.yaml b/docker/benchmarking-cntt/testcases.yaml new file mode 100644 index 000000000..33de8675b --- /dev/null +++ b/docker/benchmarking-cntt/testcases.yaml @@ -0,0 +1,70 @@ +--- +tiers: + - + name: benchmarking + order: 2 + 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: + tests: + - 'authenticate' + - 'glance' + - 'cinder' + - 'heat' + - 'keystone' + - 'neutron' + - 'nova' + - 'quotas' + - 'swift' + + - + 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 + run: + name: rally_jobs + args: + tests: + - 'neutron' + - + 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: + - POD_ARCH: '^(?!aarch64$)' + 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. + run: + name: shaker -- 2.16.6