[train][goal] Define new tricircle-functional-ipv6-only job

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

This commit adds the new job 'tricircle-functional-ipv6-only'
run on gate which is derived from 'legacy-dsvm-base-ipv6-only'.

Verification structure will be:
- 'legacy-dsvm-base-ipv6-only' deploy the service on IPv6 and
  verify the IPv6-only setting and listen address
- 'tricircle-functional-ipv6-only' will run the tests.

Story: #2005477
Task: #35935

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

Change-Id: I5f430b4ae7690ae80d8a640b3706337036778029
This commit is contained in:
Ghanshyam Mann 2019-09-11 13:36:32 +00:00
parent deb146a18c
commit 372dfcf94b
2 changed files with 84 additions and 0 deletions

View File

@ -25,6 +25,11 @@
devstack_localrc:
USE_PYTHON3: true
- job:
name: tricircle-functional-ipv6-only
parent: tricircle-functional-python3
run: playbooks/tricircle-dsvm-functional/run-ipv6.yaml
- job:
name: tricircle-multiregion
parent: legacy-dsvm-base-multinode
@ -77,6 +82,7 @@
- openstack/networking-sfc
- tricircle-functional
- tricircle-functional-python3
- tricircle-functional-ipv6-only
- tricircle-multiregion
gate:
jobs:
@ -94,4 +100,5 @@
- openstack/neutron
- openstack/networking-sfc
- tricircle-functional
- tricircle-functional-ipv6-only
- tricircle-multiregion

View File

@ -0,0 +1,77 @@
- hosts: all
name: legacy-tricircle-dsvm-functional version with IPv6
tasks:
- name: Ensure legacy workspace directory
file:
path: '{{ ansible_user_dir }}/workspace'
state: directory
- shell:
cmd: |
set -e
set -x
cat > clonemap.yaml << EOF
clonemap:
- name: openstack/devstack-gate
dest: devstack-gate
EOF
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
https://opendev.org \
openstack/devstack-gate
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
cat << 'EOF' >>"/tmp/dg-local.conf"
[[local|localrc]]
enable_plugin tricircle https://opendev.org/openstack/tricircle
EOF
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
export PYTHONUNBUFFERED=true
export BRANCH_OVERRIDE=default
export PROJECTS="openstack/tricircle openstack/neutron openstack/networking-sfc $PROJECTS"
export LIBS_FROM_GIT="neutron,networking-sfc"
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_TEMPEST=0
export DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=0
export DEVSTACK_GATE_TEMPEST_REGEX="tricircle.tempestplugin"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"SERVICE_IP_VERSION=6"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"SERVICE_HOST=''"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"USE_PYTHON3=true"
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
function pre_test_hook {
cd /opt/stack/new/tricircle/tricircle/tempestplugin/
./pre_test_hook.sh
}
export -f pre_test_hook
function post_test_hook {
cd $BASE/new/tempest/tools
./verify-ipv6-only-deployments.sh
cd /opt/stack/new/tricircle/tricircle/tempestplugin/
./post_test_hook.sh
}
export -f post_test_hook
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
./safe-devstack-vm-gate-wrap.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'