Jay Faulkner f831b3d0b6 [gentoo] Fix+Update CI for 23.0 profile
- Adjusts how we remove pacakges. Gentoo maintains a list of packages
  that the user has requested be installed called "world". By
  deselecting the packages, we remove them from this list, and at the
  end, call depclean which will uninstall packages no longer selected or
  needed as dependencies.
- Updates profile logic. We should theoretically be able to support any
  new gentoo profile, without having to maintain a static list ourself
  by just updating the base.
- Updates CI job to use default profile as determined by the gentoo
  element. This basically eliminates one more place we need to update
  profiles on change.
- Ensures we install installkernel with USE=+grub so we actually install
  the kernel
- Do not use testing (~amd64) packages unless absolutely neccessary
- Fix growroot openrc initscript to use /sbin/openrc-run instead of
  deprecated-and-now-removed /sbin/runscript.

Change-Id: Ie9d2ab67d72114603034374854bb3a3d52de8ca4
2024-11-20 12:07:08 -08:00

329 lines
10 KiB
YAML

- job:
name: dib-functests-base
abstract: true
parent: base
run: playbooks/dib-functests/run.yaml
post-run: playbooks/dib-functests/post.yaml
timeout: 5400
required-projects:
- openstack/diskimage-builder
- openstack/requirements
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- job:
name: dib-functests
description: |
This is the base set of stable tests
parent: dib-functests-base
nodeset: debian-bookworm
vars:
dib_functests:
- containerfile/jammy-build-succeeds
- openeuler-minimal/22.03-LTS-build-succeeds
# Image based tests
- centos/9-stream-build-succeeds
# NOTE(rpittau) Fedora 37 is EOL, disalbing this until we move to
# Fedora 39 or more recent.
#- fedora/build-succeeds
# NOTE(ianw) 2022-08-02 : disabled due to upstream
# checksum mismatches; see
# https://bugzilla.suse.com/show_bug.cgi?id=1202041
# - opensuse/build-succeeds
- ubuntu/bionic-build-succeeds
- ubuntu/focal-build-succeeds
- ubuntu/jammy-build-succeeds
- ubuntu/noble-build-succeeds
# NOTE(ianw) : these jobs are split to keep the build times a bit more
# reasonable.
- job:
name: dib-functests-arm64-deb
description: |
ARM64 build tests (Debian-like distros)
nodeset: debian-bookworm-arm64
parent: dib-functests-base
vars:
dib_functests:
- ubuntu-minimal/bionic-arm64-build-succeeds
- ubuntu-minimal/focal-arm64-build-succeeds
- ubuntu-minimal/jammy-arm64-build-succeeds
- ubuntu-minimal/noble-arm64-build-succeeds
- debian-minimal/bullseye-arm64-build-succeeds
- debian-minimal/bookworm-arm64-build-succeeds
- job:
name: dib-functests-arm64-rpm
description: |
ARM64 build tests (RPM-like distros)
nodeset: debian-bookworm-arm64
parent: dib-functests-base
vars:
dib_functests:
- almalinux-container/almalinux-9-aarch64-build-succeeds
- centos-minimal/9-stream-aarch64-build-succeeds
- openeuler-minimal/22.03-LTS-build-succeeds
- rocky-container/rocky-9-aarch64-build-succeeds
#
# Build and boot functional tests
#
- job:
name: dib-nodepool-functional-src-base
description: |
Base job for DIB functional tests, which build and boot a node
under nodepool, using source versions of dependencies such as
nodepool, dib, openstacksdk and glean.
parent: nodepool-functional-container-openstack-siblings-base
post-run: playbooks/dib-nodepool/collect-openstack-logs.yaml
vars:
nodepool_debug: true
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- job:
name: dib-nodepool-functional-openstack-almalinux-8-containerfile-src
description: |
Test building and booting a AlmaLinux image from a
containerfile with Nodepool and OpenStack (using released
libraries)
parent: dib-nodepool-functional-src-base
vars:
nodepool_debug: true
nodepool_diskimage:
base_element: almalinux-container
release: '8'
- job:
name: dib-nodepool-functional-openstack-almalinux-9-containerfile-src
description: |
Test building and booting a AlmaLinux image from a
containerfile with Nodepool and OpenStack (using released
libraries)
parent: dib-nodepool-functional-src-base
vars:
nodepool_debug: true
nodepool_diskimage:
base_element: almalinux-container
release: '9'
- job:
name: dib-nodepool-functional-openstack-centos-8-stream-src
description: |
Test building and booting a Centos 8 Stream image with Nodepool and
OpenStack.
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: centos-minimal
release: '8-stream'
# TODO: set when CentOS 8 Stream repos mirrored.
# mirror: "http://{{ zuul_site_mirror_fqdn }}/centos"
- job:
name: dib-nodepool-functional-openstack-centos-9-stream-src
description: |
Test building and booting a Centos 9 Stream image with Nodepool and
OpenStack.
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: centos-minimal
release: '9-stream'
# TODO: set when CentOS 9 Stream repos mirrored.
# mirror: "http://{{ zuul_site_mirror_fqdn }}/centos"
- job:
name: dib-nodepool-functional-openstack-fedora-37-containerfile-src
description: |
Test building and booting an Fedora image from a
containerfile with Nodepool and OpenStack (using released
libraries)
parent: dib-nodepool-functional-src-base
vars:
nodepool_debug: true
nodepool_diskimage:
base_element : fedora-container
release: '37'
- job:
name: dib-nodepool-functional-openstack-rockylinux-8-containerfile-src
description: |
Test building and booting a Rocky Linux image from a
containerfile with Nodepool and OpenStack (using released
libraries)
parent: dib-nodepool-functional-src-base
vars:
nodepool_debug: true
nodepool_diskimage:
base_element: rocky-container
release: '8'
- job:
name: dib-nodepool-functional-openstack-rockylinux-9-containerfile-src
description: |
Test building and booting a Rocky Linux image from a
containerfile with Nodepool and OpenStack (using released
libraries)
parent: dib-nodepool-functional-src-base
vars:
nodepool_debug: true
nodepool_diskimage:
base_element: rocky-container
release: '9'
- job:
name: dib-nodepool-functional-openstack-ubuntu-xenial-src
description: |
Test building and booting an Ubuntu xenial image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: ubuntu-minimal
release: 'xenial'
mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu"
env-vars:
DIB_APT_LOCAL_CACHE: '0'
DIB_DISABLE_APT_CLEANUP: '1'
DIB_DEBOOTSTRAP_EXTRA_ARGS: '--no-check-gpg'
- job:
name: dib-nodepool-functional-openstack-ubuntu-bionic-src
description: |
Test building and booting an Ubuntu bionic image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: ubuntu-minimal
release: 'bionic'
mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu"
env-vars:
DIB_APT_LOCAL_CACHE: '0'
DIB_DISABLE_APT_CLEANUP: '1'
DIB_DEBOOTSTRAP_EXTRA_ARGS: '--no-check-gpg'
- job:
name: dib-nodepool-functional-openstack-ubuntu-focal-src
description: |
Test building and booting an Ubuntu focal image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: ubuntu-minimal
release: 'focal'
mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu"
env-vars:
DIB_APT_LOCAL_CACHE: '0'
DIB_DISABLE_APT_CLEANUP: '1'
DIB_DEBOOTSTRAP_EXTRA_ARGS: '--no-check-gpg'
- job:
name: dib-nodepool-functional-openstack-ubuntu-jammy-src
description: |
Test building and booting an Ubuntu jammy image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: ubuntu-minimal
release: 'jammy'
mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu"
env-vars:
DIB_APT_LOCAL_CACHE: '0'
DIB_DISABLE_APT_CLEANUP: '1'
DIB_DEBOOTSTRAP_EXTRA_ARGS: '--no-check-gpg'
- job:
name: dib-nodepool-functional-openstack-ubuntu-noble-src
description: |
Test building and booting an Ubuntu noble image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: ubuntu-minimal
release: 'noble'
# mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu"
env-vars:
DIB_APT_LOCAL_CACHE: '0'
DIB_DISABLE_APT_CLEANUP: '1'
DIB_DEBOOTSTRAP_EXTRA_ARGS: '--no-check-gpg'
- job:
name: dib-nodepool-functional-openstack-gentoo-src
description: |
Test building and booting a Gentoo image with Nodepool and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: gentoo
release: ''
- job:
name: dib-nodepool-functional-openstack-debian-stretch-src
description: |
Test building and booting a Debian stretch image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: debian-minimal
release: 'stretch'
mirror: "http://{{ zuul_site_mirror_fqdn }}/debian"
env-vars:
DIB_APT_LOCAL_CACHE: '0'
DIB_DISABLE_APT_CLEANUP: '1'
DIB_DEBOOTSTRAP_EXTRA_ARGS: '--no-check-gpg'
- job:
name: dib-nodepool-functional-openstack-debian-bullseye-src
description: |
Test building and booting a Debian bullseye image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: debian-minimal
release: 'bullseye'
mirror: "http://{{ zuul_site_mirror_fqdn }}/debian"
env-vars:
DIB_APT_LOCAL_CACHE: '0'
DIB_DISABLE_APT_CLEANUP: '1'
DIB_DEBOOTSTRAP_EXTRA_ARGS: '--no-check-gpg'
- job:
name: dib-nodepool-functional-openstack-debian-buster-src
description: |
Test building and booting a Debian buster image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: debian-minimal
release: 'buster'
mirror: "http://{{ zuul_site_mirror_fqdn }}/debian"
env-vars:
DIB_APT_LOCAL_CACHE: '0'
DIB_DISABLE_APT_CLEANUP: '1'
DIB_DEBOOTSTRAP_EXTRA_ARGS: '--no-check-gpg'
- job:
name: dib-nodepool-functional-openstack-opensuse-15-src
description: |
Test building and booting an openSUSE 15.x image with Nodepool
and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_diskimage:
base_element: opensuse-minimal
release: '15.2'
mirror: "http://{{ zuul_site_mirror_fqdn }}/opensuse"