[train][goal] Define new 'octavia-v2-dsvm-scenario-ipv6-only' job

As part of Train community goal 'Support IPv6-Only Deployments and Testing'[1],
Tempest has defined the base job 'devstack-tempest-ipv6' which will
deploy services on IPv6.

This commit adds the new job 'octavia-v2-dsvm-scenario-ipv6-only'
run on gate which is derived from 'devstack-tempest-ipv6'.

Verification structure will be:
- 'devstack-IPv6' deploy the service on IPv6
- 'devstack-tempest-ipv6' run will verify the IPv6-only setting and listen address
- 'octavia-v2-dsvm-scenario-ipv6-only' will run the tests.

This scenario test will run with the following IPv6 additional settings:
1. All OpenStack endpoints will use IPv6 addressing.
2. The lb-mgmt-net will use IPv6 addresses.

Story: #2005477
Task: #35910

Co-Authored-By: Adam Harwell <flux.adam@gmail.com>
Co-Authored-By: Carlos Goncalves <cgoncalves@redhat.com>
Co-Authored-By: Michael Johnson <johnsomor@gmail.com>
Depends-On: https://review.opendev.org/665103

[1] https://governance.openstack.org/tc/goals/train/ipv6-support-and-testing.html

Change-Id: Ieb74ef2276632f04d6324f835b164df3114b2613
diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml
index 0548cab..1c10832 100644
--- a/zuul.d/jobs.yaml
+++ b/zuul.d/jobs.yaml
@@ -84,6 +84,58 @@
         octavia: https://opendev.org/openstack/octavia.git
 
 - job:
+    name: octavia-dsvm-base-ipv6-only
+    parent: devstack-tempest-ipv6
+    timeout: 7800
+    required-projects:
+      - openstack/octavia
+      - openstack/octavia-lib
+      - openstack/octavia-tempest-plugin
+      - openstack/python-octaviaclient
+    pre-run: playbooks/Octavia-DSVM/pre.yaml
+    irrelevant-files:
+      - ^.*\.rst$
+      - ^api-ref/.*$
+      - ^doc/.*$
+      - ^etc/.*$
+      - ^releasenotes/.*$
+    vars:
+      devstack_localrc:
+        TEMPEST_PLUGINS: /opt/stack/octavia-tempest-plugin
+        USE_PYTHON3: true
+      devstack_local_conf:
+        post-config:
+          $OCTAVIA_CONF:
+            DEFAULT:
+              debug: True
+      devstack_services:
+        c-bak: false
+        ceilometer-acentral: false
+        ceilometer-acompute: false
+        ceilometer-alarm-evaluator: false
+        ceilometer-alarm-notifier: false
+        ceilometer-anotification: false
+        ceilometer-api: false
+        ceilometer-collector: false
+        c-sch: false
+        c-api: false
+        c-vol: false
+        cinder: false
+        octavia: true
+        o-api: true
+        o-cw: true
+        o-hm: true
+        o-hk: true
+        swift: false
+        s-account: false
+        s-container: false
+        s-object: false
+        s-proxy: false
+        tempest: true
+      devstack_plugins:
+        octavia: https://opendev.org/openstack/octavia.git
+
+- job:
     name: octavia-dsvm-live-base
     parent: octavia-dsvm-base
     timeout: 9000
@@ -116,6 +168,38 @@
         '/var/log/octavia-tenant-traffic.log': logs
 
 - job:
+    name: octavia-dsvm-live-base-ipv6-only
+    parent: octavia-dsvm-base-ipv6-only
+    timeout: 9000
+    required-projects:
+      - openstack/diskimage-builder
+    vars:
+      devstack_localrc:
+        DIB_LOCAL_ELEMENTS: openstack-ci-mirrors
+      devstack_local_conf:
+        post-config:
+          $OCTAVIA_CONF:
+            haproxy_amphora:
+              # Set these higher for non-nested virt nodepool instances
+              connection_max_retries: 1200
+              build_active_retries: 300
+            amphora_agent:
+              forward_all_logs: True
+        test-config:
+          "$TEMPEST_CONFIG":
+            load_balancer:
+              check_interval: 1
+              check_timeout: 180
+      devstack_services:
+        neutron-qos: true
+      devstack_plugins:
+        neutron: https://opendev.org/openstack/neutron.git
+      zuul_copy_output:
+        '/var/log/dib-build' : logs
+        '/var/log/octavia-amphora.log': logs
+        '/var/log/octavia-tenant-traffic.log': logs
+
+- job:
     name: octavia-dsvm-live-two-node-base
     parent: octavia-dsvm-base
     nodeset: octavia-two-node
@@ -349,6 +433,26 @@
       - ^octavia_tempest_plugin/tests/(?!scenario/|\w+\.py).*
 
 - job:
+    name: octavia-v2-dsvm-scenario-ipv6-only
+    parent: octavia-dsvm-live-base-ipv6-only
+    vars:
+      devstack_local_conf:
+        post-config:
+          $OCTAVIA_CONF:
+            api_settings:
+              api_v1_enabled: False
+      tempest_concurrency: 2
+      tempest_test_regex: ^octavia_tempest_plugin.tests.scenario.v2
+      tox_envlist: all
+    irrelevant-files:
+      - ^.*\.rst$
+      - ^api-ref/.*$
+      - ^doc/.*$
+      - ^etc/.*$
+      - ^releasenotes/.*$
+      - ^octavia_tempest_plugin/tests/(?!scenario/|\w+\.py).*
+
+- job:
     name: octavia-v2-dsvm-py2-scenario
     parent: octavia-v2-dsvm-scenario
     vars: