tripleo-ci/zuul.d/build-image.yaml

317 lines
11 KiB
YAML

---
# zuul.d/build-image.yaml
###############################################################
# #
# UPSTREAM BUILD IMAGES PARENTING #
# #
###############################################################
# This job definition holds the required projects
# for upstream CI. The required projects are separated
# out to allow for this job to be shadowed in another repo
# and the required projects overwritten for other environments
- job:
name: tripleo-ci-build-images-required-projects-upstream
description: |
Base abstract job to add required-projects for Upstream
Build Images Jobs
abstract: true
parent: tripleo-ci-base-images-standard
required-projects:
- opendev.org/openstack/diskimage-builder
- opendev.org/openstack/heat-agents
- opendev.org/openstack/instack-undercloud
- opendev.org/openstack/ironic
- opendev.org/openstack/ironic-python-agent
- opendev.org/openstack/ironic-python-agent-builder
- opendev.org/openstack/python-tripleoclient
- opendev.org/openstack/tripleo-ansible
- opendev.org/openstack/tripleo-common
- opendev.org/openstack/tripleo-image-elements
- opendev.org/openstack/tripleo-puppet-elements
- opendev.org/openstack/requirements
irrelevant-files: &irrelevant_build_img
- ^zuul.d/build-containers.yaml
- ^zuul.d/deprecated-jobs.yaml
- ^zuul.d/multinode-jobs.yaml
- ^zuul.d/periodic.yaml
- ^zuul.d/standalone-jobs.yaml
- ^zuul.d/undercloud-jobs.yaml
# CentOS 8
- job:
name: tripleo-build-images-base-centos-8
abstract: true
description: |
Base abstract job for tripleo-buildimage-* centos-8 jobs
parent: tripleo-ci-build-images-required-projects-upstream
nodeset: single-centos-8-node
pre-run: playbooks/tripleo-buildimages/tmpfiles.yaml
vars:
tripleo_image_os: centos8
# CentOS 9
- job:
name: tripleo-build-images-base-centos-9
abstract: true
description: |
Base abstract job for tripleo-buildimage-* centos-9 jobs
parent: tripleo-ci-build-images-required-projects-upstream
nodeset: single-centos-9-node
pre-run: playbooks/tripleo-buildimages/tmpfiles.yaml
vars:
tripleo_image_os: centos9
# Zuul layout for TripleO Build Image jobs.
- project-template:
name: tripleo-ci-buildimage-jobs
check:
jobs:
- tripleo-buildimage-overcloud-full-centos-8:
files: &build_images_files
- ^playbooks/tripleo-buildimages/.*$
- ^roles/oooci-build-images/.*$
- zuul.d/build-image.yaml
- tripleoclient/v1/overcloud_image.py
- elements/.*
- ^image-yaml/.*
- tripleo-buildimage-overcloud-full-centos-8-victoria:
files: *build_images_files
- tripleo-buildimage-overcloud-full-centos-8-train:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-8:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-8-victoria:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-8-train:
files: *build_images_files
- tripleo-buildimage-overcloud-hardened-full-centos-8-victoria:
files: &build_images_hardened_files
- ^image-yaml/.*hardened.*
- ^elements/overcloud-secure
- ^elements/overcloud-partition
- ^diskimage_builder/elements/modprobe
- tripleo-buildimage-overcloud-hardened-full-centos-8-train:
files: *build_images_hardened_files
- tripleo-buildimage-overcloud-full-centos-9:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-9:
files: *build_images_files
- tripleo-buildimage-overcloud-hardened-uefi-full-centos-9:
files: &build_images_hardened_uefi_files
- ^image-yaml/.*hardened-images-uefi.*
- ^elements/overcloud-secure
- ^elements/overcloud-partition-uefi
- ^diskimage_builder/elements/modprobe
- ^diskimage_builder/elements/bootloader
- ^diskimage_builder/elements/growvols
- ^roles/oooci-build-images/.*$
gate:
jobs:
- tripleo-buildimage-overcloud-full-centos-8:
files: *build_images_files
- tripleo-buildimage-overcloud-full-centos-8-victoria:
files: *build_images_files
- tripleo-buildimage-overcloud-full-centos-8-train:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-8:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-8-victoria:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-8-train:
files: *build_images_files
- tripleo-buildimage-overcloud-hardened-full-centos-8-victoria:
files: *build_images_hardened_files
- tripleo-buildimage-overcloud-hardened-full-centos-8-train:
files: *build_images_hardened_files
- tripleo-buildimage-overcloud-full-centos-9:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-9:
files: *build_images_files
- tripleo-buildimage-overcloud-hardened-uefi-full-centos-9:
files: *build_images_hardened_uefi_files
- project-template:
name: tripleo-buildimage-jobs
check:
jobs:
- tripleo-buildimage-overcloud-full-centos-8:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-8:
files: *build_images_files
- tripleo-buildimage-overcloud-full-centos-9:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-9:
files: *build_images_files
- tripleo-buildimage-overcloud-hardened-uefi-full-centos-9:
files: *build_images_hardened_uefi_files
gate:
jobs:
- tripleo-buildimage-overcloud-full-centos-8:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-8:
files: *build_images_files
- tripleo-buildimage-overcloud-full-centos-9:
files: *build_images_files
- tripleo-buildimage-ironic-python-agent-centos-9:
files: *build_images_files
- tripleo-buildimage-overcloud-hardened-uefi-full-centos-9:
files: *build_images_hardened_uefi_files
- project-template:
name: tripleo-buildimage-jobs-centos-8
check:
jobs:
- tripleo-buildimage-overcloud-full-centos-8
- tripleo-buildimage-ironic-python-agent-centos-8
- tripleo-buildimage-overcloud-hardened-uefi-full-centos-8:
files: *build_images_hardened_uefi_files
gate:
jobs:
- tripleo-buildimage-overcloud-full-centos-8
- tripleo-buildimage-ironic-python-agent-centos-8
- tripleo-buildimage-overcloud-hardened-uefi-full-centos-8:
files: *build_images_hardened_uefi_files
experimental:
jobs:
- tripleo-buildimage-ironic-python-agent-centos-8
# CentOS 9 Image Build Jobs
- job:
name: tripleo-buildimage-ironic-python-agent-centos-9
parent: tripleo-build-images-base-centos-9
branches: &c9_branches ^(?!stable/(train|victoria)).*$
vars:
tripleo_image_type: ironic-python-agent
irrelevant-files: &build_image_irrelevant
- ^.*\.rst$
- ^releasenotes/.*$
- job:
name: tripleo-buildimage-overcloud-full-centos-9
parent: tripleo-build-images-base-centos-9
branches: *c9_branches
vars:
tripleo_image_type: overcloud-full
image_sanity: false # https://bugs.launchpad.net/tripleo/+bug/1950453
irrelevant-files: *build_image_irrelevant
- job:
name: tripleo-buildimage-overcloud-hardened-uefi-full-centos-9
parent: tripleo-build-images-base-centos-9
branches: *c9_branches
vars:
tripleo_image_type: overcloud-hardened-uefi-full
irrelevant-files: *build_image_irrelevant
# Centos9 Branchful jobs for the CIP repos (branch always master)
- job:
name: tripleo-buildimage-ironic-python-agent-centos-9-wallaby
parent: tripleo-buildimage-ironic-python-agent-centos-9
branches: master
override-checkout: stable/wallaby
vars:
branch_override: stable/wallaby
- job:
name: tripleo-buildimage-overcloud-full-centos-9-wallaby
parent: tripleo-buildimage-overcloud-full-centos-9
branches: master
override-checkout: stable/wallaby
vars:
branch_override: stable/wallaby
- job:
name: tripleo-buildimage-overcloud-hardened-uefi-full-centos-9-wallaby
parent: tripleo-buildimage-overcloud-hardened-uefi-full-centos-9
override-checkout: stable/wallaby
vars:
branch_override: stable/wallaby
# CentOS 8 Image Build Jobs
# Keep C8 ipa & overcloud-full on wallaby for now
- job:
name: tripleo-buildimage-ironic-python-agent-centos-8
parent: tripleo-build-images-base-centos-8
branches: ^(stable/(train|victoria|wallaby)).*$
vars:
tripleo_image_type: ironic-python-agent
irrelevant-files:
- ^.*\.rst$
- ^releasenotes/.*$
- job:
name: tripleo-buildimage-overcloud-full-centos-8
parent: tripleo-build-images-base-centos-8
branches: ^(stable/(train|victoria|wallaby)).*$
vars:
tripleo_image_type: overcloud-full
irrelevant-files:
- ^.*\.rst$
- ^releasenotes/.*$
- job:
name: tripleo-buildimage-overcloud-hardened-full-centos-8
parent: tripleo-build-images-base-centos-8
branches: ^(stable/(train|victoria)).*$
vars:
tripleo_image_type: overcloud-hardened-full
irrelevant-files:
- ^.*\.rst$
- ^releasenotes/.*$
- job:
name: tripleo-buildimage-ironic-python-agent-centos-8-victoria
parent: tripleo-buildimage-ironic-python-agent-centos-8
branches: master
override-checkout: stable/victoria
vars:
branch_override: stable/victoria
# Branchful job to run on CI branchless repos which have master only
- job:
name: tripleo-buildimage-ironic-python-agent-centos-8-train
parent: tripleo-buildimage-ironic-python-agent-centos-8
branches: master
override-checkout: stable/train
vars:
branch_override: stable/train
- job:
name: tripleo-buildimage-overcloud-full-centos-8-victoria
parent: tripleo-buildimage-overcloud-full-centos-8
branches: master
override-checkout: stable/victoria
vars:
branch_override: stable/victoria
# Branchful job to run on CI branchless repos which have master only
- job:
name: tripleo-buildimage-overcloud-full-centos-8-train
parent: tripleo-buildimage-overcloud-full-centos-8
branches: master
override-checkout: stable/train
vars:
branch_override: stable/train
- job:
name: tripleo-buildimage-overcloud-hardened-full-centos-8-victoria
parent: tripleo-buildimage-overcloud-hardened-full-centos-8
branches: master
override-checkout: stable/victoria
vars:
branch_override: stable/victoria
# Branchful job to run on CI branchless repos which have master only
- job:
name: tripleo-buildimage-overcloud-hardened-full-centos-8-train
parent: tripleo-buildimage-overcloud-hardened-full-centos-8
branches: master
override-checkout: stable/train
vars:
branch_override: stable/train