Merge "Add the nova-multiattach job"
This commit is contained in:
commit
5e9cb49b0a
42
.zuul.yaml
42
.zuul.yaml
|
@ -1,12 +1,11 @@
|
||||||
|
# See https://docs.openstack.org/infra/manual/drivers.html#naming-with-zuul-v3
|
||||||
|
# for job naming conventions.
|
||||||
- job:
|
- job:
|
||||||
name: nova-lvm
|
name: nova-base
|
||||||
parent: legacy-dsvm-base
|
parent: legacy-dsvm-base
|
||||||
description: |
|
description: |
|
||||||
Run standard integration tests using LVM image backend. This is useful if
|
The base job definition for nova jobs. Contains common configuration.
|
||||||
there are tests touching this code.
|
|
||||||
timeout: 10800
|
timeout: 10800
|
||||||
run: playbooks/legacy/nova-lvm/run.yaml
|
|
||||||
post-run: playbooks/legacy/nova-lvm/post.yaml
|
|
||||||
required-projects:
|
required-projects:
|
||||||
- openstack-infra/devstack-gate
|
- openstack-infra/devstack-gate
|
||||||
- openstack/nova
|
- openstack/nova
|
||||||
|
@ -62,16 +61,43 @@
|
||||||
tox_envlist: functional-py35
|
tox_envlist: functional-py35
|
||||||
timeout: 3600
|
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:
|
- project:
|
||||||
name: openstack/nova
|
name: openstack/nova
|
||||||
experimental:
|
|
||||||
jobs:
|
|
||||||
- nova-lvm
|
|
||||||
check:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
|
- nova-multiattach
|
||||||
- nova-tox-functional
|
- nova-tox-functional
|
||||||
- nova-tox-functional-py35
|
- nova-tox-functional-py35
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
|
- nova-multiattach
|
||||||
- nova-tox-functional
|
- nova-tox-functional
|
||||||
- nova-tox-functional-py35
|
- nova-tox-functional-py35
|
||||||
|
experimental:
|
||||||
|
jobs:
|
||||||
|
# Please try to keep this list of job names sorted alphabetically.
|
||||||
|
- nova-lvm
|
||||||
|
|
|
@ -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,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 }}'
|
Loading…
Reference in New Issue