summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.travis.yml5
-rw-r--r--build.sh1
-rw-r--r--ci/daily.yaml3
-rw-r--r--ci/gate.yaml4
-rw-r--r--ci/run.yaml28
-rw-r--r--docker/benchmarking/Dockerfile24
-rw-r--r--docker/benchmarking/hooks/post_checkout6
-rw-r--r--docker/benchmarking/testcases.yaml35
-rw-r--r--docker/components/testcases.yaml2
-rw-r--r--docker/core/Dockerfile4
-rw-r--r--docker/features/hooks/post_checkout2
-rw-r--r--docker/features/testcases.yaml2
-rw-r--r--docker/smoke/Dockerfile13
-rw-r--r--docker/smoke/hooks/post_checkout2
-rw-r--r--docker/tempest/Dockerfile2
-rw-r--r--docker/vnf/testcases.yaml2
-rw-r--r--functest/ci/testcases.yaml67
17 files changed, 152 insertions, 50 deletions
diff --git a/.travis.yml b/.travis.yml
index ea13625e3..e4060757f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -52,6 +52,11 @@ jobs:
- script: sudo -E bash build.sh
env:
- REPO="${DOCKER_USERNAME}"
+ - amd64_dirs="docker/benchmarking"
+ - arm64_dirs=""
+ - script: sudo -E bash build.sh
+ env:
+ - REPO="${DOCKER_USERNAME}"
- amd64_dirs="docker/features"
- arm64_dirs=""
- script: sudo -E bash build.sh
diff --git a/build.sh b/build.sh
index 74f67dada..c3bc57bf2 100644
--- a/build.sh
+++ b/build.sh
@@ -8,6 +8,7 @@ docker/core \
docker/tempest \
docker/healthcheck \
docker/smoke \
+docker/benchmarking \
docker/features \
docker/components \
docker/vnf"}
diff --git a/ci/daily.yaml b/ci/daily.yaml
index 2ae1b68c2..89b404f77 100644
--- a/ci/daily.yaml
+++ b/ci/daily.yaml
@@ -9,6 +9,7 @@
container:
- healthcheck
- smoke
+ - benchmarking
- components
- vnf
- features
@@ -24,6 +25,7 @@
projects:
- name: '{repo}-functest-healthcheck-{tag}-pull'
- name: '{repo}-functest-smoke-{tag}-pull'
+ - name: '{repo}-functest-benchmarking-{tag}-pull'
- name: '{repo}-functest-components-{tag}-pull'
- name: '{repo}-functest-vnf-{tag}-pull'
- name: '{repo}-functest-features-{tag}-pull'
@@ -49,6 +51,7 @@
name: advanced tests
projects:
- name: '{repo}-functest-smoke-{tag}-run'
+ - name: '{repo}-functest-benchmarking-{tag}-run'
- name: '{repo}-functest-components-{tag}-run'
- name: '{repo}-functest-vnf-{tag}-run'
- name: '{repo}-functest-features-{tag}-run'
diff --git a/ci/gate.yaml b/ci/gate.yaml
index ea0c76e09..1abfc67ac 100644
--- a/ci/gate.yaml
+++ b/ci/gate.yaml
@@ -39,6 +39,7 @@
- tempest
- healthcheck
- smoke
+ - benchmarking
- components
- vnf
- features
@@ -67,6 +68,8 @@
<<: *functest-projectparameters
- name: '{repo}-functest-smoke-{tag}-build'
<<: *functest-projectparameters
+ - name: '{repo}-functest-benchmarking-{tag}-build'
+ <<: *functest-projectparameters
- name: '{repo}-functest-components-{tag}-build'
<<: *functest-projectparameters
- name: '{repo}-functest-vnf-{tag}-build'
@@ -97,6 +100,7 @@
name: advanced tests
projects:
- name: '{repo}-functest-smoke-{tag}-run'
+ - name: '{repo}-functest-benchmarking-{tag}-run'
- name: '{repo}-functest-components-{tag}-run'
- name: '{repo}-functest-vnf-{tag}-run'
- name: '{repo}-functest-features-{tag}-run'
diff --git a/ci/run.yaml b/ci/run.yaml
index 558956f6f..9cc374c0c 100644
--- a/ci/run.yaml
+++ b/ci/run.yaml
@@ -68,8 +68,6 @@
- rally_sanity
- refstack_defcore
- patrole
- - vmtp
- - shaker
- snaps_smoke
- neutron_trunk
- networking-bgpvpn
@@ -90,8 +88,6 @@
- name: '{repo}-functest-smoke-rally_sanity-{tag}-run'
- name: '{repo}-functest-smoke-refstack_defcore-{tag}-run'
- name: '{repo}-functest-smoke-patrole-{tag}-run'
- - name: '{repo}-functest-smoke-vmtp-{tag}-run'
- - name: '{repo}-functest-smoke-shaker-{tag}-run'
- name: '{repo}-functest-smoke-snaps_smoke-{tag}-run'
- name: '{repo}-functest-smoke-neutron_trunk-{tag}-run'
- name: '{repo}-functest-smoke-networking-bgpvpn-{tag}-run'
@@ -104,6 +100,30 @@
- '{repo}-functest-smoke-{tag}-run'
- project:
+ name: '{repo}-functest-benchmarking-{test}-{tag}-run'
+ container: benchmarking
+ test:
+ - vmtp
+ - shaker
+ jobs:
+ - '{repo}-functest-{container}-{test}-{tag}-run'
+
+- job-template:
+ name: '{repo}-functest-benchmarking-{tag}-run'
+ project-type: multijob
+ builders:
+ - multijob:
+ name: smoke
+ projects:
+ - name: '{repo}-functest-benchmarking-vmtp-{tag}-run'
+ - name: '{repo}-functest-benchmarking-shaker-{tag}-run'
+
+- project:
+ name: '{repo}-functest-benchmarking-{tag}-run'
+ jobs:
+ - '{repo}-functest-benchmarking-{tag}-run'
+
+- project:
name: '{repo}-functest-components-{test}-{tag}-run'
container: components
test:
diff --git a/docker/benchmarking/Dockerfile b/docker/benchmarking/Dockerfile
new file mode 100644
index 000000000..3afa5c483
--- /dev/null
+++ b/docker/benchmarking/Dockerfile
@@ -0,0 +1,24 @@
+FROM opnfv/functest-core
+
+ARG BRANCH=master
+ARG OPENSTACK_TAG=stable/queens
+ARG VMTP_TAG=99b261ccccc2f8a08ee2d8fca9f54ef9d69899d7
+
+RUN apk --no-cache add --update libxml2 libxslt && \
+ apk --no-cache add --virtual .build-deps --update \
+ python-dev build-base linux-headers libffi-dev \
+ openssl-dev libjpeg-turbo-dev libxml2-dev libxslt-dev && \
+ wget -q -O- https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG | \
+ sed -E s/^tempest==+\(.*\)$/-e\ git+https:\\/\\/git.openstack.org\\/openstack\\/tempest@\\1#egg=tempest/ \
+ > upper-constraints.txt && \
+ wget -q -O- https://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH | \
+ sed -E /#egg=functest/d > upper-constraints.opnfv.txt && \
+ git clone https://git.openstack.org/openstack/vmtp.git /src/vmtp && \
+ (cd /src/vmtp && git fetch origin --tags $VMTP_TAG && git checkout FETCH_HEAD) && \
+ update-requirements -s --source /src/openstack-requirements /src/vmtp/ && \
+ pip install --no-cache-dir --src /src -cupper-constraints.txt -cupper-constraints.opnfv.txt \
+ /src/vmtp && \
+ rm -r upper-constraints.txt upper-constraints.opnfv.txt src/vmtp && \
+ apk del .build-deps
+COPY testcases.yaml /usr/lib/python2.7/site-packages/xtesting/ci/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..8d0e98124
--- /dev/null
+++ b/docker/benchmarking/hooks/post_checkout
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+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..0c4372679
--- /dev/null
+++ b/docker/benchmarking/testcases.yaml
@@ -0,0 +1,35 @@
+---
+tiers:
+ -
+ name: benchmarking
+ order: 2
+ description: >-
+ Run several OpenStack performance tools
+ https://docs.openstack.org/performance-docs/latest/methodologies/tools.html
+ testcases:
+ -
+ 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
diff --git a/docker/components/testcases.yaml b/docker/components/testcases.yaml
index 150d097c9..73a88aeb7 100644
--- a/docker/components/testcases.yaml
+++ b/docker/components/testcases.yaml
@@ -2,7 +2,7 @@
tiers:
-
name: components
- order: 3
+ order: 4
description: >-
Extensive testing of OpenStack API.
testcases:
diff --git a/docker/core/Dockerfile b/docker/core/Dockerfile
index 97e4b17e8..8f744db67 100644
--- a/docker/core/Dockerfile
+++ b/docker/core/Dockerfile
@@ -15,8 +15,12 @@ RUN apk --no-cache add --update \
pip install --no-cache-dir --src /src -cupper-constraints.txt \
-chttps://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG \
pip==$PIP_TAG && \
+ pip install --no-cache-dir --src /src -cupper-constraints.txt \
+ -chttps://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG \
+ -e git+https://git.openstack.org/openstack/requirements@$OPENSTACK_TAG#egg=openstack_requirements && \
git clone --depth 1 https://gerrit.opnfv.org/gerrit/functest /src/functest && \
(cd /src/functest && git fetch --depth 1 --tags origin $BRANCH && git checkout FETCH_HEAD) && \
+ update-requirements -s --source /src/openstack-requirements /src/functest && \
pip install --no-cache-dir --src /src -cupper-constraints.txt \
-chttps://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG \
/src/functest && \
diff --git a/docker/features/hooks/post_checkout b/docker/features/hooks/post_checkout
index 8d0e98124..3e5670b4a 100644
--- a/docker/features/hooks/post_checkout
+++ b/docker/features/hooks/post_checkout
@@ -1,6 +1,6 @@
#!/bin/bash
-from="${DOCKER_REPO%/*}/functest-core:${DOCKER_TAG}"
+from="${DOCKER_REPO%/*}/functest-tempest:${DOCKER_TAG}"
sed -i "s|^FROM.*$|FROM ${from}|" Dockerfile
exit $?
diff --git a/docker/features/testcases.yaml b/docker/features/testcases.yaml
index 74c420bc7..a2f71f8c1 100644
--- a/docker/features/testcases.yaml
+++ b/docker/features/testcases.yaml
@@ -2,7 +2,7 @@
tiers:
-
name: features
- order: 2
+ order: 3
description: >-
Test suites from feature projects
integrated in functest
diff --git a/docker/smoke/Dockerfile b/docker/smoke/Dockerfile
index 7e4939a41..fcddb8451 100644
--- a/docker/smoke/Dockerfile
+++ b/docker/smoke/Dockerfile
@@ -4,14 +4,12 @@ ARG BRANCH=master
ARG OPENSTACK_TAG=stable/queens
ARG REFSTACK_TARGET=2018.02
ARG PATROLE_TAG=0.3.0
-ARG VMTP_TAG=99b261ccccc2f8a08ee2d8fca9f54ef9d69899d7
ARG NEUTRON_TAG=d307f5635d4015e7842a4a177f66c76ba4bd818a
ARG BARBICAN_TAG=b8bf147bdcdd33f3ad276ca8815fd253ec9b24af
-RUN apk --no-cache add --update libxml2 libxslt && \
- apk --no-cache add --virtual .build-deps --update \
+RUN apk --no-cache add --virtual .build-deps --update \
python-dev build-base linux-headers libffi-dev \
- openssl-dev libjpeg-turbo-dev libxml2-dev libxslt-dev && \
+ openssl-dev libjpeg-turbo-dev && \
wget -q -O- https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=$OPENSTACK_TAG | \
sed -E s/^tempest==+\(.*\)$/-e\ git+https:\\/\\/git.openstack.org\\/openstack\\/tempest@\\1#egg=tempest/ \
> upper-constraints.txt && \
@@ -20,9 +18,6 @@ RUN apk --no-cache add --update libxml2 libxslt && \
git clone --depth 1 https://git.openstack.org/openstack/patrole.git /src/patrole && \
(cd /src/patrole && git fetch --tags origin $PATROLE_TAG && git checkout FETCH_HEAD) && \
update-requirements -s --source /src/openstack-requirements /src/patrole/ && \
- git clone https://git.openstack.org/openstack/vmtp.git /src/vmtp && \
- (cd /src/vmtp && git fetch origin --tags $VMTP_TAG && git checkout FETCH_HEAD) && \
- update-requirements -s --source /src/openstack-requirements /src/vmtp/ && \
git clone https://git.openstack.org/openstack/neutron-tempest-plugin.git /src/neutron-tempest-plugin && \
(cd /src/neutron-tempest-plugin && git fetch --tags origin $NEUTRON_TAG && git checkout FETCH_HEAD) && \
update-requirements -s --source /src/openstack-requirements /src/neutron-tempest-plugin && \
@@ -31,9 +26,9 @@ RUN apk --no-cache add --update libxml2 libxslt && \
update-requirements -s --source /src/openstack-requirements /src/barbican-tempest-plugin/ && \
pip install --no-cache-dir --src /src -cupper-constraints.txt -cupper-constraints.opnfv.txt \
/src/patrole /src/barbican-tempest-plugin /src/neutron-tempest-plugin \
- networking-bgpvpn networking-sfc /src/vmtp && \
+ networking-bgpvpn networking-sfc && \
rm -r upper-constraints.txt upper-constraints.opnfv.txt \
- /src/patrole /src/barbican-tempest-plugin /src/neutron-tempest-plugin /src/vmtp && \
+ /src/patrole /src/barbican-tempest-plugin /src/neutron-tempest-plugin && \
mkdir -p /home/opnfv/functest/data/refstack && \
wget "https://refstack.openstack.org/api/v1/guidelines/${REFSTACK_TARGET}/tests?target=compute&type=required&alias=true&flag=false" \
-O /home/opnfv/functest/data/refstack/defcore.txt && \
diff --git a/docker/smoke/hooks/post_checkout b/docker/smoke/hooks/post_checkout
index 8d0e98124..3e5670b4a 100644
--- a/docker/smoke/hooks/post_checkout
+++ b/docker/smoke/hooks/post_checkout
@@ -1,6 +1,6 @@
#!/bin/bash
-from="${DOCKER_REPO%/*}/functest-core:${DOCKER_TAG}"
+from="${DOCKER_REPO%/*}/functest-tempest:${DOCKER_TAG}"
sed -i "s|^FROM.*$|FROM ${from}|" Dockerfile
exit $?
diff --git a/docker/tempest/Dockerfile b/docker/tempest/Dockerfile
index 3c30bae5a..d53457913 100644
--- a/docker/tempest/Dockerfile
+++ b/docker/tempest/Dockerfile
@@ -21,8 +21,6 @@ RUN apk --no-cache add --virtual .build-deps --update \
esac && \
wget -q -O- https://git.opnfv.org/functest/plain/upper-constraints.txt?h=$BRANCH | \
sed -E /#egg=functest/d > upper-constraints.opnfv.txt && \
- pip install --no-cache-dir --src /src -cupper-constraints.txt -cupper-constraints.opnfv.txt \
- -e git+https://git.openstack.org/openstack/requirements@$OPENSTACK_TAG#egg=openstack_requirements && \
git clone --depth 1 https://git.openstack.org/openstack/os-faults.git /src/os-faults && \
(cd /src/os-faults && git fetch --depth 1 --tags origin $OS_FAULTS_TAG && git checkout FETCH_HEAD) && \
update-requirements -s --source /src/openstack-requirements /src/os-faults/ && \
diff --git a/docker/vnf/testcases.yaml b/docker/vnf/testcases.yaml
index 04d4000b9..170eed0e5 100644
--- a/docker/vnf/testcases.yaml
+++ b/docker/vnf/testcases.yaml
@@ -2,7 +2,7 @@
tiers:
-
name: vnf
- order: 4
+ order: 5
description: >-
Collection of VNF test cases.
testcases:
diff --git a/functest/ci/testcases.yaml b/functest/ci/testcases.yaml
index 23f0620ec..20dc865d1 100644
--- a/functest/ci/testcases.yaml
+++ b/functest/ci/testcases.yaml
@@ -256,33 +256,6 @@ tiers:
- 'test_networks_multiprovider_rbac'
-
- 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
-
- -
case_name: snaps_smoke
project_name: functest
criteria: 100
@@ -370,9 +343,43 @@ tiers:
- barbican
-
- name: features
+ name: benchmarking
order: 2
description: >-
+ Run several OpenStack performance tools
+ https://docs.openstack.org/performance-docs/latest/methodologies/tools.html
+ testcases:
+ -
+ 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
+
+ -
+ name: features
+ order: 3
+ description: >-
Test suites from feature projects
integrated in functest
testcases:
@@ -473,7 +480,7 @@ tiers:
-
name: components
- order: 3
+ order: 4
description: >-
Extensive testing of OpenStack API.
testcases:
@@ -524,7 +531,7 @@ tiers:
-
name: vnf
- order: 4
+ order: 5
description: >-
Collection of VNF test cases.
testcases: