Merge "Add the nova-multiattach job"

This commit is contained in:
Zuul 2018-02-02 23:14:09 +00:00 committed by Gerrit Code Review
commit 5e9cb49b0a
3 changed files with 107 additions and 8 deletions

View File

@ -1,12 +1,11 @@
# See https://docs.openstack.org/infra/manual/drivers.html#naming-with-zuul-v3
# for job naming conventions.
- job:
name: nova-lvm
name: nova-base
parent: legacy-dsvm-base
description: |
Run standard integration tests using LVM image backend. This is useful if
there are tests touching this code.
The base job definition for nova jobs. Contains common configuration.
timeout: 10800
run: playbooks/legacy/nova-lvm/run.yaml
post-run: playbooks/legacy/nova-lvm/post.yaml
required-projects:
- openstack-infra/devstack-gate
- openstack/nova
@ -62,16 +61,43 @@
tox_envlist: functional-py35
timeout: 3600
- job:
name: nova-lvm
parent: nova-base
description: |
Run standard integration tests using LVM image backend. This is useful if
there are tests touching this code.
run: playbooks/legacy/nova-lvm/run.yaml
post-run: playbooks/legacy/nova-lvm/post.yaml
- job:
name: nova-multiattach
parent: nova-base
description: |
Run tempest integration tests with volume multiattach support enabled.
This job will only work starting with Queens.
It uses the default Cinder volume type in devstack (lvm) and the
default compute driver in devstack (libvirt). It also disables the
Pike Ubuntu Cloud Archive because volume multiattach support with
the libvirt driver only works with qemu<2.10 or libvirt>=3.10 which
won't work with the Pike UCA.
branches: ^(?!stable/(newton|ocata|pike)).*$
run: playbooks/legacy/nova-multiattach/run.yaml
post-run: playbooks/legacy/nova-multiattach/post.yaml
- project:
name: openstack/nova
experimental:
jobs:
- nova-lvm
check:
jobs:
- nova-multiattach
- nova-tox-functional
- nova-tox-functional-py35
gate:
jobs:
- nova-multiattach
- nova-tox-functional
- nova-tox-functional-py35
experimental:
jobs:
# Please try to keep this list of job names sorted alphabetically.
- nova-lvm

View File

@ -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

View File

@ -0,0 +1,58 @@
- hosts: all
name: nova-multiattach
tasks:
- name: Ensure 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]]
ENABLE_VOLUME_MULTIATTACH=True
ENABLE_UBUNTU_CLOUD_ARCHIVE=False
EOF
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
export PYTHONUNBUFFERED=true
# Yes we want to run Tempest.
export DEVSTACK_GATE_TEMPEST=1
# Only run compute API tests; note that this will need to
# be updated if multiattach scenario tests are ever added.
export DEVSTACK_GATE_TEMPEST_REGEX="api.compute"
export BRANCH_OVERRIDE=default
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
fi
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 }}'