# 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: openstack-infra-base-integration description: | Runs roles that are included by default in the 'base' job in order to prevent regressions. This job should not be used outside the context of testing roles and playbooks found in project-config, zuul-jobs and openstack-zuul-jobs. abstract: true protected: true parent: base-minimal required-projects: - openstack-infra/project-config roles: - zuul: openstack-infra/zuul-jobs run: tests/base.yaml files: - ^roles/configure-mirrors/.* - ^roles/configure-unbound/.* - ^roles/emit-job-header/.* - ^roles/fetch-zuul-cloner/.* - ^roles/mirror-info/.* - ^roles/set-zuul-log-path-fact/.* - ^roles/use-cached-repos/.* - ^tests/.* - job: name: openstack-infra-base-integration-centos-7 parent: openstack-infra-base-integration nodeset: centos-7 - job: name: openstack-infra-base-integration-debian-stable parent: openstack-infra-base-integration nodeset: debian-stable - job: name: openstack-infra-base-integration-fedora-27 parent: openstack-infra-base-integration nodeset: fedora-27 - job: name: openstack-infra-base-integration-fedora-latest parent: openstack-infra-base-integration nodeset: fedora-latest - job: name: openstack-infra-base-integration-opensuse423 parent: openstack-infra-base-integration nodeset: opensuse-423 - job: name: openstack-infra-base-integration-opensuse-tumbleweed parent: openstack-infra-base-integration nodeset: opensuse-tumbleweed - job: name: openstack-infra-base-integration-ubuntu-bionic parent: openstack-infra-base-integration nodeset: ubuntu-bionic - job: name: openstack-infra-base-integration-ubuntu-trusty parent: openstack-infra-base-integration nodeset: ubuntu-trusty - job: name: openstack-infra-base-integration-ubuntu-xenial parent: openstack-infra-base-integration nodeset: ubuntu-xenial - job: name: openstack-infra-multinode-integration abstract: true protected: true description: | Runs roles that are included by default in the 'multinode' job in order to prevent regressions. This job should not be used outside the context of testing roles and playbooks found in project-config, zuul-jobs and openstack-zuul-jobs. parent: base-minimal vars: ara_generate_html: true required-projects: - openstack-infra/project-config roles: - zuul: openstack-infra/zuul-jobs run: tests/multinode.yaml files: - ^roles/configure-mirrors/.* - ^roles/configure-unbound/.* - ^roles/emit-job-header/.* - ^roles/fetch-zuul-cloner/.* - ^roles/mirror-info/.* - ^roles/set-zuul-log-path-fact/.* - ^roles/use-cached-repos/.* - ^roles/multi-node-bridge/.* - ^roles/multi-node-firewall/.* - ^roles/multi-node-hosts-file/.* - ^roles/multi-node-known-hosts/.* - ^tests/.* - ^playbooks/multinode/.* - job: name: openstack-infra-multinode-integration-centos-7 parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: centos-7 - name: secondary label: centos-7 groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: openstack-infra-multinode-integration-debian-stable parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: debian-stretch - name: secondary label: debian-stretch groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: openstack-infra-multinode-integration-fedora-27 parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: fedora-27 - name: secondary label: fedora-27 groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: openstack-infra-multinode-integration-fedora-latest parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: fedora-28 - name: secondary label: fedora-28 groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: openstack-infra-multinode-integration-opensuse423 parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: opensuse-423 - name: secondary label: opensuse-423 groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: openstack-infra-multinode-integration-opensuse-tumbleweed parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: opensuse-tumbleweed - name: secondary label: opensuse-tumbleweed groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: openstack-infra-multinode-integration-ubuntu-bionic parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: ubuntu-bionic - name: secondary label: ubuntu-bionic groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: openstack-infra-multinode-integration-ubuntu-trusty parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: ubuntu-trusty - name: secondary label: ubuntu-trusty groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: openstack-infra-multinode-integration-ubuntu-xenial parent: openstack-infra-multinode-integration nodeset: nodes: - name: primary label: ubuntu-xenial - name: secondary label: ubuntu-xenial groups: - name: switch nodes: - primary - name: peers nodes: - secondary - job: name: build-openstack-sphinx-docs parent: build-sphinx-docs branches: ^(?!driverfixes/).*$ description: | Builds documentation 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. success-url: html/ required-projects: - name: openstack/requirements # Add neutron and horizon for the neutron-horizon-hack. # TODO(AJaeger) ZOMG DELETE THIS once we neutron-horizon-hack. - name: openstack/horizon - name: openstack/neutron pre-run: playbooks/sphinx-docs/neutron-horizon-hack.yaml roles: - zuul: openstack-infra/zuul-jobs vars: constraints_file: '{{ ansible_user_dir }}/src/git.openstack.org/openstack/requirements/upper-constraints.txt' - 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: - openstack-infra/zuul - job: name: openstack-tox abstract: true 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-with-sudo parent: openstack-tox description: | Job to run tox for tests with OpenStack project specific settings such as constraints but without sudo access being revoked. run: playbooks/tox-with-sudo/run.yaml - job: name: openstack-tox-py27 parent: openstack-tox timeout: 2400 description: | Run unit tests for an OpenStack Python project under cPython version 2.7. Uses tox with the ``py27`` environment. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: py27 bindep_profile: test py27 - job: name: openstack-tox-py35 parent: openstack-tox branches: ^(?!driverfixes/).*$ timeout: 2400 description: | Run unit tests for an OpenStack project under cPython version 3.5. Uses tox with the ``py35`` environment. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ - ^deliverables/.*$ vars: tox_envlist: py35 bindep_profile: test py35 - job: name: openstack-tox-py36 parent: openstack-tox nodeset: ubuntu-bionic description: | Run unit tests for an OpenStack Python project under cPython version 3.6. Uses tox with the ``py36`` environment. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: py36 bindep_profile: test py36 - 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$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: pypy bindep_profile: test pypy - job: name: openstack-tox-linters parent: openstack-tox description: | Runs code linting tests. Uses tox with the ``linters`` environment. vars: tox_envlist: linters bindep_profile: test linters - job: name: openstack-tox-pep8 parent: openstack-tox description: | Runs code pep8 tests. Uses tox with the ``pep8`` environment. vars: tox_envlist: pep8 bindep_profile: test pep8 - job: name: openstack-tox-cover parent: tox-cover description: | Run code coverage tests. Uses tox with the ``cover`` environment. required-projects: - name: openstack/requirements irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ success-url: cover/ vars: tox_constraints_file: '{{ ansible_user_dir }}/src/git.openstack.org/openstack/requirements/upper-constraints.txt' timeout: 3000 - 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-build parent: openstack-tox description: | Run build tests. Uses tox with the ``build`` environment. vars: tox_envlist: build - job: name: openstack-tox-functional parent: openstack-tox description: | Run tox-based functional tests for an OpenStack Python project. Uses tox with the ``functional`` environment. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: functional - job: name: openstack-tox-functional-with-sudo parent: openstack-tox-with-sudo description: | Run tox-based functional tests for an OpenStack Python project. Uses tox with the ``functional`` environment. Sudo access is not revoked. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: functional - job: name: openstack-tox-functional-py35 parent: openstack-tox description: | Run tox-based functional tests for an OpenStack Python project under cPython version 3.5.. Uses tox with the ``functional-py35`` environment. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: functional-py35 - job: name: openstack-tox-validate parent: openstack-tox description: | Run validate tests. Uses tox with the ``validate`` environment. vars: tox_envlist: validate - job: name: openstack-tox-pylint parent: openstack-tox description: | Runs pylint tests. Uses tox with the ``pylint`` environment. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: pylint - job: name: openstack-tox-compare-cover parent: openstack-tox # NOTE(sambetts) This job runs the full UTs twice to compare the coverage # pre-and-post a patch so requires longer to run. timeout: 4500 description: | Run coverage comparison tests. Uses tox with the ``compare-cover`` environment. vars: tox_envlist: compare-cover - job: name: openstack-tox-snap-with-sudo parent: openstack-tox-with-sudo description: | Run tox-based functional tests for an OpenStack Python project. Uses tox with the ``snap`` environment. Sudo access is not revoked. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: snap - job: name: openstack-tox-with-oslo-master-base parent: openstack-tox-py27 timeout: 3000 description: | This job installs all oslo libraries from source and tests that the unit tests of the tested project work. required-projects: - openstack/automaton - openstack/debtcollector - openstack/futurist - openstack/osprofiler - openstack/oslo.cache - openstack/oslo.concurrency - openstack/oslo.config - openstack/oslo.context - openstack/oslo.db - openstack/oslo.i18n - openstack/oslo.log - openstack/oslo.messaging - openstack/oslo.middleware - openstack/oslo.policy - openstack/oslo.privsep - openstack/oslo.reports - openstack/oslo.rootwrap - openstack/oslo.serialization - openstack/oslo.service - openstack/oslo.utils - openstack/oslo.versionedobjects - openstack/oslo.vmware - openstack/oslosphinx - openstack/oslotest - openstack/pycadf - openstack/stevedore - openstack/taskflow - openstack/tooz - openstack-dev/pbr vars: tox_install_siblings: true - job: name: openstack-tox-py27-with-oslo-master parent: openstack-tox-with-oslo-master-base description: | This job installs all oslo libraries from source and tests that the unit tests of the tested project work. It uses the tox ``py27`` environment. The job is normally run in a periodic pipeline, it is configured to run on the master branch. branches: master vars: tox_envlist: py27 bindep_profile: test py27 - job: name: openstack-tox-py35-with-oslo-master parent: openstack-tox-with-oslo-master-base description: | This job installs all oslo libraries from source and tests that the unit tests of the tested project work. It uses the tox ``py35`` environment. The job is normally run in a periodic pipeline, it is configured to run on the master branch. branches: master vars: tox_envlist: py35 bindep_profile: test py35 - job: name: openstack-tox-py35-with-neutron-lib-master parent: openstack-tox-py35 timeout: 3000 description: | This job installs neutron-lib from source and tests that the unit tests of the tested project work. It uses the tox ``py35`` environment. The job is normally run in a periodic pipeline, it is configured to run on the master branch. branches: master required-projects: - openstack/neutron - openstack/neutron-lib vars: tox_install_siblings: true - job: name: openstack-tox-py35-with-ovsdbapp-master parent: openstack-tox-py35 timeout: 3000 description: | This job installs ovsdbapp from source and tests that the unit tests of the tested project work. It uses the tox ``py35`` environment. The job is normally run in a periodic pipeline, it is configured to run on the master branch. branches: master required-projects: - openstack/ovsdbapp vars: tox_install_siblings: true - job: name: openstack-tox-lower-constraints parent: openstack-tox branches: ^(?!driverfixes/).*$ timeout: 2400 description: | Run unit tests using the lower constraints. Uses tox with the ``lower-constraints`` environment, which should be configured to use Python 3 by default unless the project does not support Python 3. irrelevant-files: - ^.*\.rst$ - ^api-ref/.*$ - ^doc/.*$ - ^releasenotes/.*$ vars: tox_envlist: lower-constraints bindep_profile: test py35 - job: name: build-openstack-puppet-tarball description: | Build a puppet tarball but do not upload it anywhere. pre-run: playbooks/puppet-tarball/pre.yaml run: playbooks/puppet-tarball/run.yaml files: ^metadata.json$ - job: name: publish-openstack-puppet-branch-tarball parent: publish-openstack-artifacts description: | Publish the results of the puppet-tarball job to tarballs.openstack.org. pre-run: playbooks/puppet-tarball/pre.yaml run: playbooks/puppet-tarball/run.yaml post-run: playbooks/puppet-branch-tarball/post.yaml - job: name: publish-openstack-python-tarball parent: publish-openstack-artifacts description: | Publish the results of the tox-tarball job to tarballs.openstack.org. run: playbooks/python-tarball/run.yaml post-run: playbooks/python-tarball/post.yaml - job: name: publish-openstack-javascript-tarball parent: publish-openstack-artifacts description: | Build and publish source tarball for a Javascript project. Responds to these variables: .. zuul:jobvar:: node_version :default: 6 The version of Node to use. .. zuul:jobvar: zuul_work_dir :default: {{ zuul.project.src_dir }} Path to operate in. pre-run: playbooks/javascript/pre.yaml run: playbooks/javascript/tarball.yaml post-run: - playbooks/javascript/post.yaml - playbooks/javascript/post-tarball.yaml - job: name: announce-release description: Send a release announcement after publishing a project pre-run: playbooks/release/pre.yaml run: playbooks/release/announce.yaml required-projects: - openstack/releases - job: name: xstatic-check-version description: Check version used by xstatic packages run: playbooks/xstatic/check-version.yaml - job: name: build-openstack-releasenotes branches: ^(?!driverfixes/).*$ parent: build-reno-releasenotes description: | Build releasenotes, with optional translation support, using reno. timeout: 1800 required-projects: - name: openstack/requirements vars: constraints_file: '{{ ansible_user_dir }}/src/git.openstack.org/openstack/requirements/upper-constraints.txt' - job: name: build-openstack-api-ref parent: build-openstack-sphinx-docs description: | Build api-ref document. This is only run on master branch of a project. timeout: 1800 vars: sphinx_build_dir: api-ref/build sphinx_source_dir: api-ref/source # We only publish the master branch, so no need to run # for changes on other branches. branches: master files: - ^os_api_ref/.* - ^api-ref/.* - ^doc/api_samples/.* - bindep.txt - doc/requirements.txt - test-requirements.txt - job: name: build-openstack-api-guide parent: build-openstack-sphinx-docs description: | Build api-guide document. This is only run for changes on master branch of a project. vars: sphinx_build_dir: api-guide/build sphinx_source_dir: api-guide/source # We only publish the master branch, so no need to run # for changes on other branches. branches: master files: - ^api-guide/.* - bindep.txt - doc/requirements.txt - test-requirements.txt - job: name: build-openstack-deploy-guide parent: build-openstack-sphinx-docs description: | Build deploy-guide document. vars: sphinx_build_dir: deploy-guide/build sphinx_source_dir: deploy-guide/source files: - ^deploy-guide/.* - bindep.txt - doc/requirements.txt - test-requirements.txt - job: name: build-openstack-install-guide parent: build-openstack-sphinx-docs description: | Build install-guide document. vars: sphinx_build_dir: install-guide/build sphinx_source_dir: install-guide/source # This job runs only pre-pike, with pike the documents have been # integrated into normal builds. branches: - stable/newton - stable/ocata files: - ^install-guide/.* - bindep.txt - doc/requirements.txt - test-requirements.txt - job: name: build-placement-api-ref parent: build-openstack-sphinx-docs description: | Build placement-api-ref document. This job runs only on master branch. # We only publish the master branch, so no need to run # for changes on other branches. branches: master vars: sphinx_build_dir: placement-api-ref/build sphinx_source_dir: placement-api-ref/source files: - ^placement-api-ref/.* - bindep.txt - doc/requirements.txt - test-requirements.txt - job: name: legacy-base abstract: true description: | Base job for autoconverted legacy jobs pre-run: playbooks/legacy/pre.yaml nodeset: legacy-ubuntu-xenial - job: name: legacy-dsvm-base abstract: true 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.yaml 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/tripleo-heat-templates - openstack/tripleo-image-elements - openstack/zaqar - job: name: legacy-dsvm-base-multinode abstract: true parent: legacy-dsvm-base description: | Base job for multinode devstack jobs. Will setup firewall rules on all the nodes allowing them to talk to each other. roles: - zuul: openstack-infra/zuul-jobs pre-run: playbooks/legacy/multinode-networking/pre.yaml - job: name: legacy-puppet-openstack-integration abstract: true 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.yaml 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-modulesync-configs - openstack/puppet-monasca - openstack/puppet-murano - openstack/puppet-neutron - openstack/puppet-nova - openstack/puppet-octavia - openstack/puppet-openstack-cookiecutter - 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 abstract: true parent: publish-openstack-artifacts description: | Base job for autoconverted legacy jobs that publish artifacts nodeset: devstack-single-node pre-run: playbooks/legacy/pre.yaml - 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 - tools/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 tox_environment: GRAFYAML_SRC: "{{ ansible_user_dir }}/{{ zuul.projects['git.openstack.org/openstack-infra/grafyaml'].src_dir }}" required-projects: - openstack-infra/grafyaml files: - ^grafana/.*$ - bindep.txt - other-requirements.txt - 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 - ^nodepool/nl.*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.yaml post-run: playbooks/package-afs-centos/post.yaml nodeset: centos-7 - job: name: openstack-zuul-jobs-linters parent: tox description: | This job runs against project-config, openstack-zuul-jobs and zuul-jobs so we can properly lint our ansible playbooks / roles required-projects: - openstack-infra/openstack-zuul-jobs - openstack-infra/project-config - openstack-infra/zuul-jobs vars: tox_envlist: linters tox_environment: ANSIBLE_ROLES_PATH: ~/src/git.openstack.org/openstack-infra/zuul-jobs/roles:~/src/git.openstack.org/openstack-infra/openstack-zuul-jobs/roles:~/src/git.openstack.org/openstack-infra/project-config/roles - job: name: infra-puppet-apply-base timeout: 1800 required-projects: - openstack-infra/system-config - openstack-infra/ansible-role-puppet - openstack-infra/puppet-accessbot - openstack-infra/puppet-ansible - openstack-infra/puppet-apparmor - openstack-infra/puppet-askbot - openstack-infra/puppet-asterisk - openstack-infra/puppet-bandersnatch - openstack-infra/puppet-bugdaystats - openstack-infra/puppet-bup - openstack-infra/puppet-cgit - openstack-infra/puppet-ciwatch - openstack-infra/puppet-diskimage_builder - openstack-infra/puppet-docker_registry - openstack-infra/puppet-drupal - openstack-infra/puppet-elastic_recheck - openstack-infra/puppet-elasticsearch - openstack-infra/puppet-ethercalc - openstack-infra/puppet-etherpad_lite - openstack-infra/puppet-exim - openstack-infra/puppet-featuretracker - openstack-infra/puppet-germqtt - openstack-infra/puppet-gerrit - openstack-infra/puppet-gerritbot - openstack-infra/puppet-github - openstack-infra/puppet-grafyaml - openstack-infra/puppet-graphite - openstack-infra/puppet-haveged - openstack-infra/puppet-hound - openstack-infra/puppet-httpd - openstack-infra/puppet-infracloud - openstack-infra/puppet-infra-cookiecutter - openstack-infra/puppet-ipsilon - openstack-infra/puppet-iptables - openstack-infra/puppet-jeepyb - openstack-infra/puppet-jenkins - openstack-infra/puppet-kerberos - openstack-infra/puppet-kibana - openstack-infra/puppet-lodgeit - openstack-infra/puppet-log_processor - openstack-infra/puppet-logrotate - openstack-infra/puppet-logstash - openstack-infra/puppet-lpmqtt - openstack-infra/puppet-mailman - openstack-infra/puppet-mediawiki - openstack-infra/puppet-meetbot - openstack-infra/puppet-mosquitto - openstack-infra/puppet-mqtt_statsd - openstack-infra/puppet-mysql_backup - openstack-infra/puppet-nodepool - openstack-infra/puppet-odsreg - openstack-infra/puppet-openafs - openstack-infra/puppet-openstackci - openstack-infra/puppet-openstack_health - openstack-infra/puppet-openstackid - openstack-infra/puppet-openstack_infra_spec_helper - openstack-infra/puppet-os_client_config - openstack-infra/puppet-packagekit - openstack-infra/puppet-pgsql_backup - openstack-infra/puppet-phabricator - openstack-infra/puppet-pip - openstack-infra/puppet-planet - openstack-infra/puppet-project_config - openstack-infra/puppet-ptgbot - openstack-infra/puppet-puppet - openstack-infra/puppet-redis - openstack-infra/puppet-refstack - openstack-infra/puppet-releasestatus - openstack-infra/puppet-reviewday - openstack-infra/puppet-simpleproxy - openstack-infra/puppet-snmpd - openstack-infra/puppet-ssh - openstack-infra/puppet-ssl_cert_check - openstack-infra/puppet-stackalytics - openstack-infra/puppet-statusbot - openstack-infra/puppet-storyboard - openstack-infra/puppet-subunit2sql - openstack-infra/puppet-sudoers - openstack-infra/puppet-tmpreaper - openstack-infra/puppet-translation_checksite - openstack-infra/puppet-ulimit - openstack-infra/puppet-unattended_upgrades - openstack-infra/puppet-unbound - openstack-infra/puppet-user - openstack-infra/puppet-vcsrepo - openstack-infra/puppet-vinz - openstack-infra/puppet-yum - openstack-infra/puppet-zanata - openstack-infra/puppet-zuul pre-run: playbooks/infra-puppet-apply/pre.yaml run: playbooks/infra-puppet-apply/run.yaml post-run: playbooks/infra-puppet-apply/post.yaml - job: name: infra-puppet-apply-3-ubuntu-xenial parent: infra-puppet-apply-base - job: name: infra-puppet-apply-3-centos-7 parent: infra-puppet-apply-base nodeset: centos-7 - job: name: infra-puppet-apply-3-ubuntu-trusty parent: infra-puppet-apply-base nodeset: ubuntu-trusty branches: master - job: name: infra-puppet-apply-4-centos-7 parent: infra-puppet-apply-base nodeset: centos-7 vars: puppet_version: 4 - job: name: infra-puppet-apply-4-ubuntu-xenial parent: infra-puppet-apply-base vars: puppet_version: 4 - job: name: puppet-beaker-rspec-infra description: | Base job for beaker-rspec tests for Infra's puppet modules nodeset: devstack-single-node run: playbooks/infra-puppet-beaker-rspec/run.yaml vars: nodeset: nodepool-xenial project_src_dir: "{{ zuul.project.src_dir }}" timeout: 3600 irrelevant-files: - ^.*\.md$ - ^.*\.rst$ - ^doc/.*$ - ^etc/.*$ - ^metadata.json$ - ^releasenotes/.*$ - ^test-requirements.txt$ required-projects: - openstack-infra/project-config - openstack-infra/system-config - openstack-infra/puppet-openstack_infra_spec_helper - openstack-infra/puppet-bugdaystats - openstack-infra/puppet-mysql_backup - openstack-infra/puppet-openstackci - openstack-infra/puppet-zuul - openstack-infra/puppet-mqtt_statsd - openstack-infra/puppet-meetbot - openstack-infra/puppet-hound - openstack-infra/puppet-pip - openstack-infra/puppet-os_client_config - openstack-infra/puppet-openstackid - openstack-infra/puppet-bandersnatch - openstack-infra/puppet-project_config - openstack-infra/puppet-grafyaml - openstack-infra/puppet-refstack - openstack-infra/puppet-github - openstack-infra/puppet-ethercalc - openstack-infra/puppet-unattended_upgrades - openstack-infra/puppet-openafs - openstack-infra/puppet-httpd - openstack-infra/puppet-drupal - openstack-infra/puppet-subunit2sql - openstack-infra/puppet-reviewday - openstack-infra/puppet-kibana - openstack-infra/puppet-redis - openstack-infra/puppet-phabricator - openstack-infra/puppet-ssl_cert_check - openstack-infra/puppet-lpmqtt - openstack-infra/puppet-germqtt - openstack-infra/puppet-cgit - openstack-infra/puppet-packagekit - openstack-infra/puppet-haveged - openstack-infra/puppet-graphite - openstack-infra/puppet-diskimage_builder - openstack-infra/puppet-sudoers - openstack-infra/puppet-stackalytics - openstack-infra/puppet-zanata - openstack-infra/puppet-logstash - openstack-infra/puppet-gerritbot - openstack-infra/puppet-asterisk - openstack-infra/puppet-statusbot - openstack-infra/puppet-gerrit - openstack-infra/puppet-mediawiki - openstack-infra/puppet-mailman - openstack-infra/puppet-exim - openstack-infra/puppet-tmpreaper - openstack-infra/puppet-elastic_recheck - openstack-infra/puppet-ulimit - openstack-infra/puppet-planet - openstack-infra/puppet-nodepool - openstack-infra/puppet-logrotate - openstack-infra/puppet-infracloud - openstack-infra/puppet-elasticsearch - openstack-infra/puppet-unbound - openstack-infra/puppet-storyboard - openstack-infra/puppet-openstack_health - openstack-infra/puppet-kerberos - openstack-infra/puppet-odsreg - openstack-infra/puppet-askbot - openstack-infra/puppet-log_processor - openstack-infra/puppet-simpleproxy - openstack-infra/puppet-iptables - openstack-infra/puppet-lodgeit - openstack-infra/puppet-etherpad_lite - openstack-infra/puppet-mosquitto - openstack-infra/puppet-bup - openstack-infra/puppet-pgsql_backup - openstack-infra/puppet-ansible - openstack-infra/puppet-ssh - openstack-infra/puppet-snmpd - openstack-infra/puppet-user - openstack-infra/puppet-jeepyb - openstack-infra/puppet-accessbot - openstack-infra/puppet-ptgbot - openstack-infra/puppet-jenkins - job: name: puppet-beaker-rspec-centos-7-infra parent: puppet-beaker-rspec-infra nodeset: centos-7 vars: nodeset: nodepool-centos7 - job: name: puppet-beaker-rspec-puppet-4-infra parent: puppet-beaker-rspec-infra description: | Run beaker-rspec functional tests with puppet 4 on Ubuntu Xenial vars: puppet_version: 4 - job: name: puppet-beaker-rspec-puppet-4-centos-7-infra parent: puppet-beaker-rspec-centos-7-infra description: | Run beaker-rspec functional tests with puppet 4 on CentOS 7 vars: puppet_version: 4 - job: name: openstackci-beaker parent: puppet-beaker-rspec-infra vars: project_src_dir: "{{ zuul.projects['git.openstack.org/openstack-infra/puppet-openstackci'].src_dir }}" - job: name: openstackci-beaker-centos-7 parent: openstackci-beaker nodeset: centos-7 vars: nodeset: nodepool-centos7 - job: name: openstackci-beaker-ubuntu-trusty parent: openstackci-beaker nodeset: ubuntu-trusty vars: nodeset: nodepool-trusty - job: name: openstackci-beaker-puppet-4 parent: openstackci-beaker description: | Run beaker-rspec functional tests with puppet 4 on Ubuntu Xenial for the puppet-openstackci module vars: puppet_version: 4 - job: name: openstackci-beaker-puppet-4-centos-7 parent: openstackci-beaker-centos-7 description: | Run beaker-rspec functional tests with puppet 4 on CentOS 7 for the puppet-openstackci module vars: puppet_version: 4 - job: name: ansible-role-functional-base abstract: true parent: tox description: | Run functional functional tests for ansible-role projects. Uses tox with the ``functional`` environment. pre-run: playbooks/ansible-role-functional/pre.yaml run: playbooks/tox-with-sudo/run.yaml vars: tox_envlist: functional - job: name: ansible-role-functional-centos-7 parent: ansible-role-functional-base nodeset: centos-7 - job: name: ansible-role-functional-ubuntu-xenial parent: ansible-role-functional-base - job: name: golang-base parent: unittests abstract: true description: | Base job for golang tests. pre-run: playbooks/golang/pre.yaml run: playbooks/golang/run.yaml - job: name: golang-fmt parent: golang-base description: | Run golang fmt test. This uses the make target ``fmt``. vars: golang_target: "fmt" - job: name: golang-unit parent: golang-base description: | Run golang unit test. This uses the make target ``test``. vars: golang_target: "test" - job: name: kata-runsh parent: base description: | Run kata's setup.sh and run.sh CI scripts pre-run: playbooks/kata-runsh/pre.yaml run: playbooks/kata-runsh/run.yaml post-run: playbooks/kata-runsh/post.yaml timeout: 3600 nodeset: nodes: - name: ubuntu-xenial label: ubuntu-xenial-vexxhost - job: name: kata-runsh-fedora-28 parent: kata-runsh nodeset: nodes: - name: fedora-28 label: fedora-28-vexxhost