Setup Octavia stable/pike for zuul v3

Initial patch to setup Octavia stable/pike branch for zuul v3 jobs.

Change-Id: If0ce494a4f15a96489444f965d3620bcfa4cf8d2
This commit is contained in:
Michael Johnson 2017-10-26 16:22:27 -07:00
parent 1c94f6663c
commit 921a93fade
12 changed files with 649 additions and 0 deletions
playbooks/legacy
octavia-v1-dsvm-py3x-scenario-multinode
octavia-v1-dsvm-py3x-scenario
octavia-v1-dsvm-scenario-kvm-centos.7
octavia-v1-dsvm-scenario-multinode
octavia-v1-dsvm-scenario
zuul.d

@ -0,0 +1,15 @@
- hosts: primary
tasks:
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
synchronize:
src: '{{ ansible_user_dir }}/workspace/'
dest: '{{ zuul.executor.log_root }}'
mode: pull
copy_links: true
verify_host: true
rsync_opts:
- --include=/logs/**
- --include=*/
- --exclude=*
- --prune-empty-dirs

@ -0,0 +1,69 @@
- hosts: primary
name: Autoconverted job legacy-octavia-v1-dsvm-py3x-scenario-multinode from old
job gate-octavia-v1-dsvm-py3x-scenario-multinode
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-infra/devstack-gate
dest: devstack-gate
EOF
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
git://git.openstack.org \
openstack-infra/devstack-gate
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
export DEVSTACK_GATE_USE_PYTHON3=True
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
export DEVSTACK_GATE_EXERCISES=0
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_INSTALL_TESTONLY=1
export DEVSTACK_GATE_TOPOLOGY="multinode"
export BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
export PROJECTS="openstack/barbican $PROJECTS"
export PROJECTS="openstack/python-barbicanclient $PROJECTS"
export PROJECTS="openstack/diskimage-builder $PROJECTS"
export PROJECTS="openstack/tripleo-image-elements $PROJECTS"
export PROJECTS="openstack/neutron-lbaas $PROJECTS"
export PROJECTS="openstack/octavia $PROJECTS"
if ! [[ "$ZUUL_BRANCH" =~ "stable/newton"|"stable/ocata" ]]; then
export DEVSTACK_PROJECT_FROM_GIT="python-octaviaclient"
export OVERRIDE_PYTHON_OCTAVIACLIENT_PROJECT_BRANCH=$ZUUL_BRANCH
fi
function gate_hook {
$BASE/new/octavia/octavia/tests/contrib/gate_hook.sh tempest v1 scenario
}
export -f gate_hook
function post_test_hook {
$BASE/new/octavia/octavia/tests/contrib/post_test_hook.sh tempest v1 scenario
}
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 }}'

@ -0,0 +1,15 @@
- hosts: primary
tasks:
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
synchronize:
src: '{{ ansible_user_dir }}/workspace/'
dest: '{{ zuul.executor.log_root }}'
mode: pull
copy_links: true
verify_host: true
rsync_opts:
- --include=/logs/**
- --include=*/
- --exclude=*
- --prune-empty-dirs

@ -0,0 +1,67 @@
- hosts: all
name: Autoconverted job legacy-octavia-v1-dsvm-py3x-scenario from old job gate-octavia-v1-dsvm-py3x-scenario-ubuntu-xenial-nv
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-infra/devstack-gate
dest: devstack-gate
EOF
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
git://git.openstack.org \
openstack-infra/devstack-gate
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
export DEVSTACK_GATE_USE_PYTHON3=True
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
export DEVSTACK_GATE_EXERCISES=0
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_INSTALL_TESTONLY=1
export BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
export PROJECTS="openstack/barbican $PROJECTS"
export PROJECTS="openstack/python-barbicanclient $PROJECTS"
export PROJECTS="openstack/diskimage-builder $PROJECTS"
export PROJECTS="openstack/tripleo-image-elements $PROJECTS"
export PROJECTS="openstack/neutron-lbaas $PROJECTS"
export PROJECTS="openstack/octavia $PROJECTS"
if ! [[ "$ZUUL_BRANCH" =~ "stable/newton"|"stable/ocata" ]]; then
export DEVSTACK_PROJECT_FROM_GIT="python-octaviaclient"
export OVERRIDE_PYTHON_OCTAVIACLIENT_PROJECT_BRANCH=$ZUUL_BRANCH
fi
function gate_hook {
$BASE/new/octavia/octavia/tests/contrib/gate_hook.sh tempest v1 scenario
}
export -f gate_hook
function post_test_hook {
$BASE/new/octavia/octavia/tests/contrib/post_test_hook.sh tempest v1 scenario
}
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 }}'

@ -0,0 +1,15 @@
- hosts: primary
tasks:
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
synchronize:
src: '{{ ansible_user_dir }}/workspace/'
dest: '{{ zuul.executor.log_root }}'
mode: pull
copy_links: true
verify_host: true
rsync_opts:
- --include=/logs/**
- --include=*/
- --exclude=*
- --prune-empty-dirs

@ -0,0 +1,83 @@
- hosts: all
name: Autoconverted job legacy-octavia-v1-dsvm-scenario-kvm-centos.7 from old job
gate-octavia-v1-dsvm-scenario-kvm-centos.7-ubuntu-xenial-nv
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-infra/devstack-gate
dest: devstack-gate
EOF
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
git://git.openstack.org \
openstack-infra/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]]
OCTAVIA_HYPERVISOR=kvm
OCTAVIA_AMP_BASE_OS=centos
OCTAVIA_AMP_DISTRIBUTION_RELEASE_ID=7
EOF
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
export DEVSTACK_GATE_EXERCISES=0
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_INSTALL_TESTONLY=1
export BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
export PROJECTS="openstack/barbican $PROJECTS"
export PROJECTS="openstack/barbican-tempest-plugin $PROJECTS"
export PROJECTS="openstack/python-barbicanclient $PROJECTS"
export PROJECTS="openstack/diskimage-builder $PROJECTS"
export PROJECTS="openstack/tripleo-image-elements $PROJECTS"
export PROJECTS="openstack/neutron-lbaas $PROJECTS"
export PROJECTS="openstack/octavia $PROJECTS"
if ! [[ "$ZUUL_BRANCH" =~ "stable/newton"|"stable/ocata" ]]; then
export DEVSTACK_PROJECT_FROM_GIT="python-octaviaclient"
export OVERRIDE_PYTHON_OCTAVIACLIENT_PROJECT_BRANCH=$ZUUL_BRANCH
fi
function gate_hook {
$BASE/new/octavia/octavia/tests/contrib/gate_hook.sh tempest v1 scenario
}
export -f gate_hook
function post_test_hook {
$BASE/new/octavia/octavia/tests/contrib/post_test_hook.sh tempest v1 scenario
}
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 }}'

@ -0,0 +1,15 @@
- hosts: primary
tasks:
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
synchronize:
src: '{{ ansible_user_dir }}/workspace/'
dest: '{{ zuul.executor.log_root }}'
mode: pull
copy_links: true
verify_host: true
rsync_opts:
- --include=/logs/**
- --include=*/
- --exclude=*
- --prune-empty-dirs

@ -0,0 +1,67 @@
- hosts: primary
name: Autoconverted job legacy-octavia-v1-dsvm-scenario-multinode from old job gate-octavia-v1-dsvm-scenario-multinode
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-infra/devstack-gate
dest: devstack-gate
EOF
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
git://git.openstack.org \
openstack-infra/devstack-gate
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
export DEVSTACK_GATE_EXERCISES=0
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_INSTALL_TESTONLY=1
export DEVSTACK_GATE_TOPOLOGY="multinode"
export BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
export PROJECTS="openstack/barbican $PROJECTS"
export PROJECTS="openstack/python-barbicanclient $PROJECTS"
export PROJECTS="openstack/diskimage-builder $PROJECTS"
export PROJECTS="openstack/tripleo-image-elements $PROJECTS"
export PROJECTS="openstack/neutron-lbaas $PROJECTS"
export PROJECTS="openstack/octavia $PROJECTS"
if ! [[ "$ZUUL_BRANCH" =~ "stable/newton"|"stable/ocata" ]]; then
export DEVSTACK_PROJECT_FROM_GIT="python-octaviaclient"
export OVERRIDE_PYTHON_OCTAVIACLIENT_PROJECT_BRANCH=$ZUUL_BRANCH
fi
function gate_hook {
$BASE/new/octavia/octavia/tests/contrib/gate_hook.sh tempest v1 scenario
}
export -f gate_hook
function post_test_hook {
$BASE/new/octavia/octavia/tests/contrib/post_test_hook.sh tempest v1 scenario
}
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 }}'

@ -0,0 +1,15 @@
- hosts: primary
tasks:
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
synchronize:
src: '{{ ansible_user_dir }}/workspace/'
dest: '{{ zuul.executor.log_root }}'
mode: pull
copy_links: true
verify_host: true
rsync_opts:
- --include=/logs/**
- --include=*/
- --exclude=*
- --prune-empty-dirs

@ -0,0 +1,66 @@
- hosts: all
name: Autoconverted job legacy-octavia-v1-dsvm-scenario from old job gate-octavia-v1-dsvm-scenario-ubuntu-xenial-nv
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-infra/devstack-gate
dest: devstack-gate
EOF
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
git://git.openstack.org \
openstack-infra/devstack-gate
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
export PYTHONUNBUFFERED=true
export DEVSTACK_GATE_TEMPEST=1
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
export DEVSTACK_GATE_EXERCISES=0
export DEVSTACK_GATE_NEUTRON=1
export DEVSTACK_GATE_INSTALL_TESTONLY=1
export BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
export PROJECTS="openstack/barbican $PROJECTS"
export PROJECTS="openstack/python-barbicanclient $PROJECTS"
export PROJECTS="openstack/diskimage-builder $PROJECTS"
export PROJECTS="openstack/tripleo-image-elements $PROJECTS"
export PROJECTS="openstack/neutron-lbaas $PROJECTS"
export PROJECTS="openstack/octavia $PROJECTS"
if ! [[ "$ZUUL_BRANCH" =~ "stable/newton"|"stable/ocata" ]]; then
export DEVSTACK_PROJECT_FROM_GIT="python-octaviaclient"
export OVERRIDE_PYTHON_OCTAVIACLIENT_PROJECT_BRANCH=$ZUUL_BRANCH
fi
function gate_hook {
$BASE/new/octavia/octavia/tests/contrib/gate_hook.sh tempest v1 scenario
}
export -f gate_hook
function post_test_hook {
$BASE/new/octavia/octavia/tests/contrib/post_test_hook.sh tempest v1 scenario
}
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 }}'

94
zuul.d/jobs.yaml Normal file

@ -0,0 +1,94 @@
- job:
name: octavia-tox-functional
parent: openstack-tox
vars:
tox_envlist: functional
- job:
name: octavia-tox-functional-py35
parent: openstack-tox
vars:
tox_envlist: functional-py35
- job:
name: octavia-v1-dsvm-scenario
parent: legacy-dsvm-base
run: playbooks/legacy/octavia-v1-dsvm-scenario/run.yaml
post-run: playbooks/legacy/octavia-v1-dsvm-scenario/post.yaml
timeout: 7800
required-projects:
- openstack-infra/devstack-gate
- openstack/barbican
- openstack/diskimage-builder
- openstack/neutron-lbaas
- openstack/octavia
- openstack/python-barbicanclient
- openstack/python-octaviaclient
- openstack/tripleo-image-elements
- job:
name: octavia-v1-dsvm-py3x-scenario
parent: legacy-dsvm-base
run: playbooks/legacy/octavia-v1-dsvm-py3x-scenario/run.yaml
post-run: playbooks/legacy/octavia-v1-dsvm-py3x-scenario/post.yaml
timeout: 7800
required-projects:
- openstack-infra/devstack-gate
- openstack/barbican
- openstack/diskimage-builder
- openstack/neutron-lbaas
- openstack/octavia
- openstack/python-barbicanclient
- openstack/python-octaviaclient
- openstack/tripleo-image-elements
- job:
name: octavia-v1-dsvm-scenario-multinode
parent: legacy-dsvm-base-multinode
run: playbooks/legacy/octavia-v1-dsvm-scenario-multinode/run.yaml
post-run: playbooks/legacy/octavia-v1-dsvm-scenario-multinode/post.yaml
timeout: 7800
required-projects:
- openstack-infra/devstack-gate
- openstack/barbican
- openstack/diskimage-builder
- openstack/neutron-lbaas
- openstack/octavia
- openstack/python-barbicanclient
- openstack/python-octaviaclient
- openstack/tripleo-image-elements
nodeset: legacy-ubuntu-xenial-2-node
- job:
name: octavia-v1-dsvm-py3x-scenario-multinode
parent: legacy-dsvm-base-multinode
run: playbooks/legacy/octavia-v1-dsvm-py3x-scenario-multinode/run.yaml
post-run: playbooks/legacy/octavia-v1-dsvm-py3x-scenario-multinode/post.yaml
timeout: 7800
required-projects:
- openstack-infra/devstack-gate
- openstack/barbican
- openstack/diskimage-builder
- openstack/neutron-lbaas
- openstack/octavia
- openstack/python-barbicanclient
- openstack/python-octaviaclient
- openstack/tripleo-image-elements
nodeset: legacy-ubuntu-xenial-2-node
- job:
name: octavia-v1-dsvm-scenario-kvm-centos.7
parent: legacy-dsvm-base
run: playbooks/legacy/octavia-v1-dsvm-scenario-kvm-centos.7/run.yaml
post-run: playbooks/legacy/octavia-v1-dsvm-scenario-kvm-centos.7/post.yaml
timeout: 7800
required-projects:
- openstack-infra/devstack-gate
- openstack/barbican
- openstack/barbican-tempest-plugin
- openstack/diskimage-builder
- openstack/neutron-lbaas
- openstack/octavia
- openstack/python-barbicanclient
- openstack/python-octaviaclient
- openstack/tripleo-image-elements

128
zuul.d/projects.yaml Normal file

@ -0,0 +1,128 @@
# Note: Some official OpenStack wide jobs are still defined in the
# project-config repository
- project:
name: openstack/octavia
check:
jobs:
- neutron-lbaasv2-dsvm-api
- neutron-lbaasv2-dsvm-py3x-api:
branches: ^(?!stable/ocata).*$
- neutron-lbaasv2-dsvm-scenario:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- neutron-lbaasv2-dsvm-py3x-scenario:
branches: ^(?!stable/ocata).*$
voting: false
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- octavia-tox-functional
- octavia-tox-functional-py35:
branches: ^(?!stable/ocata).*$
- octavia-v1-dsvm-scenario:
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- octavia-v1-dsvm-py3x-scenario:
branches: ^(?!stable/ocata).*$
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- octavia-v1-dsvm-scenario-multinode:
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- octavia-v1-dsvm-py3x-scenario-multinode:
branches: ^(?!stable/ocata).*$
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- octavia-v1-dsvm-scenario-kvm-centos.7:
voting: false
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
gate:
queue: octavia
jobs:
- octavia-tox-functional
- octavia-tox-functional-py35:
branches: ^(?!stable/ocata).*$
- octavia-v1-dsvm-scenario:
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- octavia-v1-dsvm-py3x-scenario:
branches: ^(?!stable/ocata).*$
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- octavia-v1-dsvm-scenario-multinode:
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- octavia-v1-dsvm-py3x-scenario-multinode:
branches: ^(?!stable/ocata).*$
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^etc/.*$
- ^releasenotes/.*$
- ^tempest/hacking/.*$
- ^tempest/tests/.*$
- neutron-lbaasv2-dsvm-api
- neutron-lbaasv2-dsvm-py3x-api:
branches: ^(?!stable/ocata).*$