Merge "Decentralize the zuul jobs into zuul.d"
diff --git a/.zuul.yaml b/.zuul.yaml
deleted file mode 100644
index c20f204..0000000
--- a/.zuul.yaml
+++ /dev/null
@@ -1,778 +0,0 @@
-- job:
- name: devstack-tempest
- parent: devstack
- 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: &base_required-projects
- - opendev.org/openstack/tempest
- timeout: 7200
- roles: &base_roles
- - zuul: opendev.org/openstack/devstack
- vars: &base_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-all
- parent: devstack-tempest
- description: |
- Integration test that runs all tests.
- Former name for this job was:
- * legacy-periodic-tempest-dsvm-all-master
- vars:
- tox_envlist: all
- tempest_test_regex: tempest
- devstack_localrc:
- ENABLE_FILE_INJECTION: true
-
-- job:
- name: devstack-tempest-ipv6
- parent: devstack-ipv6
- description: |
- Base Tempest IPv6 job. This job is derived from 'devstack-ipv6'
- which set the IPv6-only setting for OpenStack services. As part of
- run phase, this job will verify the IPv6 setting and check the services
- endpoints and listen addresses are IPv6. Basically it will run the script
- ./tool/verify-ipv6-only-deployments.sh
-
- Child jobs of this job can run their own set of tests and can
- add post-run playebooks to extend the IPv6 verification specific
- to their deployed services.
- Check the wiki page for more details about project jobs setup
- - https://wiki.openstack.org/wiki/Goal-IPv6-only-deployments-and-testing
- required-projects: *base_required-projects
- timeout: 7200
- roles: *base_roles
- vars: *base_vars
- run: playbooks/devstack-tempest-ipv6.yaml
- post-run: playbooks/post-tempest.yaml
-
-- job:
- name: tempest-ipv6-only
- parent: devstack-tempest-ipv6
- # This currently works from stable/pike on.
- branches: ^(?!stable/ocata).*$
- description: |
- Integration test of IPv6-only deployments. This job runs
- smoke and IPv6 relates tests only. Basic idea is to test
- whether OpenStack Services listen on IPv6 addrress or not.
- timeout: 10800
- vars:
- tox_envlist: ipv6-only
-
-- job:
- name: tempest-full
- parent: devstack-tempest
- # This currently works from stable/pike on.
- # Before stable/pike, legacy version of tempest-full
- # 'legacy-tempest-dsvm-neutron-full' run.
- branches: ^(?!stable/ocata).*$
- description: |
- Base integration test with Neutron networking and py27.
- This job is supposed to run until stable/train setup only.
- If you are running it on stable/ussuri gate onwards for python2.7
- coverage then you need to do override-checkout with any stable
- branch less than or equal to stable/train.
- 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
- ENABLE_VOLUME_MULTIATTACH: true
- USE_PYTHON3: False
- devstack_services:
- # NOTE(mriedem): Disable the cinder-backup service from tempest-full
- # since tempest-full is in the integrated-gate project template but
- # the backup tests do not really involve other services so they should
- # be run in some more cinder-specific job, especially because the
- # tests fail at a high rate (see bugs 1483434, 1813217, 1745168)
- c-bak: false
-
-- job:
- name: tempest-full-oslo-master
- parent: tempest-full-py3
- description: |
- Integration test using current git of oslo libs.
- This ensures that when oslo libs get released that they
- do not break OpenStack server projects.
-
- Former name for this job was
- periodic-tempest-dsvm-oslo-latest-full-master.
- timeout: 10800
- required-projects:
- - opendev.org/openstack/oslo.cache
- - opendev.org/openstack/oslo.concurrency
- - opendev.org/openstack/oslo.config
- - opendev.org/openstack/oslo.context
- - opendev.org/openstack/oslo.db
- - opendev.org/openstack/oslo.i18n
- - opendev.org/openstack/oslo.log
- - opendev.org/openstack/oslo.messaging
- - opendev.org/openstack/oslo.middleware
- - opendev.org/openstack/oslo.policy
- - opendev.org/openstack/oslo.privsep
- - opendev.org/openstack/oslo.reports
- - opendev.org/openstack/oslo.rootwrap
- - opendev.org/openstack/oslo.serialization
- - opendev.org/openstack/oslo.service
- - opendev.org/openstack/oslo.utils
- - opendev.org/openstack/oslo.versionedobjects
- - opendev.org/openstack/oslo.vmware
-
-- job:
- name: tempest-full-parallel
- parent: tempest-full-py3
- voting: false
- branches:
- - master
- description: |
- Base integration test with Neutron networking.
- It includes all scenarios as it was in the past.
- This job runs all scenario tests in parallel!
- timeout: 9000
- vars:
- tox_envlist: full-parallel
- run_tempest_cleanup: true
- run_tempest_dry_cleanup: true
-
-- job:
- name: tempest-full-py3
- parent: devstack-tempest
- # This currently works from stable/pike on.
- # Before stable/pike, legacy version of tempest-full
- # 'legacy-tempest-dsvm-neutron-full' run.
- branches: ^(?!stable/ocata).*$
- 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
- ENABLE_VOLUME_MULTIATTACH: true
- GLANCE_USE_IMPORT_WORKFLOW: 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)
- # NOTE(mriedem): Disable the cinder-backup service from
- # tempest-full-py3 since tempest-full-py3 is in the integrated-gate-py3
- # project template but the backup tests do not really involve other
- # services so they should be run in some more cinder-specific job,
- # especially because the tests fail at a high rate (see bugs 1483434,
- # 1813217, 1745168)
- c-bak: false
-
-- job:
- name: tempest-integrated-networking
- parent: devstack-tempest
- branches: ^(?!stable/ocata).*$
- description: |
- This job runs integration tests for networking. This is subset of
- 'tempest-full-py3' job and run only Neutron and Nova related tests.
- This is meant to be run on neutron gate only.
- vars:
- tox_envlist: integrated-network
- devstack_localrc:
- USE_PYTHON3: true
- FORCE_CONFIG_DRIVE: true
- devstack_services:
- s-account: false
- s-container: false
- s-object: false
- s-proxy: false
- c-bak: false
-
-- job:
- name: tempest-integrated-compute
- parent: devstack-tempest
- branches: ^(?!stable/ocata).*$
- description: |
- This job runs integration tests for compute. This is
- subset of 'tempest-full-py3' job and run Nova, Neutron, Cinder (except backup tests)
- and Glance related tests. This is meant to be run on Nova gate only.
- vars:
- tox_envlist: integrated-compute
- tempest_black_regex: ""
- devstack_localrc:
- USE_PYTHON3: true
- FORCE_CONFIG_DRIVE: true
- ENABLE_VOLUME_MULTIATTACH: true
- devstack_services:
- s-account: false
- s-container: false
- s-object: false
- s-proxy: false
- c-bak: false
-
-- job:
- name: tempest-integrated-placement
- parent: devstack-tempest
- branches: ^(?!stable/ocata).*$
- description: |
- This job runs integration tests for placement. This is
- subset of 'tempest-full-py3' job and run Nova and Neutron
- related tests. This is meant to be run on Placement gate only.
- vars:
- tox_envlist: integrated-placement
- devstack_localrc:
- USE_PYTHON3: true
- FORCE_CONFIG_DRIVE: true
- ENABLE_VOLUME_MULTIATTACH: true
- devstack_services:
- s-account: false
- s-container: false
- s-object: false
- s-proxy: false
- c-bak: false
-
-- job:
- name: tempest-integrated-storage
- parent: devstack-tempest
- branches: ^(?!stable/ocata).*$
- description: |
- This job runs integration tests for image & block storage. This is
- subset of 'tempest-full-py3' job and run Cinder, Glance, Swift and Nova
- related tests. This is meant to be run on Cinder and Glance gate only.
- vars:
- tox_envlist: integrated-storage
- devstack_localrc:
- USE_PYTHON3: true
- FORCE_CONFIG_DRIVE: true
- ENABLE_VOLUME_MULTIATTACH: true
- GLANCE_USE_IMPORT_WORKFLOW: True
-
-- job:
- name: tempest-integrated-object-storage
- parent: devstack-tempest
- branches: ^(?!stable/ocata).*$
- description: |
- This job runs integration tests for object storage. This is
- subset of 'tempest-full-py3' job and run Swift, Cinder and Glance
- related tests. This is meant to be run on Swift gate only.
- vars:
- tox_envlist: integrated-object-storage
- devstack_localrc:
- # NOTE(gmann): swift is not ready on python3 yet and devstack
- # install it on python2.7 only. But settting the USE_PYTHON3
- # for future once swift is ready on py3.
- USE_PYTHON3: true
-
-- job:
- name: tempest-full-py3-ipv6
- parent: devstack-tempest-ipv6
- branches: ^(?!stable/ocata).*$
- description: |
- Base integration test with Neutron networking, IPv6 and py3.
- 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-base
- parent: devstack-tempest
- 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.
- timeout: 10800
- 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
-
-- job:
- name: tempest-multinode-full
- parent: tempest-multinode-full-base
- nodeset: openstack-two-node-focal
- # This job runs on Focal from stable/victoria on.
- branches: ^(?!stable/(ocata|pike|queens|rocky|stein|train|ussuri)).*$
- vars:
- devstack_localrc:
- USE_PYTHON3: False
- group-vars:
- subnode:
- devstack_localrc:
- USE_PYTHON3: False
-
-- job:
- name: tempest-multinode-full
- parent: tempest-multinode-full-base
- nodeset: openstack-two-node-bionic
- # This job runs on Bionic and on python2. This is for stable/stein and stable/train.
- # This job is prepared to make sure all stable branches from stable/stein till stable/train
- # will keep running on bionic. This can be removed once stable/train is EOL.
- branches:
- - stable/stein
- - stable/train
- - stable/ussuri
- vars:
- devstack_localrc:
- USE_PYTHON3: False
- group-vars:
- subnode:
- devstack_localrc:
- USE_PYTHON3: False
-
-- job:
- name: tempest-multinode-full
- parent: tempest-multinode-full-base
- nodeset: openstack-two-node-xenial
- # This job runs on Xenial and this is for stable/pike, stable/queens
- # and stable/rocky. This job is prepared to make sure all stable branches
- # before stable/stein will keep running on xenial. This job can be
- # removed once stable/rocky is EOL.
- branches:
- - stable/pike
- - stable/queens
- - stable/rocky
- vars:
- devstack_localrc:
- USE_PYTHON3: False
- group-vars:
- subnode:
- devstack_localrc:
- USE_PYTHON3: False
-
-- job:
- name: tempest-multinode-full-py3
- parent: tempest-multinode-full
- vars:
- devstack_localrc:
- USE_PYTHON3: true
- group-vars:
- subnode:
- devstack_localrc:
- USE_PYTHON3: true
-
-- job:
- name: tempest-full-py3-opensuse15
- parent: tempest-full-py3
- nodeset: devstack-single-node-opensuse-15
- description: |
- Base integration test with Neutron networking and py36 running
- on openSUSE Leap 15.x
- voting: false
-
-- job:
- name: tempest-slow
- parent: tempest-multinode-full
- 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
- ENABLE_VOLUME_MULTIATTACH: true
- devstack_plugins:
- neutron: https://opendev.org/openstack/neutron
- devstack_services:
- neutron-placement: true
- neutron-qos: true
- devstack_local_conf:
- post-config:
- "/$NEUTRON_CORE_PLUGIN_CONF":
- ovs:
- bridge_mappings: public:br-ex
- resource_provider_bandwidths: br-ex:1000000:1000000
- test-config:
- $TEMPEST_CONFIG:
- network-feature-enabled:
- qos_placement_physnet: public
- tempest_concurrency: 2
- group-vars:
- # NOTE(mriedem): The ENABLE_VOLUME_MULTIATTACH variable is used on both
- # the controller and subnode prior to Rocky so we have to make sure the
- # variable is set in both locations.
- subnode:
- devstack_localrc:
- ENABLE_VOLUME_MULTIATTACH: true
-
-- job:
- name: tempest-slow-py3
- parent: tempest-slow
- vars:
- devstack_localrc:
- USE_PYTHON3: 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
- group-vars:
- subnode:
- devstack_localrc:
- USE_PYTHON3: true
-
-- job:
- name: tempest-full-victoria-py3
- parent: tempest-full-py3
- override-checkout: stable/victoria
-
-- job:
- name: tempest-full-ussuri-py3
- parent: tempest-full-py3
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
-
-- job:
- name: tempest-full-train-py3
- parent: tempest-full-py3
- nodeset: openstack-single-node-bionic
- override-checkout: stable/train
-
-- job:
- name: tempest-full-stein-py3
- parent: tempest-full-py3
- nodeset: openstack-single-node-bionic
- override-checkout: stable/stein
-
-- job:
- name: tempest-tox-plugin-sanity-check
- parent: tox
- description: |
- Run tempest plugin sanity check script using tox.
- nodeset: ubuntu-focal
- vars:
- tox_envlist: plugin-sanity-check
- timeout: 5000
-
-- 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
-
-- job:
- name: tempest-full-test-account-py3
- parent: tempest-full-py3
- description: |
- This job runs the full set of tempest tests using pre-provisioned
- credentials instead of dynamic credentials and py3.
- Former names for this job were:
- - legacy-tempest-dsvm-full-test-accounts
- - legacy-tempest-dsvm-neutron-full-test-accounts
- - legacy-tempest-dsvm-identity-v3-test-accounts
- vars:
- devstack_localrc:
- TEMPEST_USE_TEST_ACCOUNTS: True
-
-- job:
- name: tempest-full-test-account-no-admin-py3
- parent: tempest-full-test-account-py3
- description: |
- This job runs the full set of tempest tests using pre-provisioned
- credentials and py3 without having an admin account.
- Former name for this job was:
- - legacy-tempest-dsvm-neutron-full-non-admin
-
- vars:
- devstack_localrc:
- TEMPEST_HAS_ADMIN: False
-
-- job:
- name: tempest-pg-full
- parent: tempest-full-py3
- description: |
- Base integration test with Neutron networking and PostgreSQL.
- Former name for this job was legacy-tempest-dsvm-neutron-pg-full.
- vars:
- devstack_localrc:
- ENABLE_FILE_INJECTION: true
- DATABASE_TYPE: postgresql
-
-- project-template:
- name: integrated-gate-networking
- description: |
- Run the python3 Tempest network integration tests (Nova and Neutron related)
- in check and gate for the neutron integrated gate. This is meant to be
- run on neutron gate only.
- check:
- jobs:
- - grenade
- - tempest-integrated-networking
- gate:
- jobs:
- - grenade
- - tempest-integrated-networking
-
-- project-template:
- name: integrated-gate-compute
- description: |
- Run the python3 Tempest compute integration tests
- (Nova, Neutron, Cinder and Glance related) in check and gate
- for the Nova integrated gate. This is meant to be
- run on Nova gate only.
- check:
- jobs:
- - grenade
- - tempest-integrated-compute
- gate:
- jobs:
- - grenade
- - tempest-integrated-compute
-
-- project-template:
- name: integrated-gate-placement
- description: |
- Run the python3 Tempest placement integration tests
- (Nova and Neutron related) in check and gate
- for the Placement integrated gate. This is meant to be
- run on Placement gate only.
- check:
- jobs:
- - grenade
- - tempest-integrated-placement
- gate:
- jobs:
- - grenade
- - tempest-integrated-placement
-
-- project-template:
- name: integrated-gate-storage
- description: |
- Run the python3 Tempest image & block storage integration tests
- (Cinder, Glance, Swift and Nova related) in check and gate
- for the neutron integrated gate. This is meant to be
- run on Cinder and Glance gate only.
- check:
- jobs:
- - grenade
- - tempest-integrated-storage
- gate:
- jobs:
- - grenade
- - tempest-integrated-storage
-
-- project-template:
- name: integrated-gate-object-storage
- description: |
- Run the python3 Tempest object storage integration tests
- (Swift, Cinder and Glance related) in check and gate
- for the swift integrated gate. This is meant to be
- run on swift gate only.
- check:
- jobs:
- - grenade
- - tempest-integrated-object-storage
- gate:
- jobs:
- - grenade
- - tempest-integrated-object-storage
-
-- project:
- templates:
- - check-requirements
- - integrated-gate-py3
- - openstack-cover-jobs
- - openstack-python3-victoria-jobs
- - publish-openstack-docs-pti
- - release-notes-jobs-python3
- check:
- jobs:
- - devstack-tempest:
- files:
- - ^playbooks/
- - ^roles/
- - ^.zuul.yaml$
- - devstack-tempest-ipv6:
- voting: false
- files:
- - ^playbooks/
- - ^roles/
- - ^.zuul.yaml$
- - tempest-full-parallel:
- # Define list of irrelevant files to use everywhere else
- irrelevant-files: &tempest-irrelevant-files
- - ^.*\.rst$
- - ^doc/.*$
- - ^etc/.*$
- - ^releasenotes/.*$
- - ^setup.cfg$
- - ^tempest/hacking/.*$
- - ^tempest/tests/.*$
- - ^tools/.*$
- - ^.coveragerc$
- - ^.gitignore$
- - ^.gitreview$
- - ^.mailmap$
- - tempest-full-py3:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-py3-ipv6:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - glance-multistore-cinder-import:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-victoria-py3:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-ussuri-py3:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-train-py3:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-stein-py3:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-multinode-full-py3:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-tox-plugin-sanity-check:
- irrelevant-files: &tempest-irrelevant-files-2
- - ^.*\.rst$
- - ^doc/.*$
- - ^etc/.*$
- - ^releasenotes/.*$
- - ^setup.cfg$
- - ^tempest/hacking/.*$
- - ^tempest/tests/.*$
- - ^.coveragerc$
- - ^.gitignore$
- - ^.gitreview$
- - ^.mailmap$
- # tools/ is not here since this relies on a script in tools/.
- - tempest-ipv6-only:
- irrelevant-files: *tempest-irrelevant-files-2
- - tempest-slow-py3:
- irrelevant-files: *tempest-irrelevant-files
- - nova-live-migration:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - devstack-plugin-ceph-tempest-py3:
- irrelevant-files: *tempest-irrelevant-files
- - neutron-grenade-multinode:
- irrelevant-files: *tempest-irrelevant-files
- - grenade:
- irrelevant-files: *tempest-irrelevant-files
- - puppet-openstack-integration-4-scenario001-tempest-centos-7:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - puppet-openstack-integration-4-scenario002-tempest-centos-7:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - puppet-openstack-integration-4-scenario003-tempest-centos-7:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - puppet-openstack-integration-4-scenario004-tempest-centos-7:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - neutron-tempest-dvr:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - interop-tempest-consistency:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-test-account-py3:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-test-account-no-admin-py3:
- voting: false
- irrelevant-files: *tempest-irrelevant-files
- - openstack-tox-bashate:
- irrelevant-files: *tempest-irrelevant-files-2
- gate:
- jobs:
- - tempest-slow-py3:
- irrelevant-files: *tempest-irrelevant-files
- - neutron-grenade-multinode:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-py3:
- irrelevant-files: *tempest-irrelevant-files
- - grenade:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-ipv6-only:
- irrelevant-files: *tempest-irrelevant-files-2
- - devstack-plugin-ceph-tempest-py3:
- irrelevant-files: *tempest-irrelevant-files
- experimental:
- jobs:
- - tempest-cinder-v2-api:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-all:
- irrelevant-files: *tempest-irrelevant-files
- - neutron-tempest-dvr-ha-multinode-full:
- irrelevant-files: *tempest-irrelevant-files
- - nova-tempest-v2-api:
- irrelevant-files: *tempest-irrelevant-files
- - cinder-tempest-lvm-multibackend:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-pg-full:
- irrelevant-files: *tempest-irrelevant-files
- - tempest-full-py3-opensuse15:
- irrelevant-files: *tempest-irrelevant-files
- periodic-stable:
- jobs:
- - tempest-full-victoria-py3
- - tempest-full-ussuri-py3
- - tempest-full-train-py3
- - tempest-full-stein-py3
- periodic:
- jobs:
- - tempest-all
- - tempest-full-oslo-master
diff --git a/zuul.d/base.yaml b/zuul.d/base.yaml
new file mode 100644
index 0000000..3deb944
--- /dev/null
+++ b/zuul.d/base.yaml
@@ -0,0 +1,86 @@
+- job:
+ name: devstack-tempest
+ parent: devstack
+ 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: &base_required-projects
+ - opendev.org/openstack/tempest
+ timeout: 7200
+ roles: &base_roles
+ - zuul: opendev.org/openstack/devstack
+ vars: &base_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: devstack-tempest-ipv6
+ parent: devstack-ipv6
+ description: |
+ Base Tempest IPv6 job. This job is derived from 'devstack-ipv6'
+ which set the IPv6-only setting for OpenStack services. As part of
+ run phase, this job will verify the IPv6 setting and check the services
+ endpoints and listen addresses are IPv6. Basically it will run the script
+ ./tool/verify-ipv6-only-deployments.sh
+
+ Child jobs of this job can run their own set of tests and can
+ add post-run playebooks to extend the IPv6 verification specific
+ to their deployed services.
+ Check the wiki page for more details about project jobs setup
+ - https://wiki.openstack.org/wiki/Goal-IPv6-only-deployments-and-testing
+ required-projects: *base_required-projects
+ timeout: 7200
+ roles: *base_roles
+ vars: *base_vars
+ run: playbooks/devstack-tempest-ipv6.yaml
+ post-run: playbooks/post-tempest.yaml
+
+- job:
+ name: tempest-multinode-full-base
+ parent: devstack-tempest
+ 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.
+ timeout: 10800
+ 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
diff --git a/zuul.d/integrated-gate.yaml b/zuul.d/integrated-gate.yaml
new file mode 100644
index 0000000..1a1d523
--- /dev/null
+++ b/zuul.d/integrated-gate.yaml
@@ -0,0 +1,412 @@
+# NOTE(gmann): This file includes all integrated jobs definition which
+# are supposed to be run by Tempest and other projects as
+# integrated testing.
+- job:
+ name: tempest-all
+ parent: devstack-tempest
+ description: |
+ Integration test that runs all tests.
+ Former name for this job was:
+ * legacy-periodic-tempest-dsvm-all-master
+ vars:
+ tox_envlist: all
+ tempest_test_regex: tempest
+ devstack_localrc:
+ ENABLE_FILE_INJECTION: true
+
+- job:
+ name: tempest-ipv6-only
+ parent: devstack-tempest-ipv6
+ # This currently works from stable/pike on.
+ branches: ^(?!stable/ocata).*$
+ description: |
+ Integration test of IPv6-only deployments. This job runs
+ smoke and IPv6 relates tests only. Basic idea is to test
+ whether OpenStack Services listen on IPv6 addrress or not.
+ timeout: 10800
+ vars:
+ tox_envlist: ipv6-only
+
+- job:
+ name: tempest-full
+ parent: devstack-tempest
+ # This currently works from stable/pike on.
+ # Before stable/pike, legacy version of tempest-full
+ # 'legacy-tempest-dsvm-neutron-full' run.
+ branches: ^(?!stable/ocata).*$
+ description: |
+ Base integration test with Neutron networking and py27.
+ This job is supposed to run until stable/train setup only.
+ If you are running it on stable/ussuri gate onwards for python2.7
+ coverage then you need to do override-checkout with any stable
+ branch less than or equal to stable/train.
+ 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
+ ENABLE_VOLUME_MULTIATTACH: true
+ USE_PYTHON3: False
+ devstack_services:
+ # NOTE(mriedem): Disable the cinder-backup service from tempest-full
+ # since tempest-full is in the integrated-gate project template but
+ # the backup tests do not really involve other services so they should
+ # be run in some more cinder-specific job, especially because the
+ # tests fail at a high rate (see bugs 1483434, 1813217, 1745168)
+ c-bak: false
+
+- job:
+ name: tempest-full-py3
+ parent: devstack-tempest
+ # This currently works from stable/pike on.
+ # Before stable/pike, legacy version of tempest-full
+ # 'legacy-tempest-dsvm-neutron-full' run.
+ branches: ^(?!stable/ocata).*$
+ 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
+ ENABLE_VOLUME_MULTIATTACH: true
+ GLANCE_USE_IMPORT_WORKFLOW: 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)
+ # NOTE(mriedem): Disable the cinder-backup service from
+ # tempest-full-py3 since tempest-full-py3 is in the integrated-gate-py3
+ # project template but the backup tests do not really involve other
+ # services so they should be run in some more cinder-specific job,
+ # especially because the tests fail at a high rate (see bugs 1483434,
+ # 1813217, 1745168)
+ c-bak: false
+
+- job:
+ name: tempest-integrated-networking
+ parent: devstack-tempest
+ branches: ^(?!stable/ocata).*$
+ description: |
+ This job runs integration tests for networking. This is subset of
+ 'tempest-full-py3' job and run only Neutron and Nova related tests.
+ This is meant to be run on neutron gate only.
+ vars:
+ tox_envlist: integrated-network
+ devstack_localrc:
+ USE_PYTHON3: true
+ FORCE_CONFIG_DRIVE: true
+ devstack_services:
+ s-account: false
+ s-container: false
+ s-object: false
+ s-proxy: false
+ c-bak: false
+
+- job:
+ name: tempest-integrated-compute
+ parent: devstack-tempest
+ branches: ^(?!stable/ocata).*$
+ description: |
+ This job runs integration tests for compute. This is
+ subset of 'tempest-full-py3' job and run Nova, Neutron, Cinder (except backup tests)
+ and Glance related tests. This is meant to be run on Nova gate only.
+ vars:
+ tox_envlist: integrated-compute
+ tempest_black_regex: ""
+ devstack_localrc:
+ USE_PYTHON3: true
+ FORCE_CONFIG_DRIVE: true
+ ENABLE_VOLUME_MULTIATTACH: true
+ devstack_services:
+ s-account: false
+ s-container: false
+ s-object: false
+ s-proxy: false
+ c-bak: false
+
+- job:
+ name: tempest-integrated-placement
+ parent: devstack-tempest
+ branches: ^(?!stable/ocata).*$
+ description: |
+ This job runs integration tests for placement. This is
+ subset of 'tempest-full-py3' job and run Nova and Neutron
+ related tests. This is meant to be run on Placement gate only.
+ vars:
+ tox_envlist: integrated-placement
+ devstack_localrc:
+ USE_PYTHON3: true
+ FORCE_CONFIG_DRIVE: true
+ ENABLE_VOLUME_MULTIATTACH: true
+ devstack_services:
+ s-account: false
+ s-container: false
+ s-object: false
+ s-proxy: false
+ c-bak: false
+
+- job:
+ name: tempest-integrated-storage
+ parent: devstack-tempest
+ branches: ^(?!stable/ocata).*$
+ description: |
+ This job runs integration tests for image & block storage. This is
+ subset of 'tempest-full-py3' job and run Cinder, Glance, Swift and Nova
+ related tests. This is meant to be run on Cinder and Glance gate only.
+ vars:
+ tox_envlist: integrated-storage
+ devstack_localrc:
+ USE_PYTHON3: true
+ FORCE_CONFIG_DRIVE: true
+ ENABLE_VOLUME_MULTIATTACH: true
+ GLANCE_USE_IMPORT_WORKFLOW: True
+
+- job:
+ name: tempest-integrated-object-storage
+ parent: devstack-tempest
+ branches: ^(?!stable/ocata).*$
+ description: |
+ This job runs integration tests for object storage. This is
+ subset of 'tempest-full-py3' job and run Swift, Cinder and Glance
+ related tests. This is meant to be run on Swift gate only.
+ vars:
+ tox_envlist: integrated-object-storage
+ devstack_localrc:
+ # NOTE(gmann): swift is not ready on python3 yet and devstack
+ # install it on python2.7 only. But settting the USE_PYTHON3
+ # for future once swift is ready on py3.
+ USE_PYTHON3: true
+
+- job:
+ name: tempest-multinode-full
+ parent: tempest-multinode-full-base
+ nodeset: openstack-two-node-focal
+ # This job runs on Focal from stable/victoria on.
+ branches: ^(?!stable/(ocata|pike|queens|rocky|stein|train|ussuri)).*$
+ vars:
+ devstack_localrc:
+ USE_PYTHON3: False
+ group-vars:
+ subnode:
+ devstack_localrc:
+ USE_PYTHON3: False
+
+- job:
+ name: tempest-multinode-full
+ parent: tempest-multinode-full-base
+ nodeset: openstack-two-node-bionic
+ # This job runs on Bionic and on python2. This is for stable/stein and stable/train.
+ # This job is prepared to make sure all stable branches from stable/stein till stable/train
+ # will keep running on bionic. This can be removed once stable/train is EOL.
+ branches:
+ - stable/stein
+ - stable/train
+ - stable/ussuri
+ vars:
+ devstack_localrc:
+ USE_PYTHON3: False
+ group-vars:
+ subnode:
+ devstack_localrc:
+ USE_PYTHON3: False
+
+- job:
+ name: tempest-multinode-full
+ parent: tempest-multinode-full-base
+ nodeset: openstack-two-node-xenial
+ # This job runs on Xenial and this is for stable/pike, stable/queens
+ # and stable/rocky. This job is prepared to make sure all stable branches
+ # before stable/stein will keep running on xenial. This job can be
+ # removed once stable/rocky is EOL.
+ branches:
+ - stable/pike
+ - stable/queens
+ - stable/rocky
+ vars:
+ devstack_localrc:
+ USE_PYTHON3: False
+ group-vars:
+ subnode:
+ devstack_localrc:
+ USE_PYTHON3: False
+
+- job:
+ name: tempest-multinode-full-py3
+ parent: tempest-multinode-full
+ vars:
+ devstack_localrc:
+ USE_PYTHON3: true
+ group-vars:
+ subnode:
+ devstack_localrc:
+ USE_PYTHON3: true
+
+- job:
+ name: tempest-slow
+ parent: tempest-multinode-full
+ 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
+ ENABLE_VOLUME_MULTIATTACH: true
+ devstack_plugins:
+ neutron: https://opendev.org/openstack/neutron
+ devstack_services:
+ neutron-placement: true
+ neutron-qos: true
+ devstack_local_conf:
+ post-config:
+ "/$NEUTRON_CORE_PLUGIN_CONF":
+ ovs:
+ bridge_mappings: public:br-ex
+ resource_provider_bandwidths: br-ex:1000000:1000000
+ test-config:
+ $TEMPEST_CONFIG:
+ network-feature-enabled:
+ qos_placement_physnet: public
+ tempest_concurrency: 2
+ group-vars:
+ # NOTE(mriedem): The ENABLE_VOLUME_MULTIATTACH variable is used on both
+ # the controller and subnode prior to Rocky so we have to make sure the
+ # variable is set in both locations.
+ subnode:
+ devstack_localrc:
+ ENABLE_VOLUME_MULTIATTACH: true
+
+- job:
+ name: tempest-slow-py3
+ parent: tempest-slow
+ vars:
+ devstack_localrc:
+ USE_PYTHON3: 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
+ group-vars:
+ subnode:
+ devstack_localrc:
+ USE_PYTHON3: true
+
+- 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
+
+- job:
+ name: tempest-pg-full
+ parent: tempest-full-py3
+ description: |
+ Base integration test with Neutron networking and PostgreSQL.
+ Former name for this job was legacy-tempest-dsvm-neutron-pg-full.
+ vars:
+ devstack_localrc:
+ ENABLE_FILE_INJECTION: true
+ DATABASE_TYPE: postgresql
+
+- project-template:
+ name: integrated-gate-networking
+ description: |
+ Run the python3 Tempest network integration tests (Nova and Neutron related)
+ in check and gate for the neutron integrated gate. This is meant to be
+ run on neutron gate only.
+ check:
+ jobs:
+ - grenade
+ - tempest-integrated-networking
+ gate:
+ jobs:
+ - grenade
+ - tempest-integrated-networking
+
+- project-template:
+ name: integrated-gate-compute
+ description: |
+ Run the python3 Tempest compute integration tests
+ (Nova, Neutron, Cinder and Glance related) in check and gate
+ for the Nova integrated gate. This is meant to be
+ run on Nova gate only.
+ check:
+ jobs:
+ - grenade
+ - tempest-integrated-compute
+ gate:
+ jobs:
+ - grenade
+ - tempest-integrated-compute
+
+- project-template:
+ name: integrated-gate-placement
+ description: |
+ Run the python3 Tempest placement integration tests
+ (Nova and Neutron related) in check and gate
+ for the Placement integrated gate. This is meant to be
+ run on Placement gate only.
+ check:
+ jobs:
+ - grenade
+ - tempest-integrated-placement
+ gate:
+ jobs:
+ - grenade
+ - tempest-integrated-placement
+
+- project-template:
+ name: integrated-gate-storage
+ description: |
+ Run the python3 Tempest image & block storage integration tests
+ (Cinder, Glance, Swift and Nova related) in check and gate
+ for the neutron integrated gate. This is meant to be
+ run on Cinder and Glance gate only.
+ check:
+ jobs:
+ - grenade
+ - tempest-integrated-storage
+ gate:
+ jobs:
+ - grenade
+ - tempest-integrated-storage
+
+- project-template:
+ name: integrated-gate-object-storage
+ description: |
+ Run the python3 Tempest object storage integration tests
+ (Swift, Cinder and Glance related) in check and gate
+ for the swift integrated gate. This is meant to be
+ run on swift gate only.
+ check:
+ jobs:
+ - grenade
+ - tempest-integrated-object-storage
+ gate:
+ jobs:
+ - grenade
+ - tempest-integrated-object-storage
diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml
new file mode 100644
index 0000000..f2522af
--- /dev/null
+++ b/zuul.d/project.yaml
@@ -0,0 +1,146 @@
+- project:
+ templates:
+ - check-requirements
+ - integrated-gate-py3
+ - openstack-cover-jobs
+ - openstack-python3-victoria-jobs
+ - publish-openstack-docs-pti
+ - release-notes-jobs-python3
+ check:
+ jobs:
+ - devstack-tempest:
+ files:
+ - ^playbooks/
+ - ^roles/
+ - ^.zuul.yaml$
+ - devstack-tempest-ipv6:
+ voting: false
+ files:
+ - ^playbooks/
+ - ^roles/
+ - ^.zuul.yaml$
+ - tempest-full-parallel:
+ # Define list of irrelevant files to use everywhere else
+ irrelevant-files: &tempest-irrelevant-files
+ - ^.*\.rst$
+ - ^doc/.*$
+ - ^etc/.*$
+ - ^releasenotes/.*$
+ - ^setup.cfg$
+ - ^tempest/hacking/.*$
+ - ^tempest/tests/.*$
+ - ^tools/.*$
+ - ^.coveragerc$
+ - ^.gitignore$
+ - ^.gitreview$
+ - ^.mailmap$
+ - tempest-full-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-py3-ipv6:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - glance-multistore-cinder-import:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-victoria-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-ussuri-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-train-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-stein-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-multinode-full-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-tox-plugin-sanity-check:
+ irrelevant-files: &tempest-irrelevant-files-2
+ - ^.*\.rst$
+ - ^doc/.*$
+ - ^etc/.*$
+ - ^releasenotes/.*$
+ - ^setup.cfg$
+ - ^tempest/hacking/.*$
+ - ^tempest/tests/.*$
+ - ^.coveragerc$
+ - ^.gitignore$
+ - ^.gitreview$
+ - ^.mailmap$
+ # tools/ is not here since this relies on a script in tools/.
+ - tempest-ipv6-only:
+ irrelevant-files: *tempest-irrelevant-files-2
+ - tempest-slow-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - nova-live-migration:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - devstack-plugin-ceph-tempest-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - neutron-grenade-multinode:
+ irrelevant-files: *tempest-irrelevant-files
+ - grenade:
+ irrelevant-files: *tempest-irrelevant-files
+ - puppet-openstack-integration-4-scenario001-tempest-centos-7:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - puppet-openstack-integration-4-scenario002-tempest-centos-7:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - puppet-openstack-integration-4-scenario003-tempest-centos-7:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - puppet-openstack-integration-4-scenario004-tempest-centos-7:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - neutron-tempest-dvr:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - interop-tempest-consistency:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-test-account-py3:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-test-account-no-admin-py3:
+ voting: false
+ irrelevant-files: *tempest-irrelevant-files
+ - openstack-tox-bashate:
+ irrelevant-files: *tempest-irrelevant-files-2
+ gate:
+ jobs:
+ - tempest-slow-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - neutron-grenade-multinode:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ - grenade:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-ipv6-only:
+ irrelevant-files: *tempest-irrelevant-files-2
+ - devstack-plugin-ceph-tempest-py3:
+ irrelevant-files: *tempest-irrelevant-files
+ experimental:
+ jobs:
+ - tempest-cinder-v2-api:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-all:
+ irrelevant-files: *tempest-irrelevant-files
+ - neutron-tempest-dvr-ha-multinode-full:
+ irrelevant-files: *tempest-irrelevant-files
+ - nova-tempest-v2-api:
+ irrelevant-files: *tempest-irrelevant-files
+ - cinder-tempest-lvm-multibackend:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-pg-full:
+ irrelevant-files: *tempest-irrelevant-files
+ - tempest-full-py3-opensuse15:
+ irrelevant-files: *tempest-irrelevant-files
+ periodic-stable:
+ jobs:
+ - tempest-full-victoria-py3
+ - tempest-full-ussuri-py3
+ - tempest-full-train-py3
+ - tempest-full-stein-py3
+ periodic:
+ jobs:
+ - tempest-all
+ - tempest-full-oslo-master
diff --git a/zuul.d/stable-jobs.yaml b/zuul.d/stable-jobs.yaml
new file mode 100644
index 0000000..832a0d5
--- /dev/null
+++ b/zuul.d/stable-jobs.yaml
@@ -0,0 +1,23 @@
+# NOTE(gmann): This file includes all stable release jobs definition.
+- job:
+ name: tempest-full-victoria-py3
+ parent: tempest-full-py3
+ override-checkout: stable/victoria
+
+- job:
+ name: tempest-full-ussuri-py3
+ parent: tempest-full-py3
+ nodeset: openstack-single-node-bionic
+ override-checkout: stable/ussuri
+
+- job:
+ name: tempest-full-train-py3
+ parent: tempest-full-py3
+ nodeset: openstack-single-node-bionic
+ override-checkout: stable/train
+
+- job:
+ name: tempest-full-stein-py3
+ parent: tempest-full-py3
+ nodeset: openstack-single-node-bionic
+ override-checkout: stable/stein
diff --git a/zuul.d/tempest-specific.yaml b/zuul.d/tempest-specific.yaml
new file mode 100644
index 0000000..387a94b
--- /dev/null
+++ b/zuul.d/tempest-specific.yaml
@@ -0,0 +1,113 @@
+# NOTE(gmann): This file includes all tempest specific jobs definition which
+# are supposed to be run by Tempest gate only.
+- job:
+ name: tempest-full-oslo-master
+ parent: tempest-full-py3
+ description: |
+ Integration test using current git of oslo libs.
+ This ensures that when oslo libs get released that they
+ do not break OpenStack server projects.
+
+ Former name for this job was
+ periodic-tempest-dsvm-oslo-latest-full-master.
+ timeout: 10800
+ required-projects:
+ - opendev.org/openstack/oslo.cache
+ - opendev.org/openstack/oslo.concurrency
+ - opendev.org/openstack/oslo.config
+ - opendev.org/openstack/oslo.context
+ - opendev.org/openstack/oslo.db
+ - opendev.org/openstack/oslo.i18n
+ - opendev.org/openstack/oslo.log
+ - opendev.org/openstack/oslo.messaging
+ - opendev.org/openstack/oslo.middleware
+ - opendev.org/openstack/oslo.policy
+ - opendev.org/openstack/oslo.privsep
+ - opendev.org/openstack/oslo.reports
+ - opendev.org/openstack/oslo.rootwrap
+ - opendev.org/openstack/oslo.serialization
+ - opendev.org/openstack/oslo.service
+ - opendev.org/openstack/oslo.utils
+ - opendev.org/openstack/oslo.versionedobjects
+ - opendev.org/openstack/oslo.vmware
+
+- job:
+ name: tempest-full-parallel
+ parent: tempest-full-py3
+ voting: false
+ branches:
+ - master
+ description: |
+ Base integration test with Neutron networking.
+ It includes all scenarios as it was in the past.
+ This job runs all scenario tests in parallel!
+ timeout: 9000
+ vars:
+ tox_envlist: full-parallel
+ run_tempest_cleanup: true
+ run_tempest_dry_cleanup: true
+
+- job:
+ name: tempest-full-py3-ipv6
+ parent: devstack-tempest-ipv6
+ branches: ^(?!stable/ocata).*$
+ description: |
+ Base integration test with Neutron networking, IPv6 and py3.
+ 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-full-py3-opensuse15
+ parent: tempest-full-py3
+ nodeset: devstack-single-node-opensuse-15
+ description: |
+ Base integration test with Neutron networking and py36 running
+ on openSUSE Leap 15.x
+ voting: false
+
+- job:
+ name: tempest-tox-plugin-sanity-check
+ parent: tox
+ description: |
+ Run tempest plugin sanity check script using tox.
+ nodeset: ubuntu-focal
+ vars:
+ tox_envlist: plugin-sanity-check
+ timeout: 5000
+
+- job:
+ name: tempest-full-test-account-py3
+ parent: tempest-full-py3
+ description: |
+ This job runs the full set of tempest tests using pre-provisioned
+ credentials instead of dynamic credentials and py3.
+ Former names for this job were:
+ - legacy-tempest-dsvm-full-test-accounts
+ - legacy-tempest-dsvm-neutron-full-test-accounts
+ - legacy-tempest-dsvm-identity-v3-test-accounts
+ vars:
+ devstack_localrc:
+ TEMPEST_USE_TEST_ACCOUNTS: True
+
+- job:
+ name: tempest-full-test-account-no-admin-py3
+ parent: tempest-full-test-account-py3
+ description: |
+ This job runs the full set of tempest tests using pre-provisioned
+ credentials and py3 without having an admin account.
+ Former name for this job was:
+ - legacy-tempest-dsvm-neutron-full-non-admin
+
+ vars:
+ devstack_localrc:
+ TEMPEST_HAS_ADMIN: False