From d625e90014e192c142e4fb97bbc781a4c6589aa5 Mon Sep 17 00:00:00 2001
From: Cédric Ollivier <cedric.ollivier@orange.com>
Date: Sun, 25 Aug 2019 21:32:34 +0200
Subject: Add Octavia testing
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

It integrates Octavia Tempest Plugin.
The new testcase octavia currently covers API only [1].

[1] https://logs.opendev.org/46/674846/2/check/octavia-v2-dsvm-noop-api/fe37c58/testr_results.html.gz

Change-Id: I2a11a19aa0c43701499dc9e17bd69b9387b53b58
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
---
 docker/smoke/Dockerfile                                | 11 +++++++++--
 docker/smoke/testcases.yaml                            | 18 ++++++++++++++++++
 functest/ci/testcases.yaml                             | 18 ++++++++++++++++++
 .../openstack/tempest/custom_tests/tempest_conf.yaml   |  2 ++
 4 files changed, 47 insertions(+), 2 deletions(-)

diff --git a/docker/smoke/Dockerfile b/docker/smoke/Dockerfile
index d7f93cf71..1de3ff696 100644
--- a/docker/smoke/Dockerfile
+++ b/docker/smoke/Dockerfile
@@ -6,6 +6,7 @@ ARG REFSTACK_TARGET=2018.11
 ARG PATROLE_TAG=master
 ARG NEUTRON_TEMPEST_TAG=master
 ARG BARBICAN_TAG=master
+ARG OCTAVIA_TAG=master
 
 RUN apk --no-cache add --virtual .build-deps --update \
         python3-dev build-base linux-headers libffi-dev \
@@ -30,8 +31,14 @@ RUN apk --no-cache add --virtual .build-deps --update \
         git fetch --tags https://opendev.org/openstack/barbican-tempest-plugin.git $BARBICAN_TAG && \
         git checkout FETCH_HEAD) && \
     update-requirements -s --source /src/openstack-requirements /src/barbican-tempest-plugin/ && \
+    git init /src/octavia-tempest-plugin && \
+    (cd /src/octavia-tempest-plugin && \
+        git fetch --tags https://git.openstack.org/openstack/octavia-tempest-plugin.git $OCTAVIA_TAG && \
+        git checkout FETCH_HEAD) && \
+    update-requirements -s --source /src/openstack-requirements /src/octavia-tempest-plugin && \
     pip3 install --no-cache-dir --src /src -cupper-constraints.txt -cupper-constraints.opnfv.txt \
-        /src/patrole /src/barbican-tempest-plugin /src/neutron-tempest-plugin && \
+        /src/patrole /src/barbican-tempest-plugin /src/neutron-tempest-plugin \
+        /src/octavia-tempest-plugin && \
     mkdir -p /home/opnfv/functest/data/refstack && \
     mkdir -p /etc/neutron /etc/cinder /etc/glance /etc/keystone /etc/nova && \
     wget -q -O /etc/glance/policy.json https://opendev.org/openstack/glance/raw/branch/$OPENSTACK_TAG/etc/policy.json && \
@@ -42,7 +49,7 @@ RUN apk --no-cache add --virtual .build-deps --update \
     deactivate && \
     rm -r oslo upper-constraints.txt upper-constraints.opnfv.txt \
         /src/patrole /src/barbican-tempest-plugin /src/neutron-tempest-plugin \
-        /src/neutron && \
+        /src/octavia-tempest-plugin /src/neutron && \
     apk del .build-deps
 COPY compute.txt /home/opnfv/functest/data/refstack/compute.txt
 COPY object.txt /home/opnfv/functest/data/refstack/object.txt
diff --git a/docker/smoke/testcases.yaml b/docker/smoke/testcases.yaml
index e45e86fdc..c8d7c5d46 100644
--- a/docker/smoke/testcases.yaml
+++ b/docker/smoke/testcases.yaml
@@ -215,3 +215,21 @@ tiers:
                             '^barbican_tempest_plugin.((?!test_signed_image_upload_boot_failure).)*$'
                         services:
                             - barbican
+
+            -
+                case_name: octavia
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    It leverages on the tempest plugin containing tests used to
+                    verify the functionality of an octavia installation.
+                run:
+                    name: tempest_common
+                    args:
+                        mode:
+                            '^octavia_tempest_plugin.tests.api.v2'
+                        services:
+                            - octavia
+                        option:
+                            - '--concurrency=2'
diff --git a/functest/ci/testcases.yaml b/functest/ci/testcases.yaml
index 16f2910b2..48bf51395 100644
--- a/functest/ci/testcases.yaml
+++ b/functest/ci/testcases.yaml
@@ -379,6 +379,24 @@ tiers:
                         services:
                             - barbican
 
+            -
+                case_name: octavia
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    It leverages on the tempest plugin containing tests used to
+                    verify the functionality of an octavia installation.
+                run:
+                    name: tempest_common
+                    args:
+                        mode:
+                            '^octavia_tempest_plugin.tests.api.v2'
+                        services:
+                            - octavia
+                        option:
+                            - '--concurrency=2'
+
     -
         name: benchmarking
         order: 2
diff --git a/functest/opnfv_tests/openstack/tempest/custom_tests/tempest_conf.yaml b/functest/opnfv_tests/openstack/tempest/custom_tests/tempest_conf.yaml
index 06c77efd9..ff67bf015 100644
--- a/functest/opnfv_tests/openstack/tempest/custom_tests/tempest_conf.yaml
+++ b/functest/opnfv_tests/openstack/tempest/custom_tests/tempest_conf.yaml
@@ -24,3 +24,5 @@ volume:
     storage_protocol: iSCSI
 volume-feature-enabled:
     backup: true
+load_balancer:
+    test_with_noop: true
-- 
cgit