Move shaker and vmtp into functest-benchmarking 11/61711/6
authorCédric Ollivier <cedric.ollivier@orange.com>
Sun, 2 Sep 2018 10:20:26 +0000 (12:20 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Sun, 2 Sep 2018 16:10:51 +0000 (18:10 +0200)
It also updates all jobs and fixes Dockerhub hooks.

Change-Id: Ib182155736b4dbdb829293081741a9d5cb8ea6d7
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
17 files changed:
.travis.yml
build.sh
ci/daily.yaml
ci/gate.yaml
ci/run.yaml
docker/benchmarking/Dockerfile [new file with mode: 0644]
docker/benchmarking/hooks/post_checkout [new file with mode: 0644]
docker/benchmarking/testcases.yaml [new file with mode: 0644]
docker/components/testcases.yaml
docker/core/Dockerfile
docker/features/hooks/post_checkout
docker/features/testcases.yaml
docker/smoke/Dockerfile
docker/smoke/hooks/post_checkout
docker/tempest/Dockerfile
docker/vnf/testcases.yaml
functest/ci/testcases.yaml

index ea13625..e406075 100644 (file)
@@ -49,6 +49,11 @@ jobs:
         - REPO="${DOCKER_USERNAME}"
         - amd64_dirs="docker/smoke"
         - arm64_dirs=""
+    - 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}"
index 74f67da..c3bc57b 100644 (file)
--- 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"}
index 2ae1b68..89b404f 100644 (file)
@@ -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'
index ea0c76e..1abfc67 100644 (file)
@@ -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'
           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'
index 558956f..9cc374c 100644 (file)
@@ -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'
     jobs:
       - '{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
diff --git a/docker/benchmarking/Dockerfile b/docker/benchmarking/Dockerfile
new file mode 100644 (file)
index 0000000..3afa5c4
--- /dev/null
@@ -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 (file)
index 0000000..8d0e981
--- /dev/null
@@ -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 (file)
index 0000000..0c43726
--- /dev/null
@@ -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
index 150d097..73a88ae 100644 (file)
@@ -2,7 +2,7 @@
 tiers:
     -
         name: components
-        order: 3
+        order: 4
         description: >-
             Extensive testing of OpenStack API.
         testcases:
index 97e4b17..8f744db 100644 (file)
@@ -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 && \
index 8d0e981..3e5670b 100644 (file)
@@ -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 $?
index 74c420b..a2f71f8 100644 (file)
@@ -2,7 +2,7 @@
 tiers:
     -
         name: features
-        order: 2
+        order: 3
         description: >-
             Test suites from feature projects
             integrated in functest
index 7e4939a..fcddb84 100644 (file)
@@ -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 && \
index 8d0e981..3e5670b 100644 (file)
@@ -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 $?
index 3c30bae..d534579 100644 (file)
@@ -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/ && \
index 04d4000..170eed0 100644 (file)
@@ -2,7 +2,7 @@
 tiers:
     -
         name: vnf
-        order: 4
+        order: 5
         description: >-
             Collection of VNF test cases.
         testcases:
index 23f0620..20dc865 100644 (file)
@@ -255,33 +255,6 @@ tiers:
                         excludes:
                             - '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
@@ -370,8 +343,42 @@ 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
@@ -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: