openstack-zuul-jobs/zuul.d/jobs.yaml

513 lines
13 KiB
YAML

# Shared jobs specific to the OpenStack Project
# imports jobs from:
# https://git.openstack.org/cgit/openstack-infra/project-config
# https://git.openstack.org/cgit/openstack-infra/zuul-jobs
- job:
name: base-integration
description: |
Runs roles that are included by default in the 'base' job in order to
prevent regressions.
parent: base-minimal
roles:
- zuul: openstack-infra/zuul-jobs
run: tests/base
- job:
name: base-integration-centos-7
parent: base-integration
nodeset: centos-7
- job:
name: base-integration-debian-jessie
parent: base-integration
nodeset: debian-jessie
- job:
name: base-integration-fedora-26
parent: base-integration
nodeset: fedora-26
- job:
name: base-integration-opensuse423
parent: base-integration
nodeset: opensuse-423
- job:
name: base-integration-ubuntu-trusty
parent: base-integration
nodeset: ubuntu-trusty
- job:
name: base-integration-ubuntu-xenial
parent: base-integration
nodeset: ubuntu-xenial
- job:
name: build-openstack-sphinx-docs
parent: tox-docs
description: |
Builds docuemtation using Sphinx per the OpenStack PTI and then
collects the results into the log directory so that they can be
examined in their published form after a successful build.
It runs the prepare-docs-for-afs role so that AFS stamp files
can be examined if desired, and also validates htaccess files
using the whereto tool.
run: playbooks/sphinx-docs/run
post-run: playbooks/sphinx-docs/post
success-url: html/latest/
required-projects:
- name: openstack/requirements
roles:
- zuul: openstack-infra/zuul-jobs
vars:
tox_constraints_file: "{{ ansible_user_dir }}/src/git.openstack.org/openstack/requirements/upper-constraints.txt"
tox_envlist: venv
tox_extra_args: -vv python setup.py build_sphinx
- job:
name: build-openstack-sphinx-docs
branches: stable/queens
success-url: html/queens/
- job:
name: build-openstack-sphinx-docs
branches: stable/pike
success-url: html/pike/
- job:
name: build-openstack-sphinx-docs
branches: stable/ocata
success-url: html/ocata/
- job:
name: build-openstack-sphinx-docs
branches: stable/newton
success-url: html/newton/
- job:
name: build-openstack-infra-sphinx-docs
parent: tox-docs
description: |
Builds docuemtation using Sphinx per the OpenStack PTI but with
the Infra-specific publication prep applied. It then
collects the results into the log directory so that they can be
examined in their published form after a successful build.
run: playbooks/sphinx-docs/run
post-run: playbooks/sphinx-docs/post-infra
success-url: html/
roles:
- zuul: openstack-infra/zuul-jobs
vars:
tox_envlist: venv
tox_extra_args: -vv python setup.py build_sphinx
- job:
name: tox-py35-on-zuul
parent: tox-py35
description: |
Run zuul's py35 unittests on patches to zuul-jobs
vars:
zuul_work_dir: "src/git.openstack.org/openstack-infra/zuul"
required-projects:
- name: openstack-infra/zuul
override-branch: feature/zuulv3
- job:
name: openstack-tox
parent: tox
description: |
Base job to run tox jobs with OpenStack project specific updates.
Processing upper-constraints files from openstack/requirements.
required-projects:
- name: openstack/requirements
vars:
tox_constraints_file: "{{ ansible_user_dir }}/src/git.openstack.org/openstack/requirements/upper-constraints.txt"
- job:
name: openstack-tox-py27
parent: openstack-tox
description: |
Run unit tests for an OpenStack Python project under cPython version 2.7.
Uses tox with the ``py27`` environment.
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
vars:
tox_envlist: py27
- job:
name: openstack-tox-py34
parent: openstack-tox
description: |
Run unit tests for an OpenStack project under cPython version 3.4.
Uses tox with the ``py34`` environment.
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
vars:
tox_envlist: py34
- job:
name: openstack-tox-py35
parent: openstack-tox
description: |
Run unit tests for an OpenStack project under cPython version 3.5.
Uses tox with the ``py35`` environment.
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
vars:
tox_envlist: py35
- job:
name: openstack-tox-pypy
parent: openstack-tox
description: |
Run unit tests for an OpenStack Python project under PyPy.
Uses tox with the ``pypy`` environment.
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
vars:
tox_envlist: py27
- job:
name: openstack-tox-linters
parent: openstack-tox
description: |
Runs code linting tests.
Uses tox with the ``linters`` environment.
vars:
tox_envlist: linters
- job:
name: openstack-tox-pep8
parent: openstack-tox
description: |
Runs code pep8 tests.
Uses tox with the ``pep8`` environment.
vars:
tox_envlist: pep8
- job:
name: openstack-tox-cover
parent: openstack-tox
description: |
Run code coverage tests.
Uses tox with the ``cover`` environment.
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
vars:
tox_envlist: cover
- job:
name: openstack-tox-bashate
parent: openstack-tox
description: |
Run bashate tests.
Uses tox with the ``bashate`` environment.
vars:
tox_envlist: bashate
- job:
name: openstack-tox-compare-cover
parent: openstack-tox
description: |
Run coverage comparison tests.
Uses tox with the ``compare-cover`` environment.
vars:
tox_envlist: compare-cover
- job:
name: publish-openstack-python-tarball
parent: publish-openstack-artifacts
description: |
Publish the results of the tox-tarball job to tarballs.openstack.org.
pre-run: playbooks/python-tarball/pre
run: playbooks/python-tarball/run
post-run: playbooks/python-tarball/post
- job:
name: build-openstack-python-tarball
parent: python-sdist
description: |
Build a tarball using tox but do not upload it anywhere.
pre-run: playbooks/python-tarball/pre
run: playbooks/python-tarball/run
- job:
name: announce-release
description:
Send a release announcement after publishing a project
pre-run: playbooks/release/pre
run: playbooks/release/announce
required-projects:
- openstack-infra/release-tools
- job:
name: xstatic-check-version
description:
Check version used by xstatic packages
run: playbooks/xstatic/check-version
- job:
name: releasenotes
parent: openstack-tox
success-url: html/
run: playbooks/releasenotes/run
timeout: 1800
- job:
name: legacy-base
description: |
Base job for autoconverted legacy jobs
pre-run: playbooks/legacy/pre
nodeset: legacy-ubuntu-xenial
- job:
name: legacy-dsvm-base
description: |
Base job for autoconverted legacy devstack-gate jobs
This job runs devstack-gate with as few changes as possible and
may be used by jobs which have been automatically converted as
part of the migration to Zuul v3.
nodeset: devstack-single-node
pre-run: playbooks/legacy/pre
required-projects:
- openstack-dev/devstack
- openstack-infra/devstack-gate
- openstack-infra/tripleo-ci
- openstack/ceilometer
- openstack/ceilometermiddleware
- openstack/cinder
- openstack/django_openstack_auth
- openstack/glance
- openstack/glance_store
- openstack/heat
- openstack/heat-cfntools
- openstack/heat-templates
- openstack/horizon
- openstack/keystone
- openstack/keystoneauth
- openstack/keystonemiddleware
- openstack/manila
- openstack/manila-ui
- openstack/neutron
- openstack/neutron-fwaas
- openstack/neutron-lbaas
- openstack/neutron-vpnaas
- openstack/nova
- openstack/octavia
- openstack/os-apply-config
- openstack/os-brick
- openstack/os-client-config
- openstack/os-collect-config
- openstack/os-net-config
- openstack/os-refresh-config
- openstack/osc-lib
- openstack/requirements
- openstack/swift
- openstack/tempest
- openstack/tempest-lib
- openstack/tripleo-heat-templates
- openstack/tripleo-image-elements
- openstack/tripleo-incubator
- openstack/zaqar
- job:
name: legacy-puppet-openstack-integration
description: |
Base job for autoconverted legacy puppet-openstack-integration
This job runs provides the base required projects for
puppet-openstack-integration jobs.
nodeset: devstack-single-node
pre-run: playbooks/legacy/pre
required-projects:
- openstack/puppet-aodh
- openstack/puppet-barbican
- openstack/puppet-ceilometer
- openstack/puppet-ceph
- openstack/puppet-cinder
- openstack/puppet-cloudkitty
- openstack/puppet-congress
- openstack/puppet-designate
- openstack/puppet-ec2api
- openstack/puppet-glance
- openstack/puppet-gnocchi
- openstack/puppet-heat
- openstack/puppet-horizon
- openstack/puppet-ironic
- openstack/puppet-keystone
- openstack/puppet-manila
- openstack/puppet-mistral
- openstack/puppet-monasca
- openstack/puppet-murano
- openstack/puppet-neutron
- openstack/puppet-nova
- openstack/puppet-octavia
- openstack/puppet-openstack-integration
- openstack/puppet-openstack_extras
- openstack/puppet-openstacklib
- openstack/puppet-oslo
- openstack/puppet-ovn
- openstack/puppet-panko
- openstack/puppet-qdr
- openstack/puppet-sahara
- openstack/puppet-swift
- openstack/puppet-tacker
- openstack/puppet-tempest
- openstack/puppet-trove
- openstack/puppet-vswitch
- openstack/puppet-vitrage
- openstack/puppet-watcher
- openstack/puppet-zaqar
- openstack/tempest-horizon
- job:
name: legacy-publish-openstack-artifacts
parent: publish-openstack-artifacts
description: |
Base job for autoconverted legacy jobs that publish artifacts
nodeset: devstack-single-node
pre-run: playbooks/legacy/pre
- job:
name: project-config-gerrit
parent: tox
description: |
Runs checks on gerrit-related configuration. Uses ``gerrit``
tox env.
vars:
tox_envlist: gerrit
files:
- ^gerrit/acls/.*$
- bindep.txt
- check_valid_gerrit_projects.py
- gerrit/projects.yaml
- other-requirements.txt
- tools/check_projects_yaml_alphabetized.sh
- tools/check_valid_gerrit_config.sh
- tox.ini
- job:
name: project-config-grafyaml
parent: tox
description: |
Runs checks on grafyaml configuration with the ``grafyaml`` tox
env.
vars:
tox_envlist: grafyaml
required-projects:
- openstack-infra/grafyaml
files:
- ^grafana/.*$
- bindep.txt
- other-requirements.txt
- tools/grafyaml-validate.sh
- tox.ini
- job:
name: project-config-irc-access
parent: tox
description: |
Runs checks on IRC configuration with the ``irc`` tox
env.
vars:
tox_envlist: irc
files:
- bindep.txt
- accessbot/channels.yaml
- gerritbot/channels.yaml
- other-requirements.txt
- tools/check_irc_access.py
- tools/check_channels_yaml.sh
- tools/irc_tests.py
- tools/normalize_channels_yaml.py
- tools/projectconfig_yamllib.py
- tox.ini
- job:
name: project-config-nodepool
parent: tox
description: |
Runs checks on nodepool configuration with the ``nodepool`` tox
env.
vars:
tox_envlist: nodepool
files:
- ^nodepool/nodepool.yaml
- bindep.txt
- other-requirements.txt
- tox.ini
- job:
name: build-openstack-specs-site
parent: tox
description: |
Generates the index page of http://specs.openstack.org/.
vars:
tox_envlist: specs
files:
- bindep.txt
- specs/.*
- other-requirements.txt
- tox.ini
- job:
name: project-config-dib
parent: tox
description: |
Runs diskimage-builder on all elements in project-config. Uses
the ``dib`` tox env.
vars:
tox_envlist: dib
files:
- ^nodepool/elements/.*$
- bindep.txt
- other-requirements.txt
- tox.ini
- job:
name: project-config-infra-docs-index
parent: tox
description: |
Generates the index page for https://docs.openstack.org/infra/.
vars:
tox_envlist: infra-docs
files:
- 'bindep.txt'
- 'docs-site/.*'
- 'other-requirements.txt'
- 'tox.ini'
- job:
name: project-config-build-openafs-centos
description: |
There are no official builds for AFS on Centos 7, hence
we build our own and publish them to tarballs.openstack.org
for our centos hosts that need access to the mirror to
consume.
parent: publish-openstack-artifacts
run: playbooks/package-afs-centos/run
post-run: playbooks/package-afs-centos/post
nodeset: centos-7