placement/.zuul.yaml

128 lines
4.6 KiB
YAML

# Initial set of jobs that will be extended over time as
# we get things working.
- project:
templates:
# The integrated-gate-placement template adds the
# tempest-integrated-placement and grenade jobs.
# tempest-integrated-placement runs a subset of tempest tests which are
# relevant for placement, e.g. it does not run keystone tests.
- check-requirements
- integrated-gate-placement
- openstack-cover-jobs
- openstack-python3-jobs
- periodic-stable-jobs
- publish-openstack-docs-pti
- release-notes-jobs-python3
check:
jobs:
- openstack-tox-functional-py38
- openstack-tox-functional-py39
- openstack-tox-pep8
- placement-tox-py310-with-sqlalchemy-2x
- placement-nova-tox-functional-py39
- placement-nested-perfload:
voting: false
- placement-perfload:
voting: false
- tempest-integrated-placement:
# Alias 'gate-irrelevant-files' define the set of irrelevant-files
# for which integrated testing jobs not required to run. If
# changes are only to those files then, zuul can skip the
# integrated testing job to save the infra resources.
# 'gate-irrelevant-files' should be used for integrated gate
# jobs only not for any other jobs like functional, unit, doc
# jobs.
irrelevant-files: &gate-irrelevant-files
- ^api-.*$
- ^.*\.rst$
- ^.git.*$
- ^doc/.*$
- ^placement/tests/.*$
- ^releasenotes/.*$
- ^tools/.*$
- ^tox.ini$
- grenade:
irrelevant-files: *gate-irrelevant-files
- grenade-skip-level:
irrelevant-files: *gate-irrelevant-files
- tempest-ipv6-only:
irrelevant-files: *gate-irrelevant-files
gate:
jobs:
- openstack-tox-functional-py38
- openstack-tox-functional-py39
- openstack-tox-pep8
- placement-nova-tox-functional-py39
- tempest-integrated-placement:
irrelevant-files: *gate-irrelevant-files
- grenade:
irrelevant-files: *gate-irrelevant-files
- grenade-skip-level:
irrelevant-files: *gate-irrelevant-files
- tempest-ipv6-only:
irrelevant-files: *gate-irrelevant-files
periodic-weekly:
jobs:
# update the python version when the support runtime for testing changes.
# we only test the latest version in the periodics as its just a signal
# that we need to investigate the health of the master branch in the absence
# of frequent patches.
- openstack-tox-functional-py39
- openstack-tox-py39
- placement-nova-tox-functional-py39
- tempest-integrated-placement
- job:
name: placement-tox-py310-with-sqlalchemy-2x
parent: openstack-tox-py310
description: |
Run unit tests with main branch of SQLAlchemy, alembic and oslo.db.
Takes advantage of the base tox job's install-siblings feature.
# The job only tests the latest and shouldn't be run on the stable branches
branches: master
required-projects:
- name: github.com/sqlalchemy/sqlalchemy
override-checkout: main
- name: github.com/sqlalchemy/alembic
override-checkout: main
- name: openstack/oslo.db
- job:
name: placement-nova-tox-functional-py39
parent: nova-tox-functional-py39
description: |
Run the nova functional tests to confirm that we aren't breaking
the PlacementFixture.
vars:
# 'functional-without-sample-db-tests' tox env is defined in nova tox.ini
# to skip the api|notification _sample_tests and db-related tests.
tox_envlist: functional-without-sample-db-tests
- job:
name: placement-perfload
parent: base
description: |
A simple node on which to run placement with the barest of configs and
make performance related tests against it.
required-projects:
- opendev.org/openstack/placement
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^releasenotes/.*$
- ^.git.*$
- ^placement/tests/.*$
- ^tox.ini$
run: playbooks/perfload.yaml
post-run: playbooks/post.yaml
- job:
name: placement-nested-perfload
parent: placement-perfload
description: |
A simple node on which to run placement with the barest of configs and
make nested performance related tests against it.
timeout: 3600
run: playbooks/nested-perfload.yaml