- job: name: puppet-beaker-rspec-puppet-4-infra-system-config parent: puppet-beaker-rspec-puppet-4-infra vars: project_src_dir: "{{ zuul.project.src_dir }}/modules/openstack_project" # Image building jobs - secret: name: system-config-dockerhub data: username: opendevzuul password: !encrypted/pkcs1-oaep - FF2mwsdYo4b9QI/kEmeFdZS32I+OJUac2xy4JEQJaIevRK9E3rQ/11cBn7xX6zelA/htY hENMM1gGTYO8BKgTVNijFfCiVCTYFJ9efsOrSeMdj2aLcq/OkZFeq8gMHAZDv+3qaiggq hbDmldgSouNahhJByWMsDjYqnItfR8w1dYisNQBkDEJdNW5+Cin5WgHRYv2skui9pjumU vWHjwLbITLEjb0hwVErggAzvED4x0UjNEMfb6KCpoXeKdlCaI8h1DXVD9RdQ4s1WvUCro xwl4AIUyCmdtXbqW787PQ4j8BgdOi8RD40ZTSxpoV/bwT+/NrP3Jj2KVYdEKQJimzXnwL goDclapu9aFrAaqwWSnWCRc7GQptSZ7DBXmA7MsNinBclWHX/chX5k9Q1+XifAhmKJZqP ovkzEGtmUjTQZFjvuCtFxIWZEGVtGHDmgEkzevgVCeuHDTeIDlkAvA3+TT+/A70zyYdbP EHOTSSjCU6RSlJxAXjNb5pzKjpeT7PyX2f4/8Zn3JnwTlfPJ0C7qdEYjQ54hbsKynjrpQ 7f6NN9pAeQS1pid5J7oH4f7YaKM78pnhoTxRl3LmeitIlAG+zCpiT4J+se2eG27ep4aUA bYuO0L+KBosY6DcvEbR9TqkYLPgJuEPi/6SQr9bBOldEspXXAv9msyCB4VMhVU= - job: name: system-config-build-image parent: opendev-build-docker-image dependencies: opendev-buildset-registry abstract: true vars: docker_mirror_base_url: "http://{{ zuul_site_mirror_fqdn }}/deb-docker" zuul_work_dir: /home/zuul/src/opendev.org/opendev/system-config - job: name: system-config-upload-image parent: opendev-upload-docker-image dependencies: opendev-buildset-registry abstract: true vars: zuul_work_dir: /home/zuul/src/opendev.org/opendev/system-config secrets: name: docker_credentials secret: system-config-dockerhub pass-to-parent: true - job: name: system-config-promote-image parent: opendev-promote-docker-image abstract: true secrets: name: docker_credentials secret: system-config-dockerhub pass-to-parent: true # Jinja-init jobs - job: name: system-config-build-image-jinja-init description: Build a jinja-init image. parent: system-config-build-image requires: python-base-3.7-container-image provides: jinja-init-container-image vars: &jinja-init_vars docker_images: - context: docker/jinja-init target: jinja-init repository: opendevorg/jinja-init files: &jinja-init_files - docker/jinja-init/.* - docker/python-base/.* - job: name: system-config-upload-image-jinja-init description: Build and upload a jinja-init image. parent: system-config-upload-image requires: python-base-3.7-container-image provides: jinja-init-container-image vars: *jinja-init_vars files: *jinja-init_files - job: name: system-config-promote-image-jinja-init description: Promote a previously published jinja-init image to latest. parent: system-config-promote-image vars: *jinja-init_vars files: *jinja-init_files # Gitea-init jobs - job: name: system-config-build-image-gitea-init description: Build a gitea-init image. parent: system-config-build-image requires: jinja-init-container-image vars: &gitea-init_vars docker_images: - context: docker/gitea-init target: gitea-init repository: opendevorg/gitea-init files: &gitea-init_files - docker/gitea-init/.* - docker/jinja-init/.* - docker/python-base/.* - job: name: system-config-upload-image-gitea-init description: Build and upload a gitea-init image. parent: system-config-upload-image requires: jinja-init-container-image vars: *gitea-init_vars files: *gitea-init_files - job: name: system-config-promote-image-gitea-init description: Promote a previously published gitea-init image to latest. parent: system-config-promote-image vars: *gitea-init_vars files: *gitea-init_files # Gitea jobs - job: name: system-config-build-image-gitea description: Build a gitea image. parent: system-config-build-image vars: &gitea_vars docker_images: - context: docker/gitea target: gitea repository: opendevorg/gitea - context: docker/gitea target: gitea-openssh repository: opendevorg/gitea-openssh # Duplicate in the run-gitea job files: &gitea_files - docker/gitea/.* - job: name: system-config-upload-image-gitea description: Build and upload a gitea image. parent: system-config-upload-image vars: *gitea_vars files: *gitea_files - job: name: system-config-promote-image-gitea description: Promote a previously published gitea image to latest. parent: system-config-promote-image vars: *gitea_vars files: *gitea_files # Etherpad jobs - job: name: system-config-build-image-etherpad description: Build a etherpad image. provides: etherpad-container-image parent: system-config-build-image vars: ðerpad_vars docker_images: - context: docker/etherpad repository: opendevorg/etherpad files: ðerpad_files - docker/etherpad/.* - job: name: system-config-upload-image-etherpad description: Build and upload a etherpad image. provides: etherpad-container-image parent: system-config-upload-image vars: *etherpad_vars files: *etherpad_files - job: name: system-config-promote-image-etherpad description: Promote a previously published etherpad image to latest. parent: system-config-promote-image vars: *etherpad_vars files: *etherpad_files # Jitsi-meet jobs - job: name: system-config-build-image-jitsi-meet description: Build jitsi-meet images parent: system-config-build-image provides: jitsi-meet-container-image vars: &jitsi-meet_vars docker_images: - context: docker/jitsi-meet target: web repository: opendevorg/jitsi-meet-web - context: docker/jitsi-meet target: prosody repository: opendevorg/jitsi-meet-prosody files: &jitsi-meet_files - docker/jitsi-meet/.* - job: name: system-config-upload-image-jitsi-meet description: Build and upload a jitsi-meet image. parent: system-config-upload-image requires: python-base-container-image provides: jitsi-meet-container-image vars: *jitsi-meet_vars files: *jitsi-meet_files - job: name: system-config-promote-image-jitsi-meet description: Promote a previously published jitsi-meet image to latest. parent: system-config-promote-image vars: *jitsi-meet_vars files: *jitsi-meet_files # Haproxy-statsd jobs - job: name: system-config-build-image-haproxy-statsd description: Build a haproxy-statsd image. parent: system-config-build-image requires: python-base-3.7-container-image vars: &haproxy-statsd_vars docker_images: - context: docker/haproxy-statsd repository: opendevorg/haproxy-statsd # Duplicate in the run-gitea job files: &haproxy-statsd_files - docker/haproxy-statsd/.* - docker/python-base/.* - job: name: system-config-upload-image-haproxy-statsd description: Build and upload a haproxy-statsd image. parent: system-config-upload-image requires: python-base-3.7-container-image vars: *haproxy-statsd_vars files: *haproxy-statsd_files - job: name: system-config-promote-image-haproxy-statsd description: Promote a previously published haproxy-statsd image to latest. parent: system-config-promote-image vars: *haproxy-statsd_vars files: *haproxy-statsd_files # Gerrit 2.13 jobs - job: name: system-config-build-image-gerrit-2.13 description: Build a gerrit 2.13 image. parent: system-config-build-image requires: gerrit-base-container-image provides: gerrit-2.13-container-image required-projects: &gerrit_projects_2_13 - name: opendev/system-config override-checkout: master vars: &gerrit_vars_2_13 docker_images: # The 2.13 image doesn't build from source, but from existing war file - context: docker/gerrit/2.13 repository: opendevorg/gerrit path: /home/zuul/src/opendev.org/opendev/system-config tags: - 2.13 files: &gerrit_files_2_13 - docker/gerrit/base/.* - docker/gerrit/2.13/.* - jeepyb/* - job: name: system-config-upload-image-gerrit-2.13 description: Build and upload a gerrit 2.13 image. parent: system-config-upload-image requires: gerrit-base-container-image provides: gerrit-2.13-container-image required-projects: *gerrit_projects_2_13 vars: *gerrit_vars_2_13 files: *gerrit_files_2_13 - job: name: system-config-promote-image-gerrit-2.13 description: Promote a previously published gerrit 2.13 image to latest. parent: system-config-promote-image vars: *gerrit_vars_2_13 files: *gerrit_files_2_13 # Gerrit 2.14 jobs - job: name: system-config-build-image-gerrit-2.14 description: Build a gerrit image. parent: system-config-build-image pre-run: playbooks/zuul/gerrit/repos.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-2.14-container-image required-projects: &gerrit_projects_2_14 - name: opendev/system-config override-checkout: master - name: gerrit.googlesource.com/gerrit override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/commit-message-length-validator override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/download-commands override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/hooks override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/its-base override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/its-storyboard override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/javamelody override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/replication override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/reviewnotes override-checkout: stable-2.14 - name: gerrit.googlesource.com/plugins/singleusergroup override-checkout: stable-2.14 vars: &gerrit_vars_2_14 docker_images: - context: docker/gerrit/bazel repository: opendevorg/gerrit path: /home/zuul/src/gerrit.googlesource.com/gerrit tags: - 2.14 files: &gerrit_files_2_14 - docker/gerrit/base/.* - docker/gerrit/bazel/.* - playbooks/zuul/gerrit/.* - jeepyb/* - job: name: system-config-upload-image-gerrit-2.14 description: Build and upload a gerrit image. parent: system-config-upload-image pre-run: playbooks/zuul/gerrit/repos.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-2.14-container-image required-projects: *gerrit_projects_2_14 vars: *gerrit_vars_2_14 files: *gerrit_files_2_14 - job: name: system-config-promote-image-gerrit-2.14 description: Promote a previously published gerrit image to latest. parent: system-config-promote-image vars: *gerrit_vars_2_14 files: *gerrit_files_2_14 # Gerrit 2.15 jobs - job: name: system-config-build-image-gerrit-2.15 description: Build a gerrit image. parent: system-config-build-image pre-run: playbooks/zuul/gerrit/repos.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-2.15-container-image required-projects: &gerrit_projects_2_15 - name: opendev/system-config override-checkout: master - name: gerrit.googlesource.com/gerrit override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/commit-message-length-validator override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/download-commands override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/hooks override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/its-base override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/its-storyboard override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/javamelody override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/replication override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/reviewnotes override-checkout: stable-2.15 - name: gerrit.googlesource.com/plugins/singleusergroup override-checkout: stable-2.15 vars: &gerrit_vars_2_15 docker_images: - context: docker/gerrit/bazel repository: opendevorg/gerrit path: /home/zuul/src/gerrit.googlesource.com/gerrit tags: - 2.15 files: &gerrit_files_2_15 - docker/gerrit/base/.* - docker/gerrit/bazel/.* - playbooks/zuul/gerrit/.* - jeepyb/* - job: name: system-config-upload-image-gerrit-2.15 description: Build and upload a gerrit image. parent: system-config-upload-image pre-run: playbooks/zuul/gerrit/repos.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-2.15-container-image required-projects: *gerrit_projects_2_15 vars: *gerrit_vars_2_15 files: *gerrit_files_2_15 - job: name: system-config-promote-image-gerrit-2.15 description: Promote a previously published gerrit image to latest. parent: system-config-promote-image vars: *gerrit_vars_2_15 files: *gerrit_files_2_15 # Gerrit 2.16 jobs - job: name: system-config-build-image-gerrit-2.16 description: Build a gerrit image. parent: system-config-build-image pre-run: playbooks/zuul/gerrit/repos.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-2.16-container-image required-projects: &gerrit_projects_2_16 - name: opendev/system-config override-checkout: master - name: gerrit.googlesource.com/gerrit override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/codemirror-editor override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/commit-message-length-validator override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/download-commands override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/hooks override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/its-base override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/its-storyboard override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/javamelody override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/replication override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/reviewnotes override-checkout: stable-2.16 - name: gerrit.googlesource.com/plugins/singleusergroup override-checkout: stable-2.16 vars: &gerrit_vars_2_16 docker_images: - context: docker/gerrit/bazel repository: opendevorg/gerrit path: /home/zuul/src/gerrit.googlesource.com/gerrit tags: - 2.16 gerrit_additional_plugins: - codemirror-editor files: &gerrit_files_2_16 - docker/gerrit/base/.* - docker/gerrit/bazel/.* - playbooks/zuul/gerrit/.* - jeepyb/* - job: name: system-config-upload-image-gerrit-2.16 description: Build and upload a gerrit image. parent: system-config-upload-image pre-run: playbooks/zuul/gerrit/repos.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-2.16-container-image required-projects: *gerrit_projects_2_16 vars: *gerrit_vars_2_16 files: *gerrit_files_2_16 - job: name: system-config-promote-image-gerrit-2.16 description: Promote a previously published gerrit image to latest. parent: system-config-promote-image vars: *gerrit_vars_2_16 files: *gerrit_files_2_16 # Gerrit 3.0 jobs - job: name: system-config-build-image-gerrit-3.0 description: Build a gerrit image. parent: system-config-build-image pre-run: playbooks/zuul/gerrit/repos.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-3.0-container-image required-projects: &gerrit_projects_3_0 - name: opendev/system-config override-checkout: master - name: gerrit.googlesource.com/gerrit override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/codemirror-editor override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/commit-message-length-validator override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/delete-project override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/download-commands override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/gitiles override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/hooks override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/its-base override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/its-storyboard override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/javamelody override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/plugin-manager override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/replication override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/reviewnotes override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/singleusergroup override-checkout: stable-3.0 - name: gerrit.googlesource.com/plugins/webhooks override-checkout: stable-3.0 vars: &gerrit_vars_3_0 docker_images: - context: docker/gerrit/bazel repository: opendevorg/gerrit path: /home/zuul/src/gerrit.googlesource.com/gerrit tags: - 3.0 gerrit_additional_plugins: - codemirror-editor - delete-project - gitiles - plugin-manager - webhooks files: &gerrit_files_3_0 - docker/gerrit/base/.* - docker/gerrit/bazel/.* - playbooks/zuul/gerrit/.* - jeepyb/* - job: name: system-config-upload-image-gerrit-3.0 description: Build and upload a gerrit image. parent: system-config-upload-image pre-run: playbooks/zuul/gerrit/repos.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-3.0-container-image required-projects: *gerrit_projects_3_0 vars: *gerrit_vars_3_0 files: *gerrit_files_3_0 - job: name: system-config-promote-image-gerrit-3.0 description: Promote a previously published gerrit image to latest. parent: system-config-promote-image vars: *gerrit_vars_3_0 files: *gerrit_files_3_0 # Gerrit master jobs - job: name: system-config-build-image-gerrit-master-base description: | Build a gerrit image. This job has no files matchers so it can be used in other repos. parent: system-config-build-image pre-run: - playbooks/zuul/gerrit/repos.yaml - playbooks/zuul/gerrit/submodules.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-master-container-image required-projects: &gerrit_projects_master - opendev/system-config - gerrit.googlesource.com/jgit - gerrit.googlesource.com/gerrit - gerrit.googlesource.com/plugins/checks - gerrit.googlesource.com/plugins/codemirror-editor - gerrit.googlesource.com/plugins/commit-message-length-validator - gerrit.googlesource.com/plugins/delete-project - gerrit.googlesource.com/plugins/download-commands - gerrit.googlesource.com/plugins/gitiles - gerrit.googlesource.com/plugins/hooks - gerrit.googlesource.com/plugins/its-base - gerrit.googlesource.com/plugins/its-storyboard - gerrit.googlesource.com/plugins/javamelody - gerrit.googlesource.com/plugins/plugin-manager - gerrit.googlesource.com/plugins/replication - gerrit.googlesource.com/plugins/reviewnotes - gerrit.googlesource.com/plugins/singleusergroup - gerrit.googlesource.com/plugins/webhooks - gerrit.googlesource.com/polymer-bridges vars: &gerrit_vars_master zuul_work_dir: src/opendev.org/opendev/system-config docker_images: - context: docker/gerrit/bazel repository: opendevorg/gerrit path: /home/zuul/src/gerrit.googlesource.com/gerrit tags: - master gerrit_additional_plugins: - checks - codemirror-editor - delete-project - gitiles - plugin-manager - webhooks - job: name: system-config-build-image-gerrit-master description: | Build a gerrit image. This job is used in system-config. parent: system-config-build-image-gerrit-master-base files: &gerrit_files_master - docker/gerrit/base/.* - docker/gerrit/bazel/.* - playbooks/zuul/gerrit/.* - jeepyb/* - job: name: system-config-upload-image-gerrit-master description: Build and upload a gerrit image. parent: system-config-upload-image pre-run: - playbooks/zuul/gerrit/repos.yaml - playbooks/zuul/gerrit/submodules.yaml run: playbooks/zuul/gerrit/run.yaml requires: gerrit-base-container-image provides: gerrit-master-container-image required-projects: *gerrit_projects_master vars: *gerrit_vars_master files: *gerrit_files_master - job: name: system-config-promote-image-gerrit-master description: Promote a previously published gerrit image to latest. parent: system-config-promote-image vars: *gerrit_vars_master files: *gerrit_files_master # python-builder-3.7 jobs - job: name: system-config-build-image-python-builder-3.7 description: Build a python-builder-3.7 image. parent: system-config-build-image provides: - python-builder-container-image - python-builder-3.7-container-image vars: &python-builder_3_7_vars docker_images: - context: docker/python-builder repository: opendevorg/python-builder tags: - 3.7 - latest build_args: - PYTHON_VERSION=3.7 files: &python-builder_3_7_files - docker/python-base/.* - docker/python-builder/.* - job: name: system-config-upload-image-python-builder-3.7 description: Build and upload a python-builder-3.7 image. parent: system-config-upload-image provides: - python-builder-container-image - python-builder-3.7-container-image vars: *python-builder_3_7_vars files: *python-builder_3_7_files - job: name: system-config-promote-image-python-builder-3.7 description: Promote a previously published python-builder-3.7 image to latest. parent: system-config-promote-image vars: *python-builder_3_7_vars files: *python-builder_3_7_files # python-builder-3.8 jobs - job: name: system-config-build-image-python-builder-3.8 description: Build a python-builder-3.8 image. parent: system-config-build-image provides: - python-builder-3.8-container-image vars: &python-builder_3_8_vars docker_images: - context: docker/python-builder repository: opendevorg/python-builder tags: - 3.8 build_args: - PYTHON_VERSION=3.8 files: &python-builder_3_8_files - docker/python-base/.* - docker/python-builder/.* - job: name: system-config-upload-image-python-builder-3.8 description: Build and upload a python-builder-3.8 image. parent: system-config-upload-image provides: python-builder-3.8-container-image vars: *python-builder_3_8_vars files: *python-builder_3_8_files - job: name: system-config-promote-image-python-builder-3.8 description: Promote a previously published python-builder-3.8 image to latest. parent: system-config-promote-image vars: *python-builder_3_8_vars files: *python-builder_3_8_files # python-base-3.7 jobs - job: name: system-config-build-image-python-base-3.7 description: Build a python-base-3.7 image. parent: system-config-build-image provides: - python-base-container-image - python-base-3.7-container-image vars: &python-base-3_7_vars docker_images: - context: docker/python-base repository: opendevorg/python-base tags: - 3.7 - latest build_args: - PYTHON_VERSION=3.7 files: &python-base-3_7_files - docker/python-base/.* - docker/python-builder/.* - job: name: system-config-upload-image-python-base-3.7 description: Build and upload a python-base-3.7 image. parent: system-config-upload-image provides: python-base-3.7-container-image vars: *python-base-3_7_vars files: *python-base-3_7_files - job: name: system-config-promote-image-python-base-3.7 description: Promote a previously published python-base-3.7 image to latest. parent: system-config-promote-image vars: *python-base-3_7_vars files: *python-base-3_7_files # python-base-3.8 jobs - job: name: system-config-build-image-python-base-3.8 description: Build a python-base-3.8 image. parent: system-config-build-image provides: python-base-3.8-container-image vars: &python-base-3_8_vars docker_images: - context: docker/python-base repository: opendevorg/python-base tags: - 3.8 build_args: - PYTHON_VERSION=3.8 files: &python-base-3_8_files - docker/python-base/.* - docker/python-builder/.* - job: name: system-config-upload-image-python-base-3.8 description: Build and upload a python-base-3.8 image. parent: system-config-upload-image provides: python-base-3.8-container-image vars: *python-base-3_8_vars files: *python-base-3_8_files - job: name: system-config-promote-image-python-base-3.8 description: Promote a previously published python-base-3.8 image to latest. parent: system-config-promote-image vars: *python-base-3_8_vars files: *python-base-3_8_files # gerrit-base jobs - job: name: system-config-build-image-gerrit-base description: Build a gerrit-base image. parent: system-config-build-image required-projects: &gerrit_base_projects - opendev/jeepyb - opendev/system-config requires: python-builder-3.7-container-image provides: gerrit-base-container-image vars: &gerrit-base_vars docker_images: - context: docker/gerrit/base repository: opendevorg/gerrit-base path: /home/zuul/src/opendev.org/opendev/jeepyb files: &gerrit-base_files - docker/gerrit/base/.* - job: name: system-config-upload-image-gerrit-base description: Build and upload a gerrit-base image. parent: system-config-upload-image requires: python-builder-3.7-container-image provides: gerrit-base-container-image required-projects: *gerrit_base_projects vars: *gerrit-base_vars files: *gerrit-base_files - job: name: system-config-promote-image-gerrit-base description: Promote a previously published gerrit-base image to latest. parent: system-config-promote-image required-projects: *gerrit_base_projects vars: *gerrit-base_vars files: *gerrit-base_files # Role integration jobs. These test the top-level generic roles/* # under Zuul. The range of platforms should be the same as those for # openstack-zuul-jobs. # # NOTE(ianw): 2018-08 have left off Fedora & OpenSUSE because # no roles currently run on them. - job: name: system-config-zuul-role-integration description: | Test roles provided by system-config with Zuul abstract: true parent: base run: roles-test/base.yaml files: - roles/.* - job: name: system-config-zuul-role-integration-xenial parent: system-config-zuul-role-integration nodeset: nodes: - name: base label: ubuntu-xenial - name: puppet4 label: ubuntu-xenial groups: - name: puppet3 nodes: - base - name: openafs nodes: - base - job: name: system-config-zuul-role-integration-bionic parent: system-config-zuul-role-integration nodeset: nodes: - name: base label: ubuntu-bionic groups: - name: puppet5 nodes: - base - name: openafs nodes: - base - job: name: system-config-zuul-role-integration-debian-stable parent: system-config-zuul-role-integration nodeset: nodes: - name: base label: debian-stretch groups: - name: openafs nodes: - base - job: name: system-config-zuul-role-integration-centos-8 parent: system-config-zuul-role-integration nodeset: nodes: - name: base label: centos-8 groups: - name: openafs nodes: - base - project-template: name: system-config-zuul-role-integration check: jobs: - system-config-zuul-role-integration-xenial - system-config-zuul-role-integration-bionic - system-config-zuul-role-integration-debian-stable - system-config-zuul-role-integration-centos-8 gate: jobs: - system-config-zuul-role-integration-xenial - system-config-zuul-role-integration-bionic - system-config-zuul-role-integration-debian-stable - system-config-zuul-role-integration-centos-8 - job: name: system-config-run description: | Run the "base" playbook for system-config hosts. This is a parent job designed to be inherited. abstract: true pre-run: playbooks/zuul/run-base-pre.yaml run: playbooks/zuul/run-base.yaml post-run: playbooks/zuul/run-base-post.yaml vars: install_ansible_ara_enable: true zuul_copy_output: "{{ copy_output | combine(host_copy_output | default({})) }}" stage_dir: "{{ ansible_user_dir }}/zuul-output" copy_output: '/var/log/syslog': logs_txt '/var/log/messages': logs_txt '/var/log/docker': logs host-vars: bridge.openstack.org: host_copy_output: '{{ zuul.project.src_dir }}/junit.xml': logs # Note: the following two jobs implement the variant-based multiple # inheritance trick. Both of these variants will always apply, # therefore both parents will appear in the inheritance hierarchy). - job: name: system-config-run-containers parent: system-config-run # Note: see above re multiple-inheritance. - job: name: system-config-run-containers parent: opendev-buildset-registry-consumer description: | Run the "base" playbook for system-config hosts which use containers. This is a parent job designed to be inherited. Use this job if the service in question is container-based. It expects a buildset registry and pulls images from the intermediate registry. - job: name: system-config-run-base parent: system-config-run description: | Run the "base" playbook on each of the node types currently in use. nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: xenial label: ubuntu-xenial - name: bionic label: ubuntu-bionic files: - playbooks/.* - roles/.* - testinfra/.* - job: name: system-config-run-base-ansible-devel parent: system-config-run-base description: | Run the base playbook with the latest ansible required-projects: - name: github.com/ansible/ansible override-checkout: devel - name: github.com/philpep/testinfra - name: openstack/openstacksdk - name: recordsansible/ara # NOTE(ianw): 2019-06-11 pinned to stable branch until we handle 1.0 # http://lists.openstack.org/pipermail/openstack-infra/2019-June/006400.html override-checkout: stable/0.x vars: bridge_ansible_name: '{{ ansible_user_dir}}/src/github.com/ansible/ansible' bridge_ansible_version: null bridge_openstacksdk_name: '{{ ansible_user_dir }}/src/opendev.org/openstack/openstacksdk' bridge_openstacksdk_version: null bridge_ara_name: '{{ ansible_user_dir}}/src/opendev.org/recordsansible/ara' bridge_ara_version: null - job: name: system-config-run-eavesdrop parent: system-config-run description: | Run the playbook for an eavesdrop server. nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: eavesdrop01.openstack.org label: ubuntu-xenial files: - playbooks/install-ansible.yaml - playbooks/group_vars/eavesdrop.yaml - testinfra/test_eavesdrop.py vars: run_playbooks: - playbooks/remote_puppet_else.yaml - job: name: system-config-run-letsencrypt parent: system-config-run description: | Run the playbook for letsencrypt key acquisition nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: adns-letsencrypt.opendev.org label: ubuntu-bionic - name: letsencrypt01.opendev.org label: ubuntu-bionic - name: letsencrypt02.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-nameserver.yaml - playbooks/service-letsencrypt.yaml host-vars: letsencrypt01.opendev.org: host_copy_output: '/var/log/acme.sh': logs letsencrypt02.opendev.org: host_copy_output: '/var/log/acme.sh': logs files: - playbooks/install-ansible.yaml - playbooks/group_vars/letsencrypt.yaml - playbooks/roles/letsencrypt.* - job: name: system-config-run-lists parent: system-config-run description: | Run the playbook for a list server. nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: lists.openstack.org label: ubuntu-xenial files: - playbooks/install-ansible.yaml - modules/openstack_project/manifests/lists.pp - playbooks/host_vars/lists.openstack.org.yaml - roles/exim vars: run_playbooks: - playbooks/remote_puppet_else.yaml - job: name: system-config-run-nodepool parent: system-config-run description: | Run the playbook for nodepool. nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: nl01.openstack.org label: ubuntu-xenial - name: nb01.openstack.org label: ubuntu-xenial - name: nb01-test.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-letsencrypt.yaml - playbooks/service-nodepool.yaml - playbooks/remote_puppet_else.yaml files: - playbooks/install-ansible.yaml - playbooks/group_vars/nodepool.yaml - playbooks/group_vars/nodepool-builder.yaml - playbooks/group_vars/nodepool-launcher.yaml - playbooks/roles/configure-openstacksdk/ - playbooks/roles/nodepool.* - playbooks/templates/clouds/ - testinfra/test_nodepool.py - job: name: system-config-run-dns parent: system-config-run description: | Run the playbook for dns. required-projects: - opendev/zone-opendev.org - opendev/zone-zuul-ci.org nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: adns1.opendev.org label: ubuntu-bionic - name: ns1.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-nameserver.yaml host-vars: adns1.opendev.org: host_copy_output: '/etc/bind/named.conf': logs '/var/lib/bind/zones': logs files: - playbooks/install-ansible.yaml - playbooks/group_vars/adns.yaml - playbooks/group_vars/dns.yaml - ^playbooks/host_vars/(ad)?ns\d+.opendev.org.yaml - playbooks/zuul/templates/group_vars/adns.yaml.j2 - playbooks/zuul/templates/group_vars/ns.yaml.j2 - playbooks/roles/master-nameserver/ - playbooks/roles/nameserver/ - testinfra/test_adns.py - testinfra/test_ns.py - job: name: system-config-run-backup parent: system-config-run description: | Run the playbook for backup configuration nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: backup01.region.provider.opendev.org label: ubuntu-bionic - name: backup-test01.opendev.org label: ubuntu-bionic - name: backup-test02.opendev.org label: ubuntu-xenial vars: run_playbooks: - playbooks/service-backup.yaml files: - playbooks/install-ansible.yaml - playbooks/roles/backup.* - playbooks/zuul/templates/host_vars/backup.* - testinfra/test_backups.py - job: name: system-config-run-mirror-base parent: system-config-run abstract: true description: | Run the playbook for a mirror node vars: run_playbooks: - playbooks/service-letsencrypt.yaml - playbooks/service-mirror.yaml host-vars: mirror01.openafs.provider.opendev.org: host_copy_output: '/var/log/apache2/': logs '/var/log/acme.sh': logs files: - playbooks/install-ansible.yaml - roles/ - playbooks/group_vars/mirror_opendev.yaml - playbooks/roles/mirror/ - playbooks/roles/letsencrypt.* - playbooks/service-letsencrypt.yaml - playbooks/service-mirror.yaml - playbooks/zuul/templates/group_vars/mirror_opendev.yaml.j2 - testinfra/test_mirror.py - job: name: system-config-run-mirror-x86 parent: system-config-run-mirror-base nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: mirror01.openafs.provider.opendev.org label: ubuntu-bionic - job: name: system-config-run-mirror-arm64 parent: system-config-run-mirror-base timeout: 3600 nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic-arm64 - name: mirror01.openafs.provider.opendev.org label: ubuntu-bionic-arm64 - job: name: system-config-run-mirror-update parent: system-config-run description: | Run the playbook for a mirror update node nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: mirror-update01.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-mirror-update.yaml files: - playbooks/install-ansible.yaml - roles/ - playbooks/roles/mirror-update/ - playbooks/service-mirror-update.yaml - testinfra/test_mirror-update.py - job: name: system-config-run-docker-registry parent: system-config-run description: | Run the playbook for the docker registry. nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: insecure-ci-registry01.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-letsencrypt.yaml - playbooks/service-registry.yaml host-vars: insecure-ci-registry01.opendev.org: host_copy_output: '/var/registry/auth': logs '/var/registry/certs': logs files: - playbooks/install-ansible.yaml - playbooks/group_vars/registry.yaml - ^playbooks/host_vars/insecure-ci-registry\d+.opendev.org.yaml - playbooks/zuul/templates/group_vars/registry.yaml.j2 - playbooks/roles/letsencrypt-create-certs/handlers/restart_zuul_registry.yaml - playbooks/roles/registry/ - testinfra/test_registry.py - job: name: system-config-run-etherpad parent: system-config-run-containers description: | Run the playbook for the etherpad servers. timeout: 3600 requires: etherpad-container-image nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: etherpad01.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-letsencrypt.yaml - playbooks/service-etherpad.yaml files: - playbooks/bridge.yaml - playbooks/service-letsencrypt.yaml - playbooks/service-etherpad.yaml - playbooks/roles/etherpad/.* - docker/etherpad/.* - job: name: system-config-run-gitea parent: system-config-run-containers description: | Run the playbook for the gitea servers. timeout: 3600 nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: gitea-lb01.opendev.org label: ubuntu-bionic - name: gitea99.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-letsencrypt.yaml - playbooks/service-gitea-lb.yaml - playbooks/service-gitea.yaml - playbooks/manage-projects.yaml run_test_playbook: playbooks/test-gitea.yaml host-vars: gitea99.opendev.org: host_copy_output: '/var/gitea/conf': logs '/var/gitea/certs': logs '/var/gitea/logs': logs gitea-lb01.opendev.org: host_copy_output: '/var/haproxy/etc': logs files: - playbooks/install-ansible.yaml - playbooks/service-letsencrypt.yaml - playbooks/service-gitea-lb.yaml - playbooks/service-gitea.yaml - playbooks/manage-projects.yaml - playbooks/test-gitea.yaml - playbooks/group_vars/gitea.yaml - playbooks/group_vars/gitea-lb.yaml - playbooks/host_vars/gitea.* - playbooks/zuul/templates/group_vars/gitea.yaml.j2 - playbooks/zuul/templates/group_vars/gitea-lb.yaml.j2 - playbooks/roles/install-docker/ - playbooks/roles/letsencrypt.* - playbooks/roles/gerrit/ - playbooks/roles/gitea/ - playbooks/roles/gitea-git-repos/ - playbooks/roles/haproxy/ - playbooks/roles/letsencrypt-create-certs/handlers/restart_gitea.yaml - testinfra/test_gitea.py - testinfra/test_gitea_lb.py # From gitea_files -- If we rebuild the image, we want to run # this job as well. - docker/gitea/.* # From haproxy-statsd_files -- If we rebuild the image, we want # to run this job as well. - docker/haproxy-statsd/.* - job: name: system-config-run-meetpad parent: system-config-run-containers requires: jitsi-meet-container-image description: | Run the playbook for jitsi-meet. nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: meetpad01.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-letsencrypt.yaml - playbooks/service-meetpad.yaml host-vars: meetpad01.opendev.org: host_copy_output: '/var/jitsi-meet': logs files: - playbooks/install-ansible.yaml - playbooks/group_vars/meetpad.yaml - ^playbooks/host_vars/meetpad\d+.opendev.org.yaml - playbooks/roles/letsencrypt-create-certs/handlers/restart_jitsi_meet.yaml - playbooks/roles/jitsi-meet/ - testinfra/test_meetpad.py - job: name: system-config-run-zuul-preview parent: system-config-run description: | Run the playbook for the docker registry. nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: zp01.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-zuul-preview.yaml files: - playbooks/install-ansible.yaml - playbooks/roles/zuul-preview/ - testinfra/test_zuul_preview.py - job: name: system-config-run-review parent: system-config-run-containers description: | Run the playbook for gerrit (in a container). requires: gerrit-2.13-container-image nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: review01.openstack.org label: ubuntu-xenial - name: review-dev01.opendev.org label: ubuntu-xenial vars: run_playbooks: - playbooks/service-letsencrypt.yaml - playbooks/service-review-dev.yaml - playbooks/service-review.yaml host-vars: review-dev01.opendev.org: host_copy_output: '/home/gerrit2/review_site/etc': logs '/home/gerrit2/review_site/logs': logs '/var/log/apache2/': logs '/var/log/acme.sh': logs review01.openstack.org: host_copy_output: '/home/gerrit2/review_site/etc': logs '/home/gerrit2/review_site/logs': logs '/var/log/apache2/': logs '/var/log/acme.sh': logs files: - playbooks/install-ansible.yaml - playbooks/service-letsencrypt.yaml - ^playbooks/service-review.*.yaml - playbooks/group_vars/review.yaml - ^playbooks/host_vars/review\d+.openstack.org.yaml - playbooks/group_vars/review-dev.yaml - ^playbooks/host_vars/review-dev\d+.opendev.org.yaml - playbooks/roles/install-docker/ - playbooks/roles/letsencrypt.* - playbooks/roles/gerrit/ - playbooks/zuul/templates/group_vars/review-dev.yaml.j2 - playbooks/zuul/templates/group_vars/review.yaml.j2 - testinfra/test_gerrit.py - job: name: system-config-run-static parent: system-config-run description: | Run the playbook for a static node timeout: 3600 nodeset: nodes: - name: bridge.openstack.org label: ubuntu-bionic - name: static01.opendev.org label: ubuntu-bionic vars: run_playbooks: - playbooks/service-letsencrypt.yaml - playbooks/service-static.yaml files: - playbooks/install-ansible.yaml - playbooks/roles/static/ - playbooks/roles/letsencrypt.* - playbooks/service-letsencrypt.yaml - playbooks/service-static.yaml - testinfra/test_static.py host-vars: static01.opendev.org: host_copy_output: '/var/log/acme.sh/': logs '/etc/apache2/': logs '/var/log/apache2/': logs # Make sure only one run of a system-config playbook happens at a time - semaphore: name: infra-prod-playbook max: 1 - job: name: infra-prod-playbook description: | Run specified playbook against productions hosts. This is a parent job designed to be inherited to enabled CD deployment of our infrastructure. Set playbook_name to specify the playbook relative to bridge.openstack.org:/opt/system-config/playbooks abstract: true semaphore: infra-prod-playbook run: playbooks/zuul/run-production-playbook.yaml required-projects: - opendev/system-config vars: infra_prod_ansible_forks: 5 infra_prod_playbook_collect_log: false nodeset: nodes: [] - job: name: infra-prod-zuul_reconfigure parent: infra-prod-playbook description: | Perform a full Zuul reconfiguration. This reloads the tenant config file and clears all configuration caches. vars: playbook_name: zuul_reconfigure.yaml - job: name: infra-prod-install-ansible parent: infra-prod-playbook description: Install ansible on bridge vars: playbook_name: install-ansible.yaml files: - inventory/* - roles/* - roles.yaml - install_modules.sh - modules.env - playbooks/install-ansible.yaml - playbooks/roles/pip3/.* - playbooks/roles/install-ansible/.* - playbooks/roles/logrotate/.* - playbooks/roles/root-keys/.* - playbooks/host_vars/bridge.openstack.org.yaml - playbooks/zuul/run-production-playbook.yaml - job: name: infra-prod-base parent: infra-prod-playbook description: Run the base playbook everywhere dependencies: - name: infra-prod-install-ansible soft: true vars: playbook_name: base.yaml infra_prod_ansible_forks: 50 files: - inventory/.* - playbooks/host_vars/.* - playbooks/group_vars/.* - playbooks/base.yaml - playbooks/roles/users/.* - playbooks/roles/base-repos/.* - playbooks/roles/base-server/.* - playbooks/roles/timezone/.* - playbooks/roles/unbound/.* - playbooks/roles/exim/.* - playbooks/roles/snmpd/.* - playbooks/roles/iptables/.* - job: name: infra-prod-service-letsencrypt parent: infra-prod-playbook description: Run service-letsencrypt.yaml playbook vars: playbook_name: service-letsencrypt.yaml dependencies: - name: infra-prod-install-ansible soft: true - name: infra-prod-base soft: true files: - inventory/.* - playbooks/service-letsencrypt.yaml # Any touching of host_vars or group_vars can substantively # change the certs we're doing, so be greedy here. - playbooks/host_vars/.* - playbooks/group_vars/.* - playbooks/roles/letsencrypt-.* - playbooks/roles/logrotate/.* - job: name: infra-prod-manage-projects parent: infra-prod-playbook description: | Create and update projects in gerrit and gitea. allowed-projects: - opendev/system-config - openstack/project-config vars: playbook_name: manage-projects.yaml infra_prod_ansible_forks: 10 infra_prod_playbook_collect_log: true - job: name: infra-prod-service-base parent: infra-prod-playbook description: Base job for most service playbooks abstract: true dependencies: - name: infra-prod-install-ansible soft: true - name: infra-prod-base soft: true - name: infra-prod-service-letsencrypt soft: true - job: name: infra-prod-service-bridge parent: infra-prod-service-base description: Run service-bridge.yaml playbook semaphore: infra-prod-service-bridge vars: playbook_name: service-bridge.yaml files: - inventory/.* - playbooks/service-bridge.yaml - playbooks/host_vars/bridge.openstack.org.yaml - playbooks/roles/logrotate/.* - playbooks/roles/cloud-launcher-cron/.* - playbooks/roles/edit-secrets-script/.* - playbooks/roles/install-kubectl/.* - playbooks/roles/configure-kubectl/.* - playbooks/roles/configure-openstacksdk/.* - playbooks/templates/clouds/bridge_clouds.yaml.j2 - playbooks/templates/clouds/bridge_all_clouds.yaml.j2 - job: name: infra-prod-service-gitea-lb parent: infra-prod-service-base description: Run service-gitea-lb.yaml playbook vars: playbook_name: service-gitea-lb.yaml files: - inventory/.* - playbooks/service-gitea-lb.yaml - playbooks/group_vars/gitea-lb.yaml - playbooks/roles/install-docker/.* - playbooks/roles/haproxy/.* - job: name: infra-prod-service-nameserver parent: infra-prod-service-base description: Run service-nameserver.yaml playbook vars: playbook_name: service-nameserver.yaml files: - inventory/.* - playbooks/service-nameserver.yaml - playbooks/host_vars/adns1.opendev.org.yaml - playbooks/host_vars/ns1.opendev.org.yaml - playbooks/host_vars/ns2.opendev.org.yaml - playbooks/group_vars/adns.yaml - playbooks/group_vars/ns.yaml - playbooks/roles/master-nameserver/.* - playbooks/roles/nameserver/.* - job: name: infra-prod-service-nodepool parent: infra-prod-service-base description: Run service-nodepool.yaml playbook vars: playbook_name: service-nodepool.yaml files: - inventory/.* - playbooks/service-nodepool.yaml - playbooks/host_vars/nb.* - playbooks/host_vars/nl.* - playbooks/group_vars/nodepool.* - playbooks/roles/configure-kubectl/.* - playbooks/roles/configure-openstacksdk/.* - playbooks/roles/install-docker/.* - playbooks/roles/install-zookeeper/.* - playbooks/roles/nodepool-.* - playbooks/templates/clouds/nodepool_.* - job: name: infra-prod-service-etherpad parent: infra-prod-service-base description: Run service-etherpad.yaml playbook vars: playbook_name: service-etherpad.yaml files: - inventory/.* - playbooks/service-etherpad.yaml - playbooks/host_vars/etherpad01.opendev.org.yaml - playbooks/group_vars/etherpad.* - playbooks/roles/install-docker/.* - playbooks/roles/etherpad.* - playbooks/roles/logrotate.* - job: name: infra-prod-service-meetpad parent: infra-prod-service-base description: Run service-meetpad.yaml playbook dependencies: - name: infra-prod-install-ansible soft: true - name: infra-prod-base soft: true - name: infra-prod-service-letsencrypt soft: true - name: system-config-promote-image-jitsi-meet soft: true vars: playbook_name: service-meetpad.yaml files: - inventory/.* - playbooks/service-meetpad.yaml - playbooks/host_vars/meetpad01.opendev.org.yaml - playbooks/group_vars/meetpad.yaml - playbooks/roles/install-docker/.* - playbooks/roles/jitsi-meet/.* - job: name: infra-prod-service-mirror-update parent: infra-prod-service-base description: Run service-mirror-update.yaml playbook vars: playbook_name: service-mirror-update.yaml files: - inventory/.* - playbooks/service-mirror-update.yaml - playbooks/roles/kerberos-client/.* - playbooks/roles/openafs-client/.* - playbooks/roles/mirror-update/.* - playbooks/roles/logrotate/.* - job: name: infra-prod-service-mirror parent: infra-prod-service-base description: Run service-mirror.yaml playbook vars: playbook_name: service-mirror.yaml files: - inventory/.* - playbooks/service-mirror.yaml - playbooks/group_vars/mirror_opendev.yaml - playbooks/roles/kerberos-client/.* - playbooks/roles/openafs-client/.* - playbooks/roles/mirror/.* - playbooks/roles/afs-release/.* - playbooks/roles/afsmon/.* - playbooks/roles/logrotate/.* - job: name: infra-prod-service-static parent: infra-prod-service-base description: Run service-static.yaml playbook vars: playbook_name: service-static.yaml files: - inventory/.* - playbooks/service-static.yaml - playbooks/host_vars/static01.opendev.org.yaml - playbooks/group_vars/static.yaml - playbooks/roles/kerberos-client/.* - playbooks/roles/openafs-client/.* - playbooks/roles/static/.* - playbooks/roles/zuul-user/.* - job: name: infra-prod-service-backup parent: infra-prod-service-base description: Run service-backup.yaml playbook vars: playbook_name: service-backup.yaml files: - inventory/.* - playbooks/service-backup.yaml - playbooks/roles/backup/.* - playbooks/roles/backup-server/.* - job: name: infra-prod-service-registry parent: infra-prod-service-base description: Run service-registry.yaml playbook vars: playbook_name: service-registry.yaml files: - inventory/.* - playbooks/service-registry.yaml - playbooks/group_vars/registry.yaml - playbooks/roles/install-docker/.* - playbooks/roles/registry/.* - job: name: infra-prod-service-zuul-preview parent: infra-prod-service-base description: Run service-zuul-preview.yaml playbook vars: playbook_name: service-zuul-preview.yaml files: - inventory/.* - playbooks/service-zuul-preview.yaml - playbooks/group_vars/zuul-preview.yaml - playbooks/roles/install-docker/.* - playbooks/roles/zuul-preview/.* - job: name: infra-prod-service-review parent: infra-prod-service-base description: Run service-review.yaml playbook vars: playbook_name: service-review.yaml dependencies: &infra_prod_service_review_deps - name: infra-prod-install-ansible soft: true - name: infra-prod-base soft: true - name: infra-prod-service-letsencrypt soft: true - name: system-config-promote-image-gerrit-2.13 soft: true files: - inventory/.* - playbooks/service-review.yaml - playbooks/group_vars/gerrit.yaml - playbooks/host_vars/review01.openstack.org.yaml - playbooks/roles/install-docker/.* - playbooks/roles/gerrit/.* - job: name: infra-prod-service-review-dev parent: infra-prod-service-base description: Run service-review-dev.yaml playbook vars: playbook_name: service-review-dev.yaml dependencies: *infra_prod_service_review_deps files: - inventory/.* - playbooks/service-review-dev.yaml - playbooks/group_vars/gerrit.yaml - playbooks/host_vars/review-dev01.opendev.org.yaml - playbooks/roles/install-docker/.* - playbooks/roles/gerrit/.* - job: name: infra-prod-service-gitea parent: infra-prod-service-base description: Run service-gitea.yaml playbook vars: playbook_name: service-gitea.yaml dependencies: - name: infra-prod-install-ansible soft: true - name: infra-prod-base soft: true - name: infra-prod-service-letsencrypt soft: true - name: system-config-promote-image-gitea-init soft: true - name: system-config-promote-image-gitea soft: true files: - inventory/.* - playbooks/service-gitea.yaml - playbooks/group_vars/gitea.yaml - playbooks/host_vars/gitea[0-9].* - playbooks/roles/install-docker/.* - playbooks/roles/gitea/.* - playbooks/roles/logrotate/.* - docker/gitea/.* - docker/gitea-init/.* - docker/jinja-init/.* - docker/python-base/.* # Run AFS changes separately so we can make sure to only do one at a time # (turns out quorum is nice to have) - job: name: infra-prod-remote-puppet-afs parent: infra-prod-service-base description: Run remote-puppet-afs.yaml playbook vars: playbook_name: remote-puppet-afs.yaml infra_prod_ansible_forks: 1 files: - inventory/.* - playbooks/remote-puppet-afs.yaml - playbooks/group_vars/afs.* - playbooks/group_vars/mirror-update.* - playbooks/roles/puppet-install/.* - playbooks/roles/disable-puppet-agent/.* - playbooks/roles/vos-release/.* - modules/.* - manifests/.* - job: name: infra-prod-remote-puppet-else parent: infra-prod-service-base description: Run remote-puppet-else.yaml playbook vars: playbook_name: remote-puppet-else.yaml infra_prod_ansible_forks: 50 files: - hiera/.* - inventory/.* - playbooks/remote-puppet-else.yaml - playbooks/group_vars/.* - playbooks/host_vars/.* - playbooks/roles/puppet-install/.* - playbooks/roles/disable-puppet-agent/.* - modules/.* - manifests/.* - job: name: system-config-goaccess-report description: | Run goaccess tool on static.opendev.org hosted site. abstract: true protected: true timeout: 7200 nodeset: nodes: [] run: playbooks/periodic/goaccess.yaml - job: name: developer-openstack-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on developer.openstack.org. final: true protected: true vars: goaccess_site: developer.openstack.org - job: name: docs-opendev-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on docs.opendev.org. final: true protected: true vars: goaccess_site: docs.opendev.org - job: name: docs-openstack-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on docs.openstack.org. final: true protected: true vars: goaccess_site: docs.openstack.org - job: name: docs-starlingx-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on docs.starlingx.io. final: true protected: true vars: goaccess_site: docs.starlingx.io - job: name: governance-openstack-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on governance.openstack.org. final: true protected: true vars: goaccess_site: governance.openstack.org - job: name: releases-openstack-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on releases.openstack.org. final: true protected: true vars: goaccess_site: releases.openstack.org - job: name: security-openstack-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on security.openstack.org. final: true protected: true vars: goaccess_site: security.openstack.org - job: name: specs-openstack-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on specs.openstack.org. final: true protected: true vars: goaccess_site: specs.openstack.org - job: name: tarballs-opendev-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on tarballs.opendev.org. final: true protected: true vars: goaccess_site: tarballs.opendev.org - job: name: zuul-ci-goaccess-report parent: system-config-goaccess-report description: | Run goaccess tool on zuul-ci.org. final: true protected: true vars: goaccess_site: zuul-ci.org - project-template: name: system-config-gerrit-images check: jobs: - system-config-build-image-gerrit-base: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-python-builder-3.7 soft: true - system-config-build-image-gerrit-2.13: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-python-builder-3.7 soft: true - name: system-config-build-image-gerrit-base soft: true - system-config-build-image-gerrit-2.14: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-gerrit-base soft: true - system-config-build-image-gerrit-2.15: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-gerrit-base soft: true - system-config-build-image-gerrit-2.16: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-gerrit-base soft: true - system-config-build-image-gerrit-3.0: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-gerrit-base soft: true - system-config-build-image-gerrit-master: voting: false dependencies: - name: opendev-buildset-registry - name: system-config-build-image-gerrit-base soft: true gate: jobs: - system-config-upload-image-gerrit-base: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-python-builder-3.7 soft: true - system-config-upload-image-gerrit-2.13: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-python-builder-3.7 soft: true - name: system-config-upload-image-gerrit-base soft: true - system-config-upload-image-gerrit-2.14: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-gerrit-base soft: true - system-config-upload-image-gerrit-2.15: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-gerrit-base soft: true - system-config-upload-image-gerrit-2.16: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-gerrit-base soft: true - system-config-upload-image-gerrit-3.0: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-gerrit-base soft: true deploy: jobs: - system-config-promote-image-gerrit-base - system-config-promote-image-gerrit-2.13 - system-config-promote-image-gerrit-2.14 - system-config-promote-image-gerrit-2.15 - system-config-promote-image-gerrit-2.16 - system-config-promote-image-gerrit-3.0 - project: templates: - system-config-zuul-role-integration - system-config-gerrit-images - infra-puppet-apply-jobs - infra-logstash-filter-jobs check: jobs: - opendev-tox-docs - opendev-buildset-registry - tox-linters - puppet-beaker-rspec-puppet-4-infra-system-config - system-config-run-base - system-config-run-base-ansible-devel: voting: false - system-config-run-backup - system-config-run-dns - system-config-run-eavesdrop - system-config-run-lists - system-config-run-nodepool - system-config-run-meetpad: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-jitsi-meet soft: true - system-config-run-mirror-x86 - system-config-run-mirror-update - system-config-run-static - system-config-run-docker-registry - system-config-run-etherpad: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-etherpad soft: true - system-config-run-gitea: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-gitea soft: true - name: system-config-build-image-haproxy-statsd soft: true - system-config-run-review: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-gerrit-2.13 soft: true - system-config-run-zuul-preview - system-config-run-letsencrypt - system-config-build-image-jinja-init: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-python-base-3.7 soft: true - system-config-build-image-gitea-init: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-jinja-init soft: true - system-config-build-image-etherpad - system-config-build-image-gitea - system-config-build-image-jitsi-meet - system-config-build-image-haproxy-statsd: dependencies: - name: opendev-buildset-registry - name: system-config-build-image-python-base-3.7 soft: true - system-config-build-image-python-base-3.7 - system-config-build-image-python-base-3.8 - system-config-build-image-python-builder-3.7 - system-config-build-image-python-builder-3.8 check-arm64: jobs: - system-config-run-mirror-arm64 gate: jobs: - opendev-tox-docs - opendev-buildset-registry - tox-linters - puppet-beaker-rspec-puppet-4-infra-system-config - system-config-run-base - system-config-run-dns - system-config-run-eavesdrop - system-config-run-lists - system-config-run-nodepool - system-config-run-meetpad: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-jitsi-meet soft: true - system-config-run-mirror-x86 - system-config-run-mirror-update - system-config-run-static - system-config-run-docker-registry - system-config-run-etherpad: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-etherpad soft: true - system-config-run-gitea: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-gitea soft: true - name: system-config-upload-image-haproxy-statsd soft: true - system-config-run-review: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-gerrit-2.13 soft: true - system-config-run-zuul-preview - system-config-run-letsencrypt - system-config-upload-image-jinja-init: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-python-base-3.7 soft: true - system-config-upload-image-gitea-init: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-jinja-init soft: true - system-config-upload-image-etherpad - system-config-upload-image-gitea - system-config-upload-image-jitsi-meet - system-config-upload-image-haproxy-statsd: dependencies: - name: opendev-buildset-registry - name: system-config-upload-image-python-base-3.7 soft: true - system-config-upload-image-python-base-3.7 - system-config-upload-image-python-base-3.8 - system-config-upload-image-python-builder-3.7 - system-config-upload-image-python-builder-3.8 promote: jobs: - opendev-promote-docs deploy: jobs: - system-config-promote-image-jinja-init - system-config-promote-image-gitea-init - system-config-promote-image-gitea - system-config-promote-image-etherpad - system-config-promote-image-jitsi-meet - system-config-promote-image-haproxy-statsd - system-config-promote-image-python-base-3.7 - system-config-promote-image-python-base-3.8 - system-config-promote-image-python-builder-3.7 - system-config-promote-image-python-builder-3.8 - infra-prod-install-ansible - infra-prod-base - infra-prod-service-letsencrypt - infra-prod-manage-projects: files: - inventory/.* - playbooks/manage-projects.yaml - playbooks/group_vars/gerrit.yaml - playbooks/group_vars/gitea.yaml - playbooks/host_vars/gitea.* - playbooks/host_vars/review.* - playbooks/roles/gitea-git-repos/.* - playbooks/roles/gerrit/defaults/main.yaml - playbooks/roles/gerrit/tasks/manage-projects.yaml dependencies: - name: system-config-promote-image-gerrit-2.13 soft: true - name: infra-prod-install-ansible soft: true - infra-prod-service-bridge - infra-prod-service-gitea-lb - infra-prod-service-nameserver - infra-prod-service-nodepool - infra-prod-service-etherpad: dependencies: - name: infra-prod-update-system-config - name: infra-prod-install-ansible soft: true - name: infra-prod-base soft: true - name: infra-prod-service-letsencrypt soft: true - name: system-config-promote-image-etherpad soft: true - infra-prod-service-meetpad - infra-prod-service-mirror-update - infra-prod-service-mirror - infra-prod-service-static - infra-prod-service-backup - infra-prod-service-registry - infra-prod-service-zuul-preview - infra-prod-service-review - infra-prod-service-review-dev - infra-prod-service-gitea - infra-prod-remote-puppet-afs - infra-prod-remote-puppet-else periodic: jobs: - developer-openstack-goaccess-report - docs-opendev-goaccess-report - docs-openstack-goaccess-report - docs-starlingx-goaccess-report - governance-openstack-goaccess-report - releases-openstack-goaccess-report - security-openstack-goaccess-report - specs-openstack-goaccess-report - tarballs-opendev-goaccess-report - zuul-ci-goaccess-report # Nightly runs of ansible things for catchup - infra-prod-install-ansible - infra-prod-base - infra-prod-service-letsencrypt - infra-prod-service-bridge - infra-prod-service-gitea-lb - infra-prod-service-nameserver - infra-prod-service-etherpad - infra-prod-service-meetpad - infra-prod-service-mirror-update - infra-prod-service-mirror - infra-prod-service-static - infra-prod-service-backup - infra-prod-service-review - infra-prod-service-review-dev - infra-prod-service-gitea - infra-prod-remote-puppet-afs opendev-prod-hourly: jobs: - infra-prod-install-ansible - infra-prod-service-nodepool: dependencies: - name: infra-prod-install-ansible soft: true - infra-prod-service-registry: dependencies: - name: infra-prod-install-ansible soft: true - infra-prod-service-zuul-preview: dependencies: - name: infra-prod-install-ansible soft: true - infra-prod-remote-puppet-else: dependencies: - name: infra-prod-install-ansible soft: true