openstack-zuul-jobs/zuul.d/project-templates.yaml
manchandavishal 81044bc902 Add nodejs v20 project templates for 2024.1 release
This commit defines the nodejs v20 job template so that horizon
and all its plugins can use this template to run nodejs jobs with
nodejs v20 which is the testing runtime for 2024.1 release[1].

[1] https://review.opendev.org/c/openstack/governance/+/900224

Change-Id: I47a89078dd70da58f95c09eea23ec00a69b5b268
2023-11-15 17:16:09 +05:30

3534 lines
104 KiB
YAML

# Shared project-templates specific to the OpenStack Project
- project-template:
name: system-required
description: |
Jobs that *every* project in OpenStack CI should have by default.
This is automatically added to all projects in OpenStack CI, no
repository should use this directly.
# Include a check queue so that initially every repo has a check queue
# and we can report invalid zuul.yaml files.
check:
jobs: []
merge-check:
jobs:
- noop
- project-template:
name: noop-jobs
description: |
This template runs no jobs, it is needed if a project does not use
any single job so that changes can get merged.
Do not use this with projects that have jobs defined in the gate
pipeline.
check:
jobs:
- noop
gate:
jobs:
- noop
- project-template:
name: build-openstack-docs-pti
description: |
Runs normal `OpenStack PTI documentation build and publication jobs
<https://governance.openstack.org/tc/reference/project-testing-interface.html#documentation>`_
following the project testing interface.
check:
jobs:
- openstack-tox-docs
gate:
jobs:
- openstack-tox-docs
- project-template:
name: publish-openstack-docs-pti
description: |
Runs normal `OpenStack PTI documentation build jobs
<https://governance.openstack.org/tc/reference/project-testing-interface.html#documentation>`_
following the project testing interface and publishes the result
using a promote job.
Once you have docs published, add them to the index pages
following the `documentation
<https://docs.openstack.org/doc-contrib-guide/doc-index.html>`_
.
.. note::
Only repos listed in ``openstack/governance`` repository are
allowed to publish to the `OpenStack docs website
<https://docs.openstack.org>`_ .
check:
jobs:
- openstack-tox-docs
gate:
jobs:
- openstack-tox-docs
promote:
jobs:
- promote-openstack-tox-docs
- project-template:
name: build-tox-docs
description: |
Runs tox docs jobs without publishing.
check:
jobs:
- tox-docs
gate:
jobs:
- tox-docs
- project-template:
name: publish-tox-docs-infra
description: |
Runs normal OpenStack PTI build jobs and publishes the result to
the Infra docs location using a promote job.
check:
jobs:
- opendev-tox-docs
gate:
jobs:
- opendev-tox-docs
promote:
jobs:
- promote-tox-docs-infra
- project-template:
name: puppet-release-jobs
description: |
Runs release jobs for a Puppet project, tests also that tarballs can be
generated.
check:
jobs:
- build-openstack-puppet-tarball
gate:
jobs:
- build-openstack-puppet-tarball
pre-release:
jobs:
- release-openstack-puppet
- announce-release:
dependencies:
- release-openstack-puppet
release:
jobs:
- release-openstack-puppet
- announce-release:
dependencies:
- release-openstack-puppet
post:
jobs:
- publish-openstack-puppet-branch-tarball
- project-template:
name: publish-to-pypi
description: |
Publish a Python package to PyPI, then send release announcement
emails and propose updates to upper-constraints as needed.
check:
jobs:
- test-release-openstack
gate:
jobs:
- test-release-openstack
pre-release:
jobs:
- release-openstack-python
- announce-release:
dependencies:
- release-openstack-python
- propose-update-constraints:
dependencies:
- release-openstack-python
release:
jobs:
- release-openstack-python
- announce-release:
dependencies:
- release-openstack-python
- propose-update-constraints:
dependencies:
- release-openstack-python
- project-template:
name: publish-to-pypi-stable-only
description: |
Publish a Python package to PyPI, then send release announcement
emails and propose updates to upper-constraints as needed. This
template is supposed to be used for deliverables having stable
branch release only, means deprecated deliverables who still
support stable release.
check:
jobs:
- test-release-openstack:
# NOTE(gmann): Do not run the release job on master branch.
# This template is supposed to be used for stable only release.
branches:
regex: ^master$
negate: true
gate:
jobs:
- test-release-openstack:
branches:
regex: ^master$
negate: true
pre-release:
jobs:
- release-openstack-python:
branches:
regex: ^master$
negate: true
- announce-release:
branches:
regex: ^master$
negate: true
# NOTE(gmann): This is stable branch template and new tox 4 require
# some changes in tox.ini to be compatible with it. Let's pin tox <4
# for stable branches testing (<=stable/zed).
vars:
ensure_tox_version: '<4'
dependencies:
- release-openstack-python
- propose-update-constraints:
branches:
regex: ^master$
negate: true
# NOTE(gmann): This is stable branch template and new tox 4 require
# some changes in tox.ini to be compatible with it. Let's pin tox <4
# for stable branches testing (<=stable/zed).
vars:
ensure_tox_version: '<4'
dependencies:
- release-openstack-python
release:
jobs:
- release-openstack-python:
branches:
regex: ^master$
negate: true
- announce-release:
branches:
regex: ^master$
negate: true
# NOTE(gmann): This is stable branch template and new tox 4 require
# some changes in tox.ini to be compatible with it. Let's pin tox <4
# for stable branches testing (<=stable/zed).
vars:
ensure_tox_version: '<4'
dependencies:
- release-openstack-python
- propose-update-constraints:
branches:
regex: ^master$
negate: true
# NOTE(gmann): This is stable branch template and new tox 4 require
# some changes in tox.ini to be compatible with it. Let's pin tox <4
# for stable branches testing (<=stable/zed).
vars:
ensure_tox_version: '<4'
dependencies:
- release-openstack-python
- project-template:
name: publish-xstatic-to-pypi
description: |
Publish an XStatic Python package to PyPI, then send release announcement
emails and propose updates to upper-constraints as needed.
pre-release:
jobs:
- xstatic-check-version
- release-openstack-python:
dependencies:
- xstatic-check-version
- announce-release:
dependencies:
- release-openstack-python
- propose-update-constraints:
dependencies:
- release-openstack-python
release:
jobs:
- xstatic-check-version
- release-openstack-python:
dependencies:
- xstatic-check-version
- announce-release:
dependencies:
- release-openstack-python
- propose-update-constraints:
dependencies:
- release-openstack-python
- project-template:
name: publish-to-pypi-quietly
description: |
Publish a Python package to PyPI but do not send announce emails or
propose upper-constraints updates.
pre-release:
jobs:
- release-openstack-python
release:
jobs:
- release-openstack-python
- project-template:
name: release-notes-jobs
description: |
Runs the release notes test and publishes the result using a
promote job.
.. note::
Only repos listed in ``openstack/governance`` repository are
allowed to publish to the `OpenStack docs website
<https://docs.openstack.org>`_ .
check:
jobs:
- build-openstack-releasenotes:
vars:
sphinx_python: python3
gate:
jobs:
- build-openstack-releasenotes:
vars:
sphinx_python: python3
promote:
jobs:
- promote-openstack-releasenotes
- project-template:
name: release-notes-jobs-python3
description: |
Builds the release notes jobs under python 3 and publishes the
result using a promote job.
.. note::
Only repos listed in ``openstack/governance`` repository are
allowed to publish to the `OpenStack docs website
<https://docs.openstack.org>`_ .
check:
jobs:
- build-openstack-releasenotes:
vars:
sphinx_python: python3
gate:
jobs:
- build-openstack-releasenotes:
vars:
sphinx_python: python3
promote:
jobs:
- promote-openstack-releasenotes
tag:
jobs:
- publish-openstack-releasenotes-python3
- project-template:
name: build-release-notes-jobs-python3
description: |
Runs the release notes jobs under python 3. This only builds releasenotes
but does not publish them.
check:
jobs:
- build-openstack-releasenotes:
vars:
sphinx_python: python3
gate:
jobs:
- build-openstack-releasenotes:
vars:
sphinx_python: python3
- project-template:
name: openstack-python-jobs
description: |
Runs OpenStack PTI jobs for python.
This template is deprecated and should only be used for older
stable branches (train and older). For newer releases, use the
release specific template instead, for example
:zuul:project_template:`openstack-python3-ussuri-jobs`.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py27
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py27
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python-jobs`
but with horizon added as a
required-projects. This checks out the project code and allows
tox_install_siblings to use horizon when building the venv.
This template is deprecated and should only be used for older
stable branches (train and older). For newer releases, use the
release specific template instead, for example
:zuul:project_template:`openstack-python3-ussuri-jobs-horizon`.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py27:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py27:
required-projects:
- openstack/horizon
post:
jobs:
# This job does not use tox and thus does not need
# any required-projects.
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python-jobs`
but with neutron added as a
required-projects. This checks out the project code and allows
tox_install_siblings to use neutron when building the venv.
This template is deprecated and should only be used for older
stable branches (train and older). For newer releases, use the
release specific template instead, for example
:zuul:project_template:`openstack-python3-ussuri-jobs-neutron`.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py27:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py27:
required-projects:
- openstack/neutron
post:
jobs:
# This job does not use tox and thus does not need
# any required-projects.
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python-jobs`
but with ceilometer added as a
required-projects. This checks out the project code and allows
tox_install_siblings to use ceilometer when building the venv.
This template is deprecated and should only be used for older
stable branches (train and older). For newer releases, use the
release specific template instead, for example
:zuul:project_template:`openstack-python3-ussuri-jobs-ceilometer`.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py27:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py27:
required-projects:
- openstack/ceilometer
post:
jobs:
# This job does not use tox and thus does not need
# any required-projects.
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-cover-jobs
description: |
Runs openstack-tox-cover in only the check pipeline.
check:
jobs:
- openstack-tox-cover
- project-template:
name: openstack-cover-jobs-horizon
description: |
The standard openstack-cover-jobs but with horizon added as a
required-projects. This checks out the project code and allows
tox_install_siblings to use it when building the venv.
check:
jobs:
- openstack-tox-cover:
required-projects:
- openstack/horizon
- project-template:
name: openstack-cover-jobs-neutron
description: |
The standard openstack-cover-jobs but with neutron added as a
required-projects. This checks out the project code and allows
tox_install_siblings to use it when building the venv.
check:
jobs:
- openstack-tox-cover:
required-projects:
- openstack/neutron
- project-template:
name: openstack-python3-antelope-jobs
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the 2023.1 Antelope
release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py38
- openstack-tox-py310
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py38
- openstack-tox-py310
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-antelope-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python3-antelope-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
- openstack-tox-py310:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
- openstack-tox-py310:
required-projects:
- openstack/horizon
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-antelope-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python3-antelope-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
- openstack-tox-py310:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
- openstack-tox-py310:
required-projects:
- openstack/neutron
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-antelope-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python3-antelope-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
- openstack-tox-py310:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
- openstack-tox-py310:
required-projects:
- openstack/ceilometer
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-charm-jobs
# NOTE(gmann): We are using this generic template for python version
# testing. When a new development cycle starts, we need to do two things:
# 1. Update this template for the python version jobs as per the
# new development cycle tetsing runtime defined by TC
# https://governance.openstack.org/tc/reference/runtimes/
# Use the 'branches' variant to run the applicable python version
# jobs.
# 2. Make sure the previous cycle applicable jobs continue to run for
# the new stable branch. Use the 'branches' variant to run the
# applicable python version jobs.
#
# NOTE(coreycb): This template is used in openstack charms since
# stable/2023.1. While the stable/2023.1 and stable/2023.2 charm branches
# should support py311 unit tests, they do not. They need to continue
# supporting py310.
description: |
Runs unit tests for an OpenStack Charm project under the CPython
version 3 releases designated for testing the latest release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py38:
branches:
- stable/2023.1
- stable/2023.2
- master
- openstack-tox-py310:
branches:
- stable/2023.1
- stable/2023.2
- openstack-tox-py311:
branches:
- master
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py38:
branches:
- stable/2023.1
- stable/2023.2
- openstack-tox-py310:
branches:
- stable/2023.1
- stable/2023.2
- openstack-tox-py311:
branches:
- master
- project-template:
name: openstack-python3-jobs
# NOTE(gmann): We are using this generic template for python version
# testing. When a new development cycle starts, we need to do two things:
# 1. Update this template for the python version jobs as per the
# new development cycle tetsing runtime defined by TC
# https://governance.openstack.org/tc/reference/runtimes/
# Use the 'branches' variant to run the applicable python version
# jobs.
# 2. Make sure the previous cycle applicable jobs continue to run for
# the new stable branch. Use the 'branches' variant to run the
# applicable python version jobs.
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing the latest release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py38
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py39:
branches:
- stable/2023.2
# NOTE(gmann): py310 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py310:
branches:
- stable/2023.2
# py3.11 testing is added as non voting in 2023.2 release.
- openstack-tox-py311:
branches:
- stable/2023.2
voting: false
# py3.11 testing is added as mandatory from 2024.1 release onwards.
- openstack-tox-py311:
branches:
- master
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py38
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py39:
branches:
- stable/2023.2
# NOTE(gmann): py310 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py310:
branches:
- stable/2023.2
# py3.11 testing is added as mandatory from 2024.1 release onwards.
- openstack-tox-py311:
branches:
- master
periodic:
jobs:
# NOTE(gmann): We can remove the periodic py3.9 and py3.10 job once
# the master testing runtime does not include it to test.
- openstack-tox-py39
- openstack-tox-py310
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-jobs-horizon
# NOTE(gmann): We are using this generic template for python version
# testing. When a new development cycle starts, we need to do two things:
# 1. Update this template for the python version jobs as per the
# new development cycle tetsing runtime defined by TC
# https://governance.openstack.org/tc/reference/runtimes/
# Use the 'branches' variant to run the applicable python version
# jobs.
# 2. Make sure the previous cycle applicable jobs continue to run for
# the new stable branch. Use the 'branches' variant to run the
# applicable python version jobs.
description: |
The standard :zuul:project_template:`openstack-python3-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py39:
required-projects:
- openstack/horizon
branches:
- stable/2023.2
# NOTE(gmann): py310 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py310:
required-projects:
- openstack/horizon
branches:
- stable/2023.2
# py3.11 testing is added as non voting in 2023.2 release.
- openstack-tox-py311:
required-projects:
- openstack/horizon
branches:
- stable/2023.2
voting: false
# py3.11 testing is added as mandatory from 2024.1 release onwards.
- openstack-tox-py311:
required-projects:
- openstack/horizon
branches:
- master
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py39:
required-projects:
- openstack/horizon
branches:
- stable/2023.2
# NOTE(gmann): py310 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py310:
required-projects:
- openstack/horizon
branches:
- stable/2023.2
# py3.11 testing is added as mandatory from 2024.1 release onwards.
- openstack-tox-py311:
required-projects:
- openstack/horizon
branches:
- master
periodic:
jobs:
# NOTE(gmann): We can remove the periodic py3.9 and py3.10 job once
# the master testing runtime does not include it to test.
- openstack-tox-py39:
required-projects:
- openstack/horizon
- openstack-tox-py310:
required-projects:
- openstack/horizon
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-jobs-neutron
# NOTE(gmann): We are using this generic template for python version
# testing. When a new development cycle starts, we need to do two things:
# 1. Update this template for the python version jobs as per the
# new development cycle tetsing runtime defined by TC
# https://governance.openstack.org/tc/reference/runtimes/
# Use the 'branches' variant to run the applicable python version
# jobs.
# 2. Make sure the previous cycle applicable jobs continue to run for
# the new stable branch. Use the 'branches' variant to run the
# applicable python version jobs.
description: |
The standard :zuul:project_template:`openstack-python3-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py39:
required-projects:
- openstack/neutron
branches:
- stable/2023.2
# NOTE(gmann): py310 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py310:
required-projects:
- openstack/neutron
branches:
- stable/2023.2
# py3.11 testing is added as non voting in 2023.2 release.
- openstack-tox-py311:
required-projects:
- openstack/neutron
branches:
- stable/2023.2
voting: false
# py3.11 testing is added as mandatory from 2024.1 release onwards.
- openstack-tox-py311:
required-projects:
- openstack/neutron
branches:
- master
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py39:
required-projects:
- openstack/neutron
branches:
- stable/2023.2
# NOTE(gmann): py310 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py310:
required-projects:
- openstack/neutron
branches:
- stable/2023.2
# py3.11 testing is added as mandatory from 2024.1 release onwards.
- openstack-tox-py311:
required-projects:
- openstack/neutron
branches:
- master
periodic:
jobs:
# NOTE(gmann): We can remove the periodic py3.9 and py3.10 job once
# the master testing runtime does not include it to test.
- openstack-tox-py39:
required-projects:
- openstack/neutron
- openstack-tox-py310:
required-projects:
- openstack/neutron
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-jobs-ceilometer
# NOTE(gmann): We are using this generic template for python version
# testing. When a new development cycle starts, we need to do two things:
# 1. Update this template for the python version jobs as per the
# new development cycle tetsing runtime defined by TC
# https://governance.openstack.org/tc/reference/runtimes/
# Use the 'branches' variant to run the applicable python version
# jobs.
# 2. Make sure the previous cycle applicable jobs continue to run for
# the new stable branch. Use the 'branches' variant to run the
# applicable python version jobs.
description: |
The standard :zuul:project_template:`openstack-python3-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
branches:
- stable/2023.2
# NOTE(gmann): py310 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py310:
required-projects:
- openstack/ceilometer
branches:
- stable/2023.2
# py3.11 testing is added as non voting in 2023.2 release.
- openstack-tox-py311:
required-projects:
- openstack/ceilometer
branches:
- stable/2023.2
voting: false
# py3.11 testing is added as mandatory from 2024.1 release onwards.
- openstack-tox-py311:
required-projects:
- openstack/ceilometer
branches:
- master
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
branches:
- stable/2023.2
# NOTE(gmann): py310 job is required to run for 2023.2 release and
# after that we run it as periodic only(assuming py3.8 and py3.11
# will be enough coverage to run on every change).
- openstack-tox-py310:
required-projects:
- openstack/ceilometer
branches:
- stable/2023.2
# py3.11 testing is added as mandatory from 2024.1 release onwards.
- openstack-tox-py311:
required-projects:
- openstack/ceilometer
branches:
- master
periodic:
jobs:
# NOTE(gmann): We can remove the periodic py3.9 and py3.10 job once
# the master testing runtime does not include it to test.
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
- openstack-tox-py310:
required-projects:
- openstack/ceilometer
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-zed-jobs
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Zed release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py38
- openstack-tox-py39
- openstack-tox-py310:
voting: false
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py38
- openstack-tox-py39
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-antelope-jobs-arm64
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the 2023.1 Antelope
release on top of ARM64 architecture. This currently runs only a
limited test set and supplements the python3-antelope-jobs.
And it should not be run instead of the default!
check-arm64:
jobs:
- openstack-tox-py38-arm64:
voting: false
- openstack-tox-py310-arm64:
voting: false
- project-template:
name: openstack-python3-jobs-arm64
# NOTE(gmann): We are using this generic template for python version
# testing. When a new development cycle starts, we need to do two things:
# 1. Update this template for the python version jobs as per the
# new development cycle tetsing runtime defined by TC
# https://governance.openstack.org/tc/reference/runtimes/
# Use the 'branches' variant to run the applicable python version
# jobs.
# 2. Make sure the previous cycle applicable jobs continue to run for
# the new stable branch. Use the 'branches' variant to run the
# applicable python version jobs.
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases on top of ARM64 architecture. This currently runs
only a limited test set and supplements the python3-jobs.
And it should not be run instead of the default!
check-arm64:
jobs:
- openstack-tox-py38-arm64:
voting: false
# NOTE(gmann): py39 job is required to run for 2023.2 release and
# after that we skip to run it, assuming py3.8 and py3.10 will be
# enough coverage to run on every change.
- openstack-tox-py39-arm64:
voting: false
branches:
- stable/2023.2
- openstack-tox-py310-arm64:
voting: false
# py3.11 testing is added from 2023.2 release onwards
- openstack-tox-py311-arm64:
voting: false
branches:
- stable/2023.2
- master
- project-template:
name: openstack-python3-zed-jobs-arm64
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Zed release
on top of ARM64 architecture. This currently runs only a limited
test set and supplements the python3-zed-jobs. And it should
not be run instead of the default!
check-arm64:
jobs:
- openstack-tox-py38-arm64:
voting: false
- openstack-tox-py39-arm64:
voting: false
- project-template:
name: openstack-python3-zed-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python3-zed-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
- openstack-tox-py39:
required-projects:
- openstack/horizon
- openstack-tox-py310:
required-projects:
- openstack/horizon
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
- openstack-tox-py39:
required-projects:
- openstack/horizon
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-zed-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python3-zed-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
- openstack-tox-py39:
required-projects:
- openstack/neutron
- openstack-tox-py310:
required-projects:
- openstack/neutron
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
- openstack-tox-py39:
required-projects:
- openstack/neutron
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-zed-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python3-zed-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
- openstack-tox-py310:
required-projects:
- openstack/ceilometer
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-yoga-jobs
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Yoga release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py39
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py39
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-yoga-jobs-arm64
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Yoga release
on top of ARM64 architecture. This currently runs only a limited
test set and supplements the python3-yoga-jobs. And it should
not be run instead of the default!
check-arm64:
jobs:
- openstack-tox-py38-arm64:
voting: false
- openstack-tox-py39-arm64:
voting: false
- project-template:
name: openstack-python3-yoga-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python3-yoga-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py39:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py39:
required-projects:
- openstack/horizon
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-yoga-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python3-yoga-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py39:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py39:
required-projects:
- openstack/neutron
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-yoga-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python3-yoga-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-charm-zed-jobs
description: |
Runs unit tests for an OpenStack Charm project under the CPython
version 3 releases designated for testing across OpenStack
releases from Zed onwards.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py310
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py310
- project-template:
name: openstack-python3-charm-yoga-jobs
description: |
Runs unit tests for an OpenStack Charm project under the CPython
version 3 releases designated for testing across OpenStack
releases from Yoga onwards.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py38
- openstack-tox-py310:
voting: false
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py38
- project-template:
name: openstack-python3-xena-jobs
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Xena release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py38
- openstack-tox-py39:
voting: false
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py38
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-xena-jobs-arm64
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Xena release
on top of ARM64 architecture. This currently runs only a limited
test set and supplements the python3-xena-jobs. And it should
not be run instead of the default!
check-arm64:
jobs:
- openstack-tox-py38-arm64:
voting: false
- openstack-tox-py39-arm64:
voting: false
- project-template:
name: openstack-python3-xena-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python3-xena-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
- openstack-tox-py39:
required-projects:
- openstack/horizon
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-xena-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python3-xena-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
- openstack-tox-py39:
required-projects:
- openstack/neutron
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-xena-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python3-xena-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-wallaby-jobs
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Wallaby release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py38
- openstack-tox-py39:
voting: false
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py38
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-wallaby-jobs-arm64
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Wallaby release
on top of ARM64 architecture. This currently runs only a limited
test set and supplements the python3-wallaby-jobs. And it should
not be run instead of the default!
check-arm64:
jobs:
- openstack-tox-py38-arm64:
voting: false
- openstack-tox-py39-arm64:
voting: false
- project-template:
name: openstack-python3-wallaby-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python3-wallaby-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
- openstack-tox-py39:
required-projects:
- openstack/horizon
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-wallaby-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python3-wallaby-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
- openstack-tox-py39:
required-projects:
- openstack/neutron
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-wallaby-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python3-wallaby-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
- openstack-tox-py39:
required-projects:
- openstack/ceilometer
voting: false
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-victoria-jobs
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Victoria release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py38
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py38
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-victoria-jobs-arm64
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Victoria release
on top of ARM64 architecture. This currently runs only a limited
test set and supplements the python3-victoria-jobs. And it should
not be run instead of the default!
check-arm64:
jobs:
- openstack-tox-py38-arm64:
voting: false
- project-template:
name: openstack-python3-victoria-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python3-victoria-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-victoria-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python3-victoria-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-victoria-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python3-victoria-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-ussuri-jobs
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Ussuri release.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py37
- openstack-tox-py38:
voting: false
branches: master
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- openstack-tox-py37
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-ussuri-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python3-ussuri-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py37:
required-projects:
- openstack/horizon
- openstack-tox-py38:
required-projects:
- openstack/horizon
voting: false
branches: master
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/horizon
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py37:
required-projects:
- openstack/horizon
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-ussuri-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python3-ussuri-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py37:
required-projects:
- openstack/neutron
- openstack-tox-py38:
required-projects:
- openstack/neutron
voting: false
branches: master
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/neutron
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py37:
required-projects:
- openstack/neutron
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-ussuri-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python3-ussuri-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py37:
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
required-projects:
- openstack/ceilometer
voting: false
branches: master
gate:
jobs:
- openstack-tox-pep8:
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py37:
required-projects:
- openstack/ceilometer
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python3-train-jobs
description: |
Runs unit tests for an OpenStack Python project under the CPython
version 3 releases designated for testing in the Train release.
check:
jobs:
- openstack-tox-py36
- openstack-tox-py37
gate:
jobs:
- openstack-tox-py36
- openstack-tox-py37
- project-template:
name: openstack-python3-train-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python3-train-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py37:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/horizon
- openstack-tox-py37:
required-projects:
- openstack/horizon
- project-template:
name: openstack-python3-train-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python3-train-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py37:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/neutron
- openstack-tox-py37:
required-projects:
- openstack/neutron
- project-template:
name: openstack-python3-train-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python3-train-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py37:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- openstack-tox-py37:
required-projects:
- openstack/ceilometer
- project-template:
name: openstack-python35-jobs
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.5.
check:
jobs:
- openstack-tox-py35
gate:
jobs:
- openstack-tox-py35
- project-template:
name: openstack-python35-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-python35-jobs`
but with horizon added as a required-projects. This checks out
the project code and allows tox_install_siblings to use horizon
when building the venv.
check:
jobs:
- openstack-tox-py35:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-py35:
required-projects:
- openstack/horizon
- project-template:
name: openstack-python35-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python35-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-py35:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-py35:
required-projects:
- openstack/neutron
- project-template:
name: openstack-python35-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python35-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-py35:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-py35:
required-projects:
- openstack/ceilometer
- project-template:
name: openstack-python35-jobs-nonvoting
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.5.
The job is non-voting.
check:
jobs:
- openstack-tox-py35:
voting: false
- project-template:
name: openstack-python36-jobs
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.6.
check:
jobs:
- openstack-tox-py36
gate:
jobs:
- openstack-tox-py36
- project-template:
name: openstack-python36-jobs-horizon
description: |
The standard openstack-python36-jobs but with horizon added as a
required-projects. The dashboard projects currently need this
due to how the tox_install.sh zuul-cloner's horizon for them.
check:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/horizon
- project-template:
name: openstack-python36-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python36-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/neutron
- project-template:
name: openstack-python36-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python36-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-py36:
required-projects:
- openstack/ceilometer
- project-template:
name: openstack-python36-jobs-nonvoting
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.6.
The job is non-voting.
check:
jobs:
- openstack-tox-py36:
voting: false
- project-template:
name: openstack-python37-jobs
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.7.
check:
jobs:
- openstack-tox-py37
gate:
jobs:
- openstack-tox-py37
- project-template:
name: openstack-python37-jobs-horizon
description: |
The standard openstack-python37-jobs but with horizon added as a
required-projects. The dashboard projects currently need this
due to how the tox_install.sh zuul-cloner's horizon for them.
check:
jobs:
- openstack-tox-py37:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-py37:
required-projects:
- openstack/horizon
- project-template:
name: openstack-python37-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-python37-jobs`
but with neutron added as a required-projects. This checks out
the project code and allows tox_install_siblings to use neutron
when building the venv.
check:
jobs:
- openstack-tox-py37:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-py37:
required-projects:
- openstack/neutron
- project-template:
name: openstack-python37-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-python37-jobs`
but with ceilometer added as a required-projects. This checks out
the project code and allows tox_install_siblings to use ceilometer
when building the venv.
check:
jobs:
- openstack-tox-py37:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-py37:
required-projects:
- openstack/ceilometer
- project-template:
name: openstack-python37-jobs-nonvoting
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.7.
The job is non-voting.
check:
jobs:
- openstack-tox-py37:
voting: false
- project-template:
name: openstack-python38-jobs
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.8.
check:
jobs:
- openstack-tox-py38
gate:
jobs:
- openstack-tox-py38
- project-template:
name: openstack-python38-jobs-nonvoting
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.8.
The job is non-voting.
check:
jobs:
- openstack-tox-py38:
voting: false
- project-template:
name: openstack-python38-jobs-no-constraints
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.8.
This uses a variant that do not use constraints.
check:
jobs:
- tox-py38
gate:
jobs:
- tox-py38
- project-template:
name: openstack-pep-publish-jobs
description: |
Runs the pep8 job and publishing of python tarball after merge.
check:
jobs:
- openstack-tox-pep8
gate:
jobs:
- openstack-tox-pep8
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python-jobs-no-constraints
description: |
Runs the OpenStack PTI jobs for python, but uses the versions of them
that do not use constraints.
check:
jobs:
- tox-pep8
- tox-py27:
nodeset: ubuntu-bionic
gate:
jobs:
- tox-pep8
- tox-py27:
nodeset: ubuntu-bionic
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: openstack-python35-jobs-no-constraints
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.5.
This uses a variant that do not use constraints.
check:
jobs:
- tox-py35:
nodeset: ubuntu-xenial
gate:
jobs:
- tox-py35:
nodeset: ubuntu-xenial
- project-template:
name: openstack-python36-jobs-no-constraints
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.6.
This uses a variant that do not use constraints.
check:
jobs:
- tox-py36:
nodeset: ubuntu-bionic
gate:
jobs:
- tox-py36:
nodeset: ubuntu-bionic
- project-template:
name: openstack-python37-jobs-no-constraints
description: |
Runs unit tests for an OpenStack Python project under cPython
version 3.7.
This uses a variant that do not use constraints.
check:
jobs:
- tox-py37:
nodeset: ubuntu-bionic
# NOTE(gmann): This is stable branch template and new tox 4 require
# some changes in tox.ini to be compatible with it. Let's pin tox <4
# for stable branches testing (<=stable/zed).
vars:
ensure_tox_version: '<4'
gate:
jobs:
- tox-py37:
nodeset: ubuntu-bionic
# NOTE(gmann): This is stable branch template and new tox 4 require
# some changes in tox.ini to be compatible with it. Let's pin tox <4
# for stable branches testing (<=stable/zed).
vars:
ensure_tox_version: '<4'
- project-template:
name: openstack-lower-constraints-jobs
description: |
Runs openstack-tox-lower-constraints in both the check and gate pipelines.
check:
jobs:
- openstack-tox-lower-constraints
gate:
jobs:
- openstack-tox-lower-constraints
- project-template:
name: openstack-lower-constraints-jobs-horizon
description: |
The standard :zuul:project_template:`openstack-lower-constraints-jobs`
but with horizon added as a required-projects.
This checks out the project code and allows
tox_install_siblings to use it when building the venv.
check:
jobs:
- openstack-tox-lower-constraints:
required-projects:
- openstack/horizon
gate:
jobs:
- openstack-tox-lower-constraints:
required-projects:
- openstack/horizon
- project-template:
name: openstack-lower-constraints-jobs-neutron
description: |
The standard :zuul:project_template:`openstack-lower-constraints-jobs`
but with neutron added as a required-projects.
This checks out the project code and allows
tox_install_siblings to use it when building the venv.
check:
jobs:
- openstack-tox-lower-constraints:
required-projects:
- openstack/neutron
gate:
jobs:
- openstack-tox-lower-constraints:
required-projects:
- openstack/neutron
- project-template:
name: openstack-lower-constraints-jobs-ceilometer
description: |
The standard :zuul:project_template:`openstack-lower-constraints-jobs`
but with ceilometer added as a required-projects.
This checks out the project code and allows
tox_install_siblings to use it when building the venv.
check:
jobs:
- openstack-tox-lower-constraints:
required-projects:
- openstack/ceilometer
gate:
jobs:
- openstack-tox-lower-constraints:
required-projects:
- openstack/ceilometer
- project-template:
name: openstack-lower-constraints-master-branch-jobs
description: |
Runs openstack-tox-lower-constraints in both the check and gate pipelines
but only on the master branch.
check:
jobs:
- openstack-tox-lower-constraints:
branches: master
gate:
jobs:
- openstack-tox-lower-constraints:
branches: master
- project-template:
name: openstack-pypy-jobs-nonvoting
description: |
Runs unit tests for an OpenStack Python project under PyPy.
The job is non-voting.
check:
jobs:
- openstack-tox-pypy:
voting: false
- project-template:
name: docs-on-readthedocs
description: |
Runs normal OpenStack PTI build jobs but publishes to
`readthedocs <https://readthedocs.org>`__ instead of
`docs.openstack.org <https://docs.openstack.org>`__. This is
intended for projects that are aiming to follow the PTI but are
not official.
To use this template you need to:
#. add the ``openstackci`` user as an admin to your RTD project
#. generate a webhook URL via the "Integrations" dashboard page
#. provide the ``id`` in the ``rtd_webhook_id`` variable in your project
For example
.. code-block:: yaml
project:
name: openstack-project
description: My Project
templates:
- docs-on-readthedocs
vars:
rtd_webhook_id: '1234'
check:
jobs:
- openstack-tox-docs
gate:
jobs:
- openstack-tox-docs
post:
jobs:
- trigger-readthedocs-webhook
pre-release:
jobs:
- trigger-readthedocs-webhook
release:
jobs:
- trigger-readthedocs-webhook
- project-template:
name: nodejs4-publish-to-npm
description: |
Runs publish jobs and tarball generation for Javascript.
Uses NodeJS version 4.
post:
jobs:
- publish-openstack-javascript-tarball:
vars:
node_version: 4
nodeset: ubuntu-xenial
release:
jobs:
- release-openstack-javascript:
vars:
node_version: 4
nodeset: ubuntu-xenial
- announce-release:
dependencies:
- release-openstack-javascript
- project-template:
name: nodejs6-publish-to-npm
description: |
Runs publish jobs and tarball generation for Javascript.
Uses NodeJS version 6.
post:
jobs:
- publish-openstack-javascript-tarball:
vars:
node_version: 6
release:
jobs:
- release-openstack-javascript:
vars:
node_version: 6
- announce-release:
dependencies:
- release-openstack-javascript
- project-template:
name: nodejs8-publish-to-npm
description: |
Runs publish jobs and tarball generation for Javascript.
Uses NodeJS version 8.
post:
jobs:
- publish-openstack-javascript-tarball:
vars:
node_version: 8
release:
jobs:
- release-openstack-javascript:
vars:
node_version: 8
- announce-release:
dependencies:
- release-openstack-javascript
- project-template:
name: nodejs10-publish-to-npm
description: |
Runs publish jobs and tarball generation for Javascript.
Uses NodeJS version 10.
post:
jobs:
- publish-openstack-javascript-tarball:
vars:
node_version: 10
release:
jobs:
- release-openstack-javascript:
vars:
node_version: 10
- announce-release:
dependencies:
- release-openstack-javascript
- project-template:
name: translation-jobs-master-only
description: |
Sync translations to translation server and back again for
**master** only.
This is intended for official OpenStack projects that have
translations set up.
post:
jobs:
- upstream-translation-update:
branches: master
periodic:
jobs:
- propose-translation-update:
branches: master
- project-template:
name: translation-jobs-master-stable
description: |
Sync translations to translation server and back again for
**master** and translated stable branches.
This is intended for official OpenStack projects that have
translations set up.
post:
jobs:
- upstream-translation-update:
branches:
- master
- stable/2023.2
- stable/2023.1
- stable/zed
periodic:
jobs:
- propose-translation-update:
branches:
- master
- stable/2023.2
- stable/2023.1
- stable/zed
- project-template:
name: openstack-specs-jobs
description: |
Runs jobs to build documents for a specs repository and publishes the
result using a promote job.
check:
jobs:
- openstack-tox-docs
gate:
jobs:
- openstack-tox-docs
promote:
jobs:
- promote-openstack-specs
- project-template:
name: build-only-specs-jobs
description: |
Runs jobs to build only documents for a specs repository.
check:
jobs:
- openstack-tox-docs
gate:
jobs:
- openstack-tox-docs
- project-template:
name: api-guide-jobs
description: |
Build the api-guide document and publish the result
using a promote job.
check:
jobs:
- build-openstack-api-guide:
files: &api-guide-triggers
- ^api-guide/.*
- bindep.txt
- doc/requirements.txt
- test-requirements.txt
- tox.ini
gate:
jobs:
- build-openstack-api-guide:
files: *api-guide-triggers
promote:
jobs:
- promote-api-guide:
files: *api-guide-triggers
- project-template:
name: api-ref-jobs
description: |
Build the api-ref document and publish the result
using a promote job.
check:
jobs:
- build-openstack-api-ref:
files: &api-ref-triggers
- ^os_api_ref/.*
- ^api-ref/.*
- ^doc/api_samples/.*
- bindep.txt
- doc/requirements.txt
- test-requirements.txt
- tox.ini
gate:
jobs:
- build-openstack-api-ref:
files: *api-ref-triggers
promote:
jobs:
- promote-api-ref:
files: *api-ref-triggers
- project-template:
name: deploy-guide-jobs
description: |
Build the deploy-guide document and publish the result
using a promote job.
check:
jobs:
- build-openstack-deploy-guide:
files: &deploy-guide-triggers
- ^deploy-guide/.*
- bindep.txt
- doc/requirements.txt
- test-requirements.txt
- tox.ini
gate:
jobs:
- build-openstack-deploy-guide:
files: *deploy-guide-triggers
promote:
jobs:
- promote-deploy-guide:
files: *deploy-guide-triggers
- project-template:
name: periodic-stable-jobs
description: |
Runs periodic jobs on stable branches.
periodic-stable:
jobs:
- openstack-tox-docs:
branches:
- stable/stein
- stable/train
- stable/ussuri
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
- stable/zed
- stable/2023.1
- stable/2023.2
# py27 periodic jobs will run until Train, from Ussuri it will
# be replaced with python3 periodic jobs
- openstack-tox-py27:
branches:
- stable/stein
- stable/train
- openstack-tox-py36:
branches:
- stable/train
- stable/ussuri
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
- openstack-tox-py37:
branches:
- stable/train
- stable/ussuri
- openstack-tox-py38:
branches:
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
- stable/zed
- stable/2023.1
- stable/2023.2
- openstack-tox-py39:
branches:
- stable/zed
- openstack-tox-py310:
branches:
- stable/2023.1
- stable/2023.2
- project-template:
name: periodic-stable-jobs-neutron
description: |
The :zuul:project_template:`periodic-stable-jobs` template
but with neutron added as a required-projects.
This checks out the project code and allows
tox_install_siblings to use it when building the venv.
periodic-stable:
jobs:
- openstack-tox-docs:
branches:
- stable/stein
- stable/train
- stable/ussuri
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
- stable/zed
- stable/2023.1
- stable/2023.2
required-projects:
- openstack/neutron
# py27 periodic jobs will run until Train, from Ussuri it will
# be replaced with python3 periodic jobs
- openstack-tox-py27:
branches:
- stable/stein
- stable/train
required-projects:
- openstack/neutron
- openstack-tox-py36:
branches:
- stable/train
- stable/ussuri
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
required-projects:
- openstack/neutron
- openstack-tox-py37:
branches:
- stable/train
- stable/ussuri
required-projects:
- openstack/neutron
- openstack-tox-py38:
branches:
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
- stable/zed
- stable/2023.1
- stable/2023.2
required-projects:
- openstack/neutron
- openstack-tox-py39:
branches:
- stable/zed
required-projects:
- openstack/neutron
- openstack-tox-py310:
branches:
- stable/2023.1
- stable/2023.2
required-projects:
- openstack/neutron
- project-template:
name: periodic-stable-jobs-ceilometer
description: |
The :zuul:project_template:`periodic-stable-jobs` template
ut with ceilometer added as a required-projects.
This checks out the project code and allows
tox_install_siblings to use it when building the venv.
periodic-stable:
jobs:
- openstack-tox-docs:
branches:
- stable/stein
- stable/train
- stable/ussuri
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
- stable/zed
- stable/2023.1
- stable/2023.2
required-projects:
- openstack/ceilometer
# py27 periodic jobs will run until Train, from Ussuri it will
# be replaced with python3 periodic jobs
- openstack-tox-py27:
branches:
- stable/stein
- stable/train
required-projects:
- openstack/ceilometer
- openstack-tox-py36:
branches:
- stable/train
- stable/ussuri
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
required-projects:
- openstack/ceilometer
- openstack-tox-py37:
branches:
- stable/train
- stable/ussuri
required-projects:
- openstack/ceilometer
- openstack-tox-py38:
branches:
- stable/victoria
- stable/wallaby
- stable/xena
- stable/yoga
- stable/zed
- stable/2023.1
- stable/2023.2
required-projects:
- openstack/ceilometer
- openstack-tox-py39:
branches:
- stable/zed
required-projects:
- openstack/ceilometer
- openstack-tox-py310:
branches:
- stable/2023.1
- stable/2023.2
required-projects:
- openstack/ceilometer
- project-template:
name: periodic-jobs-with-neutron-lib-master
description: |
Runs periodic job on master branch using
neutron-lib from source.
periodic:
jobs:
- openstack-tox-py311-with-neutron-lib-master
- project-template:
name: periodic-jobs-with-oslo-master
description: |
Runs periodic jobs on master branch using
oslo libraries from source.
periodic:
jobs:
- openstack-tox-py311-with-oslo-master
- project-template:
name: periodic-jobs-with-ovsdbapp-master
description: |
Runs periodic job on master branch using
ovdsdbapp from source.
periodic:
jobs:
- openstack-tox-py311-with-ovsdbapp-master
- project-template:
name: python-charm-interface-jobs
description: |
Run Python tests for charm-interface projects.
check:
jobs:
- openstack-tox-pep8
gate:
jobs:
- openstack-tox-pep8
- project-template:
name: python-charm-jobs
description: |
Run Python tests for charm projects.
This run py2.7 job and supposed to be used
on stable branch until stable/train. Ussuri
onwards, py3 template should be used
(DEPRECATED FOR REMOVAL).
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py27
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py27
- project-template:
name: python-charm-layer-jobs
description: |
Run Python tests for charm layer projects.
check:
jobs:
- openstack-tox-pep8
- openstack-tox-build
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-build
- project-template:
name: python35-charm-jobs
description: |
Run tox-pep8 and tox-py35 check and gate jobs
(DEPRECATED FOR REMOVAL).
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py35
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py35
- project-template:
name: python36-charm-jobs
description: |
Run tox-pep8 and tox-py36 check and gate jobs
(DEPRECATED FOR REMOVAL).
check:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
gate:
jobs:
- openstack-tox-pep8
- openstack-tox-py36
- project-template:
name: nodejs4-jobs
description: |
Run lint and test jobs using Node 4.
check:
jobs:
- nodejs-run-lint:
vars:
node_version: 4
nodeset: ubuntu-xenial
- nodejs-run-test-browser:
vars:
node_version: 4
nodeset: ubuntu-xenial
gate:
jobs:
- nodejs-run-lint:
vars:
node_version: 4
nodeset: ubuntu-xenial
- nodejs-run-test-browser:
vars:
node_version: 4
nodeset: ubuntu-xenial
- project-template:
name: nodejs6-jobs
description: |
Run lint and test jobs using Node 6.
check:
jobs:
- nodejs-run-lint:
vars:
node_version: 6
nodeset: ubuntu-bionic
- nodejs-run-test-browser:
vars:
node_version: 6
nodeset: ubuntu-bionic
gate:
jobs:
- nodejs-run-lint:
vars:
node_version: 6
nodeset: ubuntu-bionic
- nodejs-run-test-browser:
vars:
node_version: 6
nodeset: ubuntu-bionic
- project-template:
name: nodejs8-jobs
description: |
Run lint and test jobs using Node 8.
check:
jobs:
- nodejs-run-lint:
vars:
node_version: 8
nodeset: ubuntu-bionic
- nodejs-run-test-browser:
vars:
node_version: 8
nodeset: ubuntu-bionic
gate:
jobs:
- nodejs-run-lint:
vars:
node_version: 8
nodeset: ubuntu-bionic
- nodejs-run-test-browser:
vars:
node_version: 8
nodeset: ubuntu-bionic
- project-template:
name: nodejs10-jobs
description: |
Run lint and test jobs using Node 10.
check:
jobs:
- nodejs-run-lint:
vars:
node_version: 10
nodeset: ubuntu-focal
- nodejs-run-test-browser:
vars:
node_version: 10
nodeset: ubuntu-focal
gate:
jobs:
- nodejs-run-lint:
vars:
node_version: 10
nodeset: ubuntu-focal
- nodejs-run-test-browser:
vars:
node_version: 10
nodeset: ubuntu-focal
- project-template:
name: nodejs14-jobs
description: |
Run lint and test jobs using Node 14.
check:
jobs:
- nodejs-run-lint:
vars:
node_version: 14
nodeset: ubuntu-focal
- nodejs-run-test-browser:
vars:
node_version: 14
nodeset: ubuntu-focal
gate:
jobs:
- nodejs-run-lint:
vars:
node_version: 14
nodeset: ubuntu-focal
- nodejs-run-test-browser:
vars:
node_version: 14
nodeset: ubuntu-focal
- project-template:
name: nodejs16-jobs
description: |
Run lint and test jobs using Node 16.
check:
jobs:
- nodejs-run-lint:
vars:
node_version: 16
nodeset: ubuntu-focal
- nodejs-run-test-browser:
vars:
node_version: 16
nodeset: ubuntu-focal
gate:
jobs:
- nodejs-run-lint:
vars:
node_version: 16
nodeset: ubuntu-focal
- nodejs-run-test-browser:
vars:
node_version: 16
nodeset: ubuntu-focal
- project-template:
name: nodejs18-jobs
description: |
Run lint and test jobs using Node 18.
check:
jobs:
- nodejs-run-lint:
vars:
node_version: 18
nodeset: ubuntu-jammy
- nodejs-run-test-browser:
vars:
node_version: 18
nodeset: ubuntu-jammy
gate:
jobs:
- nodejs-run-lint:
vars:
node_version: 18
nodeset: ubuntu-jammy
- nodejs-run-test-browser:
vars:
node_version: 18
nodeset: ubuntu-jammy
- project-template:
name: nodejs20-jobs
description: |
Run lint and test jobs using Node 20.
check:
jobs:
- nodejs-run-lint:
vars:
node_version: 20
nodeset: ubuntu-jammy
- nodejs-run-test-browser:
vars:
node_version: 20
nodeset: ubuntu-jammy
gate:
jobs:
- nodejs-run-lint:
vars:
node_version: 20
nodeset: ubuntu-jammy
- nodejs-run-test-browser:
vars:
node_version: 20
nodeset: ubuntu-jammy
- project-template:
name: nodejs4-docs
description: |
Run docs jobs using Node 4.
check:
jobs:
- nodejs-npm-run-docs:
vars:
node_version: 4
nodeset: ubuntu-xenial
gate:
jobs:
- nodejs-npm-run-docs:
vars:
node_version: 4
nodeset: ubuntu-xenial
- project-template:
name: nodejs8-docs
description: |
Run docs jobs using Node 8.
check:
jobs:
- nodejs-npm-run-docs:
vars:
node_version: 8
nodeset: ubuntu-bionic
gate:
jobs:
- nodejs-npm-run-docs:
vars:
node_version: 8
nodeset: ubuntu-bionic
- project-template:
name: nodejs10-docs
description: |
Run docs jobs using Node 10.
check:
jobs:
- nodejs-run-docs:
vars:
node_version: 10
gate:
jobs:
- nodejs-run-docs:
vars:
node_version: 10
- project-template:
name: nodejs14-docs
description: |
Run docs jobs using Node 14.
check:
jobs:
- nodejs-run-docs:
vars:
node_version: 14
gate:
jobs:
- nodejs-run-docs:
vars:
node_version: 14
- project-template:
name: nodejs16-docs
description: |
Run docs jobs using Node 16.
check:
jobs:
- nodejs-run-docs:
vars:
node_version: 16
gate:
jobs:
- nodejs-run-docs:
vars:
node_version: 16
- project-template:
name: nodejs18-docs
description: |
Run docs jobs using Node 18.
check:
jobs:
- nodejs-run-docs:
vars:
node_version: 18
gate:
jobs:
- nodejs-run-docs:
vars:
node_version: 18
- project-template:
name: nodejs20-docs
description: |
Run docs jobs using Node 20
check:
jobs:
- nodejs-run-docs:
vars:
node_version: 20
gate:
jobs:
- nodejs-run-docs:
vars:
node_version: 20
- project-template:
name: tempest-plugin-jobs
description: |
A set of jobs to run against Tempest Plugins
check:
jobs:
- openstack-tox-pep8
gate:
jobs:
- openstack-tox-pep8
post:
jobs:
- publish-openstack-python-branch-tarball
- project-template:
name: ansible-role-jobs
description: |
Run default tests for ansible-role repositories: Build
documentation and run tox based linter.
check:
jobs:
- openstack-tox-docs
- openstack-tox-linters
gate:
jobs:
- openstack-tox-docs
- openstack-tox-linters
- project-template:
name: snap-jobs
description: |
Run tests for snap repositories.
check:
jobs:
- openstack-tox-snap-with-sudo
gate:
jobs:
- openstack-tox-snap-with-sudo
- project-template:
name: ansible-role-functional-jobs-centos7
description: |
Run functional tests on ansible-role repositories using
CentOS 7 nodes.
check:
jobs:
- ansible-role-functional-centos-7
gate:
jobs:
- ansible-role-functional-centos-7
- project-template:
name: ansible-role-functional-jobs-xenial
description: |
Run functional tests on ansible-role repositories using
Ubuntu Xenial nodes.
check:
jobs:
- ansible-role-functional-ubuntu-xenial
gate:
jobs:
- ansible-role-functional-ubuntu-xenial
- project-template:
name: ansible-role-functional-jobs-xenial-nv
description: |
Run functional tests on ansible-role repositories using
Ubuntu Xenial nodes. The tests are non-voting.
check:
jobs:
- ansible-role-functional-ubuntu-xenial:
voting: false
- project-template:
name: integrated-gate-py3
description: |
Run the python3 Tempest integration tests in check and gate for
repositories in the integrated gate.
check:
jobs:
- grenade
- tempest-full-py3:
branches:
regex: ^driverfixes.*$
negate: true
gate:
jobs:
- grenade
- tempest-full-py3:
branches:
regex: ^driverfixes.*$
negate: true
# TODO(gmann): Remove the 'integrated-gate-py35' template once all repo
# including their stable branches are renamed it to 'integrated-gate-py3'
- project-template:
name: integrated-gate-py35
description: |
Run the python3 Tempest integration tests in check and gate for
repositories in the integrated gate.
check:
jobs:
- grenade-py3
- tempest-full-py3:
branches:
regex: ^driverfixes.*$
negate: true
gate:
jobs:
- grenade-py3
- tempest-full-py3:
branches:
regex: ^driverfixes.*$
negate: true
- project-template:
name: golang-jobs
description: |
Run golang tests in check and gate.
check:
jobs:
- golang-fmt
- golang-unit
gate:
jobs:
- golang-fmt
- golang-unit
- project-template:
name: lib-forward-testing
description: |
Run tempest, installing the library from source to ensure that
changes in the library do not break any of the services running
in devstack.
check:
jobs:
- tempest-full
gate:
jobs:
- tempest-full
- project-template:
name: lib-forward-testing-python3
description: |
Run tempest under python 3, installing the library from source
to ensure that changes in the library do not break any of the
services running in devstack.
check:
jobs:
- tempest-full-py3
gate:
jobs:
- tempest-full-py3
- project-template:
name: openstack-tox-molecule
description: |
Runs Ansible molecule testing using tox 'molecule' environment.
check:
jobs:
- openstack-tox-molecule
gate:
jobs:
- openstack-tox-molecule
- project-template:
name: official-openstack-repo-jobs
description: |
Jobs attached to official and active OpenStack repositories.
This template must be added in openstack/project-config repository.
post:
jobs:
- openstack-upload-github-mirror
pre-release:
jobs:
- openstack-upload-github-mirror
release:
jobs:
- openstack-upload-github-mirror