Merge "Move legacy-grenade-dsvm-neutron-multinode-live-migration in-tree"
This commit is contained in:
commit
fb4308e33a
56
.zuul.yaml
56
.zuul.yaml
@ -194,6 +194,41 @@
|
||||
required-projects:
|
||||
- openstack/oslo.versionedobjects
|
||||
|
||||
- job:
|
||||
name: nova-grenade-live-migration
|
||||
parent: nova-dsvm-multinode-base
|
||||
description: |
|
||||
Multi-node grenade job which runs nova/tests/live_migration/hooks tests.
|
||||
In other words, this tests live migration with mixed-version compute
|
||||
services which is important for things like rolling upgrade support.
|
||||
The former name for this job was
|
||||
"legacy-grenade-dsvm-neutron-multinode-live-migration".
|
||||
run: playbooks/legacy/nova-grenade-live-migration/run.yaml
|
||||
post-run: playbooks/legacy/nova-grenade-live-migration/post.yaml
|
||||
required-projects:
|
||||
- openstack-dev/grenade
|
||||
- openstack-infra/devstack-gate
|
||||
- openstack/nova
|
||||
irrelevant-files:
|
||||
# We define our own irrelevant-files because we need to run
|
||||
# this if there are changes to nova/tests/live_migration/.
|
||||
# TODO(mriedem): Move the nova/tests/live_migration/ scripts to gate/
|
||||
# so this job can use the standard dsvm-irrelevant-files.
|
||||
- ^api-.*$
|
||||
- ^(test-|)requirements.txt$
|
||||
- ^.*\.rst$
|
||||
- ^.git.*$
|
||||
- ^doc/.*$
|
||||
- ^nova/hacking/.*$
|
||||
- ^nova/locale/.*$
|
||||
- ^nova/tests/(?!live_migration/).*$
|
||||
- ^releasenotes/.*$
|
||||
- ^setup.cfg$
|
||||
- ^tests-py3.txt$
|
||||
- ^tools/.*$
|
||||
- ^tox.ini$
|
||||
voting: false
|
||||
|
||||
- project:
|
||||
# Please try to keep the list of job names sorted alphabetically.
|
||||
templates:
|
||||
@ -217,26 +252,6 @@
|
||||
- devstack-plugin-ceph-tempest:
|
||||
voting: false
|
||||
irrelevant-files: *dsvm-irrelevant-files
|
||||
# TODO(mriedem): We need to move this job definition in-tree from
|
||||
# openstack-zuul-jobs.
|
||||
- legacy-grenade-dsvm-neutron-multinode-live-migration:
|
||||
voting: false
|
||||
irrelevant-files:
|
||||
# We define our own irrelevant-files because we need to run
|
||||
# this if there are changes to nova/tests/live_migration/.
|
||||
- ^api-.*$
|
||||
- ^(test-|)requirements.txt$
|
||||
- ^.*\.rst$
|
||||
- ^.git.*$
|
||||
- ^doc/.*$
|
||||
- ^nova/hacking/.*$
|
||||
- ^nova/locale/.*$
|
||||
- ^nova/tests/(?!live_migration/).*$
|
||||
- ^releasenotes/.*$
|
||||
- ^setup.cfg$
|
||||
- ^tests-py3.txt$
|
||||
- ^tools/.*$
|
||||
- ^tox.ini$
|
||||
- neutron-grenade-multinode:
|
||||
irrelevant-files: *dsvm-irrelevant-files
|
||||
- neutron-tempest-linuxbridge:
|
||||
@ -246,6 +261,7 @@
|
||||
# code; we don't need to run this on all changes, nor do we run
|
||||
# it in the gate.
|
||||
- ^(?!nova/network/.*)(?!nova/virt/libvirt/vif.py).*$
|
||||
- nova-grenade-live-migration
|
||||
- nova-live-migration
|
||||
- nova-lvm
|
||||
- nova-next
|
||||
|
15
playbooks/legacy/nova-grenade-live-migration/post.yaml
Normal file
15
playbooks/legacy/nova-grenade-live-migration/post.yaml
Normal 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
|
58
playbooks/legacy/nova-grenade-live-migration/run.yaml
Normal file
58
playbooks/legacy/nova-grenade-live-migration/run.yaml
Normal file
@ -0,0 +1,58 @@
|
||||
- hosts: primary
|
||||
name: nova-grenade-live-migration
|
||||
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 PROJECTS="openstack-dev/grenade $PROJECTS"
|
||||
export PYTHONUNBUFFERED=true
|
||||
export DEVSTACK_GATE_CONFIGDRIVE=0
|
||||
export DEVSTACK_GATE_NEUTRON=1
|
||||
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
|
||||
export DEVSTACK_GATE_GRENADE=pullup
|
||||
# By default grenade runs only smoke tests so we need to set
|
||||
# RUN_SMOKE to False in order to run live migration tests using
|
||||
# grenade
|
||||
export DEVSTACK_LOCAL_CONFIG="RUN_SMOKE=False"
|
||||
# LIVE_MIGRATE_BACK_AND_FORTH will tell Tempest to run a live
|
||||
# migration of the same instance to one compute node and then back
|
||||
# to the other, which is mostly only interesting for grenade since
|
||||
# we have mixed level computes.
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"LIVE_MIGRATE_BACK_AND_FORTH=True"
|
||||
export BRANCH_OVERRIDE=default
|
||||
export DEVSTACK_GATE_TOPOLOGY="multinode"
|
||||
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
||||
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
||||
fi
|
||||
function post_test_hook {
|
||||
/opt/stack/new/nova/nova/tests/live_migration/hooks/run_tests.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 }}'
|
Loading…
x
Reference in New Issue
Block a user