diskimage-builder/.zuul.d/jobs.yaml
Ian Wienand ac7fba7040 pip-and-virtualenv: drop f31 & tumbleweed, rework suse 15 install
This is an alternative approach to commit
68bb43535e.  I think this proposes a
better overall solution that the prior change which had the Python 3
packages being installed, but did not specify the _do_py3 flag to do
the installation steps that redirect the various tool installations.

Fedora 31+ doesn't have python2, and Tumbleweed does have some Python
2 support but there seems to be no reason to bother updating this
element for either with infra very close to removing this completely
[1].  Error out on these platforms, and add a release note.

The 15 path should include the python2 and python3 packages, along
with the flags to do the "cleanup"; i.e. forced removal of distutils
packages that pip 10+ won't touch.  As mentioned in the original
change, the six package causes problems here, but we can clear that
too by explicitly listing it instead of letting it come in via
dependencies.  Again, this element will be removed from the infra 15
builds ASAP; but we can release with this to provide a roll-back point
if we need to revert the removal to fix things temporarily.

Add it to the testing path as well.

[1] https://docs.opendev.org/opendev/infra-specs/latest/specs/cleanup-test-node-python.html

Change-Id: I7a6a342461d6001c25e55638ba9b7438c28f2519
2020-04-23 08:10:26 +10:00

385 lines
11 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/.*$
- job:
name: dib-functests-default
description: |
This is the base set of stable tests
abstract: true
parent: dib-functests-base
vars:
dib_functests:
- apt-sources/test-sources
- centos-minimal/7-build-succeeds
- centos-minimal/8-build-succeeds
- pip-and-virtualenv/source-install-ubuntu
- ubuntu-minimal/trusty-build-succeeds
- ubuntu-minimal/xenial-build-succeeds
- ubuntu-minimal/bionic-build-succeeds
- job:
name: dib-functests-image
description: |
This is tests that rely on downloading an upstream
image. We generally do not have mirrors for these images
so they can be slighlty unreliable.
abstract: true
voting: false
parent: dib-functests-base
vars:
dib_functests:
- centos7/build-succeeds
- centos/8-build-succeeds
- opensuse/build-succeeds
- opensuse/opensuse15-build-succeeds
- ubuntu/trusty-build-succeeds
- ubuntu/xenial-build-succeeds
- ubuntu/bionic-build-succeeds
- job:
name: dib-functests-extras
description: |
These are tests which are not as widely supported as the
core platforms
abstract: true
voting: false
parent: dib-functests-base
vars:
dib_functests:
- gentoo/build-succeeds
- debian-minimal/stable-vm
- job:
name: dib-functests-containers
description: |
These are tests for elements focused on containers or other
small deployments
abstract: true
voting: false
parent: dib-functests-base
vars:
dib_functests:
- ubuntu-systemd-container/bionic-build-succeeds
- ubuntu-systemd-container/xenial-build-succeeds
- job:
name: dib-functests-arm64
description: |
ARM64 build tests
abstract: true
parent: dib-functests-base
vars:
dib_functests:
- ubuntu-minimal/bionic-arm64-build-succeeds
- centos-minimal/8-aarch64-build-succeeds
# Bionic / Python3 tests
- job:
name: dib-functests-bionic-python3
description: |
Run the default tests on a Bionic build host with Python 3
parent: dib-functests-default
nodeset: ubuntu-bionic
vars:
# These can only build on bionic
dib_functests_extra:
- fedora-minimal/build-succeeds
- pip-and-virtualenv/source-install-fedora
voting: false
- job:
name: dib-functests-bionic-python3-image
description: |
The image tests on a Bionic build host with Python 3
parent: dib-functests-image
nodeset: ubuntu-bionic
vars:
dib_functests_extra:
- fedora/build-succeeds
voting: false
- job:
name: dib-functests-bionic-python3-extras
description: |
The extras tests on a Bionic build host with Python 3
parent: dib-functests-extras
nodeset: ubuntu-bionic
voting: false
- job:
name: dib-functests-bionic-python3-containers
description: |
The containers tests on a Bionic build host with Python 3
parent: dib-functests-containers
nodeset: ubuntu-bionic
voting: false
# Xenial / Python3 tests
- job:
name: dib-functests-xenial-python3
description: |
Run the default tests on a Xenial build host with Python 3
parent: dib-functests-default
nodeset: ubuntu-xenial
vars:
dib_functests_extra:
# Only builds on xenial; should work on focal in future
- pip-and-virtualenv/source-install-opensuse
- job:
name: dib-functests-xenial-python3-image
description: |
The image tests on a Xenial build host with Python 3
parent: dib-functests-image
nodeset: ubuntu-xenial
- job:
name: dib-functests-xenial-python3-extras
description: |
The extras tests on a Xenial build host with Python 3
parent: dib-functests-extras
nodeset: ubuntu-xenial
vars:
# opensuse-minimal can only build on xenial ATM, as other
# platforms don't have zypper
dib_functests_extra:
- opensuse-minimal/opensuse15-build-succeeds
- job:
name: dib-functests-xenial-python3-containers
description: |
The containers tests on a Xenial build host with Python 3
parent: dib-functests-containers
nodeset: ubuntu-xenial
voting: false
# Centos 7 / Python2 tests
- job:
name: dib-functests-centos7-python2
description: |
Run the default tests on a Centos 7 build host with Python 2
parent: dib-functests-default
nodeset: centos-7
vars:
dib_python: python2
- job:
name: dib-functests-centos7-python2-image
description: |
The image tests on a Centos 7 build host with Python 2
parent: dib-functests-image
nodeset: centos-7
vars:
dib_python: python2
- job:
name: dib-functests-centos7-python2-extras
description: |
The extras tests on a Centos 7 build host with Python 2
parent: dib-functests-extras
nodeset: centos-7
vars:
dib_python: python2
# ARM64 tests
- job:
name: dib-functests-arm64-bionic
description: |
ARM64 image tests building on am ARM64 Bionic host
nodeset: ubuntu-bionic-arm64
parent: dib-functests-arm64
# 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
parent: nodepool-functional-openstack-src-base
vars:
nodepool_debug: true
- job:
name: dib-nodepool-functional-openstack-centos-7-src
description: |
Test building and booting a Centos 7 image with Nodepool and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_extra_packages:
- rpm
- yum-utils
nodepool_diskimage:
base_element: centos-minimal
release: '7'
mirror: "http://{{ zuul_site_mirror_fqdn }}/centos"
- job:
name: dib-nodepool-functional-openstack-centos-8-src
description: |
Test building and booting a Centos 8 image with Nodepool and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_extra_packages:
- rpm
- yum-utils
nodepool_diskimage:
base_element: centos-minimal
release: '8'
mirror: "http://{{ zuul_site_mirror_fqdn }}/centos"
- job:
name: dib-nodepool-functional-openstack-fedora-30-src
description: |
Test building and booting a Fedora 30 image with Nodepool and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_extra_packages:
- rpm
- yum-utils
nodepool_diskimage:
base_element: fedora-minimal
release: '30'
- job:
name: dib-nodepool-functional-openstack-fedora-31-src
description: |
Test building and booting a Fedora 31 image with Nodepool and OpenStack
parent: dib-nodepool-functional-src-base
vars:
nodepool_extra_packages:
- rpm
- yum-utils
nodepool_diskimage:
base_element: fedora-minimal
release: '31'
- 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
pre-run: playbooks/dib-nodepool/debootstrap.yaml
vars:
nodepool_extra_packages:
- debootstrap
nodepool_diskimage:
base_element: ubuntu-minimal
release: 'xenial'
mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu"
- job:
name: dib-nodepool-functional-openstack-ubuntu-bionic
description: |
Test building and booting an Ubuntu bionic image with Nodepool
and OpenStack (using released libraries)
parent: nodepool-functional-openstack-base
pre-run: playbooks/dib-nodepool/debootstrap.yaml
vars:
nodepool_debug: true
nodepool_extra_packages:
- debootstrap
nodepool_diskimage:
base_element: ubuntu-minimal
release: 'bionic'
mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu"
- 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
pre-run: playbooks/dib-nodepool/debootstrap.yaml
vars:
nodepool_extra_packages:
- debootstrap
nodepool_diskimage:
base_element: ubuntu-minimal
release: 'bionic'
mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu"
- 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: ''
env-vars:
GENTOO_PROFILE: 'default/linux/amd64/17.1/systemd'
- 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
pre-run: playbooks/dib-nodepool/debootstrap.yaml
vars:
nodepool_extra_packages:
- debootstrap
nodepool_diskimage:
base_element: debian-minimal
release: 'stretch'
mirror: "http://{{ zuul_site_mirror_fqdn }}/debian"
- 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
pre-run: playbooks/dib-nodepool/debootstrap.yaml
vars:
nodepool_extra_packages:
- debootstrap
nodepool_diskimage:
base_element: debian-minimal
release: 'buster'
mirror: "http://{{ zuul_site_mirror_fqdn }}/debian"
- 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
nodeset: ubuntu-xenial # Bionic lacks zypper
vars:
nodepool_extra_packages:
- zypper
- gnupg2
nodepool_diskimage:
base_element: opensuse-minimal
release: '15.1'
mirror: "http://{{ zuul_site_mirror_fqdn }}/opensuse"
- job:
name: dib-nodepool-functional-openstack-opensuse-tumbleweed-src
description: |
Test building and booting an openSUSE tumbleweed image with
Nodepool and OpenStack
parent: dib-nodepool-functional-src-base
nodeset: ubuntu-xenial # Bionic lacks zypper
vars:
nodepool_extra_packages:
- zypper
- gnupg2
nodepool_diskimage:
base_element: opensuse-minimal
release: 'tumbleweed'