blob: bd707c2b3928a6841ee7b06c9e1cf4911df98acb [file] [log] [blame]
---
# Changes to this job require a special procedure, because they can
# not be tested before landing, and if they are faulty, they will
# break all jobs, meaning subsequent corrections will not be able to
# land. To make a change:
#
# 1) Ensure that base-minimal-test and its playbooks are identical to
# base-minimal.
# 2) Make the change to base-minimal-test and/or its playbooks.
# 3) Merge the change from step 2. No jobs normally use
# base-minimal-test, so this is safe.
# 4) Propose a change to a job to reparent it to base-minimal-test.
# Choose a job which will exercise whatever you are changing. The
# "unittests" job in zuul-jobs is a good choice. Use [DNM] in the
# commit subject so that people know not to merge the change. Set
# it to "Work in progress" so people don't review it.
# 5) Once test results arrive for the change in step 2, make a change
# which copies the job and/or playbooks of base-minimal-test to
# base-minimal. In the commit message, link to (without using
# Depends-On:) the change from step 4 so reviewers can see the
# test results.
# 6) Once the change in step 5 merges, abandon the change from step 4.
#
- job:
name: base-minimal
parent: null
abstract: true
description: |
The base job for RDO's installation of Zuul.
All jobs ultimately inherit from this. It runs a pre-playbook
which copies all of the job's prepared git repos on to all of
the nodes in the nodeset. It runs a post-playbook which copies
all of the files in the logs/ subdirectory of the executor
work directory to the logserver.
It also sets default timeout and nodeset values (which may be
overidden).
pre-run: playbooks/base-minimal/pre.yaml
post-run:
- playbooks/base-minimal/post-ssh.yaml
- playbooks/base-minimal/post-logs.yaml
roles:
- zuul: zuul/zuul-jobs
- zuul: rdo-jobs
timeout: 1800
post-timeout: 5400
nodeset: rdo-centos-8-stream
secrets:
- secret: site_logserver
name: site_logs
# See the procedure described above "base-minimal" before making changes to
# this job.
- job:
name: base-minimal-test
parent: null
abstract: true
description: |
A job to test changes to the base job without disturbing the
main job in production. Not for general use.
pre-run: playbooks/base-minimal-test/pre.yaml
post-run:
- playbooks/base-minimal-test/post-ssh.yaml
- playbooks/base-minimal-test/post-logs.yaml
roles:
- zuul: zuul/zuul-jobs
- zuul: rdo-jobs
timeout: 1800
post-timeout: 5400
nodeset: rdo-centos-8-stream
secrets:
- secret: site_logserver
name: site_logs
- job:
name: distgit-cbs-validate
description: |
A job to validate cbs builds.
pre-run: playbooks/distgit-cbs-validate/pre.yaml
run: playbooks/distgit-cbs-validate/run.yaml
post-run: playbooks/distgit-cbs-validate/post.yaml
required-projects:
- name: gating_scripts
nodeset: rdo-centos-9-stream
vars:
centos_releasever: 9
secrets:
- koji_centos
- job:
name: distgit-cbs-final-build
description: |
A job to for cbs final builds.
pre-run: playbooks/distgit-cbs-validate/pre.yaml
run: playbooks/distgit-cbs-final-build/run.yaml
post-run: playbooks/distgit-cbs-validate/post.yaml
required-projects:
- name: gating_scripts
nodeset: rdo-centos-9-stream
vars:
centos_releasever: 9
secrets:
- koji_centos
- job:
name: distgit-cbs-validate-centos8-stream
parent: distgit-cbs-validate
nodeset: rdo-centos-8-stream
branches: ^(victoria-rdo|wallaby-rdo|xena-rdo|yoga-rdo)$
vars:
centos_releasever: 8
- job:
name: distgit-cbs-validate-centos9
parent: distgit-cbs-validate
branches: ^(yoga-rdo|zed-rdo|antelope-rdo|bobcat-rdo|caracal-rdo)$
vars:
centos_releasever: 9
- job:
name: deps-cbs-validate
parent: distgit-cbs-validate
run: playbooks/deps-cbs-validate/run.yaml
nodeset: rdo-centos-9-stream
branches: ^(c[8|9]s-.*-rdo)$
timeout: 5400
- job:
name: deps-cbs-final-build
parent: distgit-cbs-validate
run: playbooks/deps-cbs-final-build/run.yaml
nodeset: rdo-centos-9-stream
branches: ^(c[8|9]s-.*-rdo)$
timeout: 5400
secrets:
- secret: rdobuilder_ssh_key
name: rdobuilder_ssh_key
- job:
name: distgit-cbs-final-build-centos8
parent: distgit-cbs-final-build
nodeset: rdo-centos-8-stream
branches: ^(victoria-rdo|wallaby-rdo|xena-rdo|yoga-rdo)$
vars:
centos_releasever: 8
- job:
name: distgit-cbs-final-build-centos9
parent: distgit-cbs-final-build
branches: ^(yoga-rdo|zed-rdo|antelope-rdo|bobcat-rdo|caracal-rdo)$
vars:
centos_releasever: 9
- job:
name: centos-opstools-distgit-cbs-base
description: |
A base job to set up certs for opstools-distgit jobs.
pre-run: playbooks/centos-opstools-distgit-cbs-base/pre.yaml
abstract: true
nodeset: rdo-centos-8-stream
secrets:
- cbs_opstools
- job:
name: publish-cico-jjb
description: |
A job to update ci.centos.org jenkins jobs.
final: true
run: playbooks/publish-cico-jjb/run.yaml
required-projects:
- name: rdo-infra/ci-config
nodeset: rdo-centos-8-stream
secrets:
- sig_jenkins
- job:
name: rdoinfo-buildsys-tags-update-testing
parent: base
description: |
This job updates -candidate buildsys tags to -testing.
final: true
pre-run:
- playbooks/distgit-cbs-validate/pre.yaml
- playbooks/rdoinfo/buildsys-tags-update/pre.yaml
run: playbooks/rdoinfo/buildsys-tags-update/run.yaml
vars:
rdoinfo_phase: testing
supported_releases: dalmatian,9s caracal,9s bobcat,9s antelope,9s zed,9s yoga,9s yoga,8s xena,9s xena,8s wallaby,9s wallaby,8s
master_release: dalmatian
nodeset: rdo-centos-9-stream
timeout: 3600
required-projects:
- name: gating_scripts
- name: graffiti
- name: rdoinfo
- name: rdo-infra/releng
secrets:
- koji_centos
- rdoinfo_ssh
- job:
name: rdoinfo-buildsys-tags-update-release
parent: base
description: |
This job updates -testing buildsys tags to -release.
final: true
pre-run:
- playbooks/distgit-cbs-validate/pre.yaml
- playbooks/rdoinfo/buildsys-tags-update/pre.yaml
run: playbooks/rdoinfo/buildsys-tags-update/run.yaml
vars:
rdoinfo_phase: release
supported_releases: caracal,9s bobcat,9s antelope,9s zed,9s yoga,9s yoga,8s xena,8s wallaby,8s
master_release: dalmatian
nodeset: rdo-centos-9-stream
timeout: 3600
required-projects:
- name: gating_scripts
- name: graffiti
- name: rdoinfo
- name: rdo-infra/releng
secrets:
- koji_centos
- rdoinfo_ssh
- job:
name: rdoinfo-upper-constraints-update
parent: base
description: |
This job syncs rdoinfo tags with upper-constraints.
final: true
pre-run: playbooks/rdoinfo/buildsys-tags-update/pre.yaml
run: playbooks/rdoinfo/upper-constraints-update/run.yaml
nodeset: rdo-centos-9-stream
required-projects:
- name: rdoinfo
- name: rdo-infra/releng
secrets:
- rdoinfo_ssh
- job:
name: update-buildsys-tags
parent: base
description: |
This job tags builds in CBS as per rdoinfo changes
final: true
pre-run: playbooks/distgit-cbs-validate/pre.yaml
run: playbooks/rdoinfo/update-buildsys-tags.yaml
timeout: 10800
nodeset: rdo-centos-9-stream
required-projects:
- name: gating_scripts
- name: graffiti
- name: rdoinfo
secrets:
- koji_centos
- job:
name: rdo-send-stable-release
parent: base
description: |
This job send reviews in stable branches based on new releases
final: true
pre-run: playbooks/rdoinfo/buildsys-tags-update/pre.yaml
run: playbooks/rdo/send-stable-release.yaml
timeout: 5400
nodeset: rdo-centos-9-stream
required-projects:
- name: rdoinfo
- name: rdo-infra/releng
- name: opendev.org/openstack/releases
secrets:
- rdoinfo_ssh
- job:
name: rdoinfo-create-project
parent: base
pre-run: playbooks/rdoinfo/create-project/pre.yaml
run: playbooks/rdoinfo/create-project/run.yaml
required-projects:
- name: rdoinfo
nodeset: rdo-centos-9-stream
secrets:
- rdoinfo_ssh
- job:
name: config-distgit-mirror-github
parent: base
pre-run: playbooks/config/distgit-mirror-github/pre.yaml
run: playbooks/config/distgit-mirror-github/run.yaml
required-projects:
- name: config
- name: rdoinfo
- name: rdo_gating_scripts
nodeset: rdo-centos-9-stream
secrets:
- github
- job:
name: rdo-deps-uc-send-review
parent: base
pre-run: playbooks/rdo-deps-uc-send-review/pre.yaml
run: playbooks/rdo-deps-uc-send-review/run.yaml
timeout: 3600
required-projects:
- gating_scripts
- rdo-infra/releng
nodeset: rdo-centos-9-stream
secrets:
- rdoinfo_ssh
- semaphore:
name: semaphore-config-update
max: 1
- job:
name: config-check
parent: base
final: true
allowed-projects:
- config
description: Validate the config repo.
run: playbooks/config/check.yaml
post-run: playbooks/config/check-fetch-artifacts.yaml
secrets:
- service_user
vars:
zuul_log_url: "https://review.rdoproject.org/logs"
gateway_url: "https://review.rdoproject.org"
tenant_config: True
master_sf_url: https://softwarefactory-project.io
nodeset:
nodes: []
- job:
name: config-update
parent: base
final: true
allowed-projects:
- config
description: Deploy config repo update.
run: playbooks/config/config-update.yaml
secrets:
- site_install_server
- site_tenant_update
semaphore: semaphore-config-update
nodeset:
nodes: []
- job:
name: publish-rdoproject-artifacts
post-run: playbooks/publish-rdoproject-artifacts/post.yaml
nodeset: rdo-centos-7
secrets:
- secret: site_images_vexxhost
name: fileserver
- job:
name: nfvinfo-buildsys-tags-update-testing
parent: base
description: |
This job updates -candidate buildsys tags to -testing for NFV SIG.
final: true
pre-run:
- playbooks/distgit-cbs-validate/pre.yaml
- playbooks/nfvinfo/buildsys-tags-update/pre.yaml
run: playbooks/nfvinfo/buildsys-tags-update/run.yaml
vars:
rdoinfo_phase: testing
nodeset: rdo-centos-9-stream
timeout: 3600
required-projects:
- name: gating_scripts
- name: graffiti
- name: nfvinfo
- name: rdo-infra/releng
secrets:
- koji_centos
- rdoinfo_ssh
- job:
name: nfvinfo-buildsys-tags-update-release
parent: base
description: |
This job updates -candidate buildsys tags to -testing for NFV SIG.
final: true
pre-run:
- playbooks/distgit-cbs-validate/pre.yaml
- playbooks/nfvinfo/buildsys-tags-update/pre.yaml
run: playbooks/nfvinfo/buildsys-tags-update/run.yaml
vars:
rdoinfo_phase: release
nodeset: rdo-centos-9-stream
timeout: 3600
required-projects:
- name: gating_scripts
- name: graffiti
- name: nfvinfo
- name: rdo-infra/releng
secrets:
- koji_centos
- rdoinfo_ssh
- job:
name: weirdo-base-promote-dlrn
parent: base
abstract: true
run: playbooks/rdo/promote.yaml
required-projects:
- name: config
secrets:
- dlrnapi
- job:
name: build-releng-container-image
parent: base
description: |
Job to build the RDO toolbox container image
run: playbooks/releng-container-image/run.yaml
required-projects:
- review.rdoproject.org/rdo-infra/releng
nodeset: rdo-centos-9-stream
vars:
push_to_registry: false
context: .
container_filename: Containerfile
registry: quay.io
repository: quay.io/rdoinfra/rdo-toolbox
tags:
- latest
secrets:
- quay_io_rdo_infra_orga
- job:
name: build-and-push-releng-container-image
parent: build-releng-container-image
description: |
Job to build and push the RDO toolbox container image
vars:
push_to_registry: true
upload_container_image_promote: false