
As per discussion on ML[1], we do not have any job which runs only slow tests. This commit provide a separate job which run only slow tests which can be API or scenario tests. Further this job can be used cross projects like nova, cinder, neutron. Why we need separate job for slow tests: - slow tests create gate issues on job timeout which we observed\ during Rocky cycle[2]. Not to effect gate let's start them executing on separate job. Why to convert the tempest-scenario-all job - tempest-scenario-all job was created to run the slow tests along with other scenario tests. But slow tests can be API tests[3] and mixing them with other scenario or API tests is not good idea. - All scenario tests excluding slow tests are run as part of tempest-full job so let's not run scenario tests twice on gate. [1] http://lists.openstack.org/pipermail/openstack-dev/2018-July/132527.html [2] https://bugs.launchpad.net/tempest/+bug/1783405 [3] https://ethercalc.openstack.org/dorupfz6s9qt Change-Id: I5b1d3041c0140bea11705ad287f1472e74aacb5c
425 lines
12 KiB
YAML
425 lines
12 KiB
YAML
- job:
|
|
name: devstack-tempest
|
|
parent: devstack
|
|
nodeset: openstack-single-node
|
|
description: |
|
|
Base Tempest job.
|
|
|
|
This Tempest job provides the base for both the single and multi-node
|
|
test setup. To run a multi-node test inherit from devstack-tempest and
|
|
set the nodeset to a multi-node one.
|
|
required-projects:
|
|
- openstack/tempest
|
|
timeout: 7200
|
|
roles:
|
|
- zuul: openstack-dev/devstack
|
|
vars:
|
|
devstack_services:
|
|
tempest: true
|
|
devstack_local_conf:
|
|
test-config:
|
|
$TEMPEST_CONFIG:
|
|
compute:
|
|
min_compute_nodes: "{{ groups['compute'] | default(['controller']) | length }}"
|
|
test_results_stage_name: 'test_results'
|
|
zuul_copy_output:
|
|
'{{ devstack_base_dir }}/tempest/etc/tempest.conf': 'logs'
|
|
'{{ devstack_base_dir }}/tempest/etc/accounts.yaml': 'logs'
|
|
'{{ devstack_base_dir }}/tempest/tempest.log': 'logs'
|
|
'{{ stage_dir }}/{{ test_results_stage_name }}.subunit': 'logs'
|
|
'{{ stage_dir }}/{{ test_results_stage_name }}.html': 'logs'
|
|
'{{ stage_dir }}/stackviz': 'logs'
|
|
extensions_to_txt:
|
|
conf: True
|
|
log: True
|
|
yaml: True
|
|
yml: True
|
|
run: playbooks/devstack-tempest.yaml
|
|
post-run: playbooks/post-tempest.yaml
|
|
|
|
- job:
|
|
name: tempest-full
|
|
parent: devstack-tempest
|
|
# This currently works from stable/pike on.
|
|
branches:
|
|
- master
|
|
- stable/queens
|
|
- stable/pike
|
|
description: |
|
|
Base integration test with Neutron networking and py27.
|
|
Former names for this job where:
|
|
* legacy-tempest-dsvm-neutron-full
|
|
* gate-tempest-dsvm-neutron-full-ubuntu-xenial
|
|
vars:
|
|
tox_envlist: full
|
|
devstack_localrc:
|
|
ENABLE_FILE_INJECTION: true
|
|
|
|
- job:
|
|
name: tempest-full-parallel
|
|
parent: tempest-full
|
|
voting: false
|
|
branches:
|
|
- master
|
|
description: |
|
|
Base integration test with Neutron networking and py27.
|
|
It includes all scenarios as it was in the past.
|
|
This job runs all scenario tests in parallel!
|
|
vars:
|
|
tox_envlist: full-parallel
|
|
|
|
- job:
|
|
name: tempest-full-py3
|
|
parent: devstack-tempest
|
|
branches:
|
|
- master
|
|
- stable/queens
|
|
description: |
|
|
Base integration test with Neutron networking and py3.
|
|
Former names for this job where:
|
|
* legacy-tempest-dsvm-py35
|
|
* gate-tempest-dsvm-py35
|
|
vars:
|
|
tox_envlist: full
|
|
devstack_localrc:
|
|
USE_PYTHON3: True
|
|
FORCE_CONFIG_DRIVE: True
|
|
devstack_services:
|
|
s-account: false
|
|
s-container: false
|
|
s-object: false
|
|
s-proxy: false
|
|
# without Swift, c-bak cannot run (in the Gate at least)
|
|
c-bak: false
|
|
|
|
- job:
|
|
name: tempest-multinode-full
|
|
parent: devstack-tempest
|
|
nodeset: openstack-two-node
|
|
# Until the devstack changes are backported, only run this on master
|
|
branches:
|
|
- master
|
|
description: |
|
|
Base multinode integration test with Neutron networking and py27.
|
|
Former names for this job were:
|
|
* neutron-tempest-multinode-full
|
|
* legacy-tempest-dsvm-neutron-multinode-full
|
|
* gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv
|
|
This job includes two nodes, controller / tempest plus a subnode, but
|
|
it can be used with different topologies, as long as a controller node
|
|
and a tempest one exist.
|
|
vars:
|
|
tox_envlist: full
|
|
devstack_localrc:
|
|
FORCE_CONFIG_DRIVE: False
|
|
NOVA_ALLOW_MOVE_TO_SAME_HOST: false
|
|
LIVE_MIGRATION_AVAILABLE: true
|
|
USE_BLOCK_MIGRATION_FOR_LIVE_MIGRATION: true
|
|
group-vars:
|
|
peers:
|
|
devstack_localrc:
|
|
NOVA_ALLOW_MOVE_TO_SAME_HOST: false
|
|
LIVE_MIGRATION_AVAILABLE: true
|
|
USE_BLOCK_MIGRATION_FOR_LIVE_MIGRATION: true
|
|
|
|
- nodeset:
|
|
name: openstack-bionic-node
|
|
nodes:
|
|
- name: controller
|
|
label: ubuntu-bionic
|
|
groups:
|
|
- name: tempest
|
|
nodes:
|
|
- controller
|
|
|
|
- job:
|
|
name: tempest-full-py36
|
|
parent: tempest-full-py3
|
|
nodeset: openstack-bionic-node
|
|
branches:
|
|
- master
|
|
description: |
|
|
Base integration test with Neutron networking and py36.
|
|
voting: false
|
|
|
|
- job:
|
|
name: tempest-slow
|
|
parent: tempest-multinode-full
|
|
branches:
|
|
- master
|
|
description: |
|
|
This multinode integration job will run all the tests tagged as slow.
|
|
It enables the lvm multibackend setup to cover few scenario tests.
|
|
This job will run only slow tests(API or Scenario) serially.
|
|
|
|
Former names for this job were:
|
|
* legacy-tempest-dsvm-neutron-scenario-multinode-lvm-multibackend
|
|
* tempest-scenario-multinode-lvm-multibackend
|
|
timeout: 10800
|
|
vars:
|
|
tox_envlist: slow-serial
|
|
devstack_localrc:
|
|
CINDER_ENABLED_BACKENDS: lvm:lvmdriver-1,lvm:lvmdriver-2
|
|
tempest_concurrency: 2
|
|
|
|
- job:
|
|
name: tempest-full-queens
|
|
parent: tempest-full
|
|
override-checkout: stable/queens
|
|
|
|
- job:
|
|
name: tempest-full-queens-py3
|
|
parent: tempest-full-py3
|
|
override-checkout: stable/queens
|
|
|
|
- job:
|
|
name: tempest-full-pike
|
|
parent: tempest-full
|
|
override-checkout: stable/pike
|
|
|
|
- job:
|
|
name: tempest-tox-plugin-sanity-check
|
|
parent: tox
|
|
description: |
|
|
Run tempest plugin sanity check script using tox.
|
|
nodeset: ubuntu-xenial
|
|
vars:
|
|
tox_envlist: plugin-sanity-check
|
|
voting: false
|
|
timeout: 5000
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
required-projects:
|
|
- openstack/almanach
|
|
- openstack/aodh
|
|
- openstack/barbican-tempest-plugin
|
|
- openstack/ceilometer
|
|
- openstack/cinder
|
|
- openstack/congress
|
|
- openstack/designate-tempest-plugin
|
|
- openstack/ec2-api
|
|
- openstack/freezer
|
|
- openstack/freezer-api
|
|
- openstack/freezer-tempest-plugin
|
|
- openstack/gce-api
|
|
- openstack/glare
|
|
- openstack/heat
|
|
- openstack/intel-nfv-ci-tests
|
|
- openstack/ironic
|
|
- openstack/ironic-inspector
|
|
- openstack/keystone-tempest-plugin
|
|
- openstack/kingbird
|
|
- openstack/kuryr-tempest-plugin
|
|
- openstack/magnum
|
|
- openstack/magnum-tempest-plugin
|
|
- openstack/manila
|
|
- openstack/manila-tempest-plugin
|
|
- openstack/mistral
|
|
- openstack/mogan
|
|
- openstack/monasca-api
|
|
- openstack/monasca-log-api
|
|
- openstack/murano
|
|
- openstack/networking-bgpvpn
|
|
- openstack/networking-cisco
|
|
- openstack/networking-fortinet
|
|
- openstack/networking-generic-switch
|
|
- openstack/networking-l2gw
|
|
- openstack/networking-midonet
|
|
- openstack/networking-plumgrid
|
|
- openstack/networking-sfc
|
|
- openstack/neutron
|
|
- openstack/neutron-dynamic-routing
|
|
- openstack/neutron-fwaas
|
|
- openstack/neutron-lbaas
|
|
- openstack/neutron-tempest-plugin
|
|
- openstack/neutron-vpnaas
|
|
- openstack/nova-lxd
|
|
- openstack/novajoin-tempest-plugin
|
|
- openstack/octavia-tempest-plugin
|
|
- openstack/oswin-tempest-plugin
|
|
- openstack/panko
|
|
- openstack/patrole
|
|
- openstack/qinling
|
|
- openstack/requirements
|
|
- openstack/sahara-tests
|
|
- openstack/senlin
|
|
- openstack/senlin-tempest-plugin
|
|
- openstack/tap-as-a-service
|
|
- openstack/tempest-horizon
|
|
- openstack/trio2o
|
|
- openstack/trove
|
|
- openstack/valet
|
|
- openstack/vitrage
|
|
- openstack/vmware-nsx-tempest-plugin
|
|
- openstack/watcher-tempest-plugin
|
|
- openstack/zaqar-tempest-plugin
|
|
- openstack/zun-tempest-plugin
|
|
|
|
- job:
|
|
name: tempest-cinder-v2-api
|
|
parent: devstack-tempest
|
|
branches:
|
|
- master
|
|
description: |
|
|
This job runs the cinder API test against v2 endpoint.
|
|
vars:
|
|
tox_envlist: all
|
|
tempest_test_regex: api.*volume
|
|
devstack_localrc:
|
|
TEMPEST_VOLUME_TYPE: volumev2
|
|
|
|
- project:
|
|
check:
|
|
jobs:
|
|
- devstack-tempest:
|
|
files:
|
|
- ^playbooks/
|
|
- ^roles/
|
|
- ^.zuul.yaml$
|
|
- nova-multiattach:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- tempest-full-parallel:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- tempest-full-py36:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- tempest-full-queens:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- tempest-full-queens-py3:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- tempest-full-pike:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- tempest-multinode-full:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- tempest-tox-plugin-sanity-check
|
|
- tempest-slow:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- nova-cells-v1:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- nova-live-migration:
|
|
voting: false
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
gate:
|
|
jobs:
|
|
- nova-multiattach:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
- tempest-slow:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
experimental:
|
|
jobs:
|
|
- tempest-cinder-v2-api:
|
|
irrelevant-files:
|
|
- ^(test-|)requirements.txt$
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^etc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tempest/hacking/.*$
|
|
- ^tempest/tests/.*$
|
|
periodic-stable:
|
|
jobs:
|
|
- tempest-full-queens
|
|
- tempest-full-queens-py3
|
|
- tempest-full-pike
|