8cb6f07444
We were running the voting neutron-grenade-multinode job in the check queue on nova changes but were not running it in the gate queue. We run the nova-grenade-multinode job in both check and gate queues. The major differences between those jobs are that the neutron job runs the tempest smoke tests during the grenade run on the old and new side of the grenade environment and the nova job would not run smoke tests but ran a select few live migration and resize/cold migration tests via the post-test hook script, and would run those with an lvm/local storage/block migration and ceph/shared storage setup. This change makes the nova-grenade-multinode job run smoke tests like the neutron-grenade-multinode job was so we can drop the neutron-grenade-multinode job from running on nova changes in the check queue and save a few nodes. Note that neutron-grenade-multinode ran all smoke tests but this change makes nova-grenade-multinode run a subset of smoke tests for only the ones that involve compute. This is in order to keep the execution time of the job down by not testing non-compute API things that nova changes don't care about, e.g. keystone, swift, cinder, etc smoke tests. [1] https://zuul.opendev.org/t/openstack/build/377affdf97b04022a321087352e1cc4c/log/logs/grenade.sh.txt.gz#41965 Change-Id: Icac785eec824da5146efe0ea8ecd01383f18398e
66 lines
2.7 KiB
YAML
66 lines
2.7 KiB
YAML
- hosts: primary
|
|
name: nova-grenade-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/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
|
|
export PROJECTS="openstack/grenade $PROJECTS"
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_CONFIGDRIVE=0
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
# NOTE(mriedem): Run tempest smoke tests specific to compute on the
|
|
# new side of the grenade environment. The post-test hook script will
|
|
# run non-smoke migration tests in a local/block and shared/ceph
|
|
# setup. Note that grenade hard-codes "tox -esmoke" for tempest on
|
|
# the old side so the regex is not appied there.
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_TEMPEST_REGEX="tempest\.(api\.compute|scenario)\..*smoke.*"
|
|
export DEVSTACK_GATE_GRENADE=pullup
|
|
export DEVSTACK_GATE_USE_PYTHON3=True
|
|
# 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/gate/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 }}'
|