From d32329f596ee881d9ebd4278c26ee817a946d937 Mon Sep 17 00:00:00 2001 From: "James E. Blair" Date: Mon, 24 Jun 2019 13:39:56 -0700 Subject: [PATCH] Replace nodepool func jobs These are new nodepool functional jobs designed to give more flexibility to the DIB/clean projects to define what they need to test. Otherwise, they behave very similarly to the current nodepool functional jobs Depends-On: https://review.opendev.org/665023 Change-Id: Id73e913300cf3f0aaea05f7c2e8fdcb753421d04 --- .zuul.d/jobs.yaml | 153 ++++++++++++++++++++++++ .zuul.d/project.yaml | 22 ++-- playbooks/dib-nodepool/debootstrap.yaml | 9 ++ 3 files changed, 177 insertions(+), 7 deletions(-) create mode 100644 playbooks/dib-nodepool/debootstrap.yaml diff --git a/.zuul.d/jobs.yaml b/.zuul.d/jobs.yaml index e7a23dad..990e251d 100644 --- a/.zuul.d/jobs.yaml +++ b/.zuul.d/jobs.yaml @@ -198,3 +198,156 @@ nodeset: centos-7 vars: dib_python: python2 + +- job: + name: dib-nodepool-functional-openstack-centos-7-src + description: | + Test building and booting a Centos 7 image with Nodepool and OpenStack + parent: nodepool-functional-openstack-src-base + vars: + nodepool_extra_packages: + - rpm + - yum-utils + nodepool_diskimage: + base_element: centos-minimal + release: '7' + mirror: "http://{{ zuul_site_mirror_fqdn }}/centos" + env-vars: + DIB_SIMPLE_INIT_NETWORKMANAGER: '1' + +- job: + name: dib-nodepool-functional-openstack-fedora-29-src + description: | + Test building and booting a Fedora 29 image with Nodepool and OpenStack + parent: nodepool-functional-openstack-src-base + vars: + nodepool_extra_packages: + - rpm + - yum-utils + nodepool_diskimage: + base_element: fedora-minimal + release: '29' + env-vars: + DIB_SIMPLE_INIT_NETWORKMANAGER: '1' + +- job: + name: dib-nodepool-functional-openstack-ubuntu-trusty-src + description: | + Test building and booting an Ubuntu trusty image with Nodepool + and OpenStack + parent: nodepool-functional-openstack-src-base + pre-run: playbooks/dib-nodepool/debootstrap.yaml + nodeset: ubuntu-xenial # Backported debootstrap only available for xenial + vars: + nodepool_extra_packages: + - debootstrap + nodepool_diskimage: + base_element: ubuntu-minimal + release: 'trusty' + mirror: "http://{{ zuul_site_mirror_fqdn }}/ubuntu" + +- job: + name: dib-nodepool-functional-openstack-ubuntu-xenial-src + description: | + Test building and booting an Ubuntu xenial image with Nodepool + and OpenStack + parent: nodepool-functional-openstack-src-base + pre-run: playbooks/dib-nodepool/debootstrap.yaml + nodeset: ubuntu-xenial # Backported debootstrap only available for xenial + 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-src + description: | + Test building and booting an Ubuntu bionic image with Nodepool + and OpenStack + parent: nodepool-functional-openstack-src-base + pre-run: playbooks/dib-nodepool/debootstrap.yaml + nodeset: ubuntu-xenial # Backported debootstrap only available for xenial + 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: nodepool-functional-openstack-src-base + vars: + nodepool_diskimage: + base_element: gentoo + release: '' + env-vars: + GENTOO_PROFILE: 'default/linux/amd64/17.0/systemd' + +- job: + name: dib-nodepool-functional-openstack-debian-stretch-src + description: | + Test building and booting a Debian stretch image with Nodepool + and OpenStack + parent: nodepool-functional-openstack-src-base + pre-run: playbooks/dib-nodepool/debootstrap.yaml + nodeset: ubuntu-xenial # Backported debootstrap only available for xenial + 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: nodepool-functional-openstack-src-base + pre-run: playbooks/dib-nodepool/debootstrap.yaml + nodeset: ubuntu-xenial # Backported debootstrap only available for xenial + 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-150-src + description: | + Test building and booting an openSUSE 15 image with Nodepool + and OpenStack + parent: nodepool-functional-openstack-src-base + nodeset: ubuntu-xenial # Bionic lacks zypper + vars: + nodepool_extra_packages: + - zypper + - gnupg2 + nodepool_diskimage: + base_element: opensuse-minimal + release: '15.0' + +- job: + name: dib-nodepool-functional-openstack-opensuse-tumbleweed-src + description: | + Test building and booting an openSUSE tumbleweed image with + Nodepool and OpenStack + parent: nodepool-functional-openstack-src-base + nodeset: ubuntu-xenial # Bionic lacks zypper + vars: + nodepool_extra_packages: + - zypper + - gnupg2 + nodepool_diskimage: + base_element: opensuse-minimal + release: 'tumbleweed' diff --git a/.zuul.d/project.yaml b/.zuul.d/project.yaml index 10d7bbe2..cbf30add 100644 --- a/.zuul.d/project.yaml +++ b/.zuul.d/project.yaml @@ -10,8 +10,11 @@ check: jobs: - openstack-tox-pylint - - nodepool-functional-py35-redhat-src - - nodepool-functional-py35-ubuntu-src + - dib-nodepool-functional-openstack-centos-7-src + - dib-nodepool-functional-openstack-fedora-29-src + - dib-nodepool-functional-openstack-ubuntu-trusty-src + - dib-nodepool-functional-openstack-ubuntu-xenial-src + - dib-nodepool-functional-openstack-ubuntu-bionic-src - dib-functests-centos7-python2 - dib-functests-centos7-python2-image - dib-functests-centos7-python2-extras @@ -29,15 +32,20 @@ gate: jobs: - openstack-tox-pylint - - nodepool-functional-py35-redhat-src - - nodepool-functional-py35-ubuntu-src + - dib-nodepool-functional-openstack-centos-7-src + - dib-nodepool-functional-openstack-fedora-29-src + - dib-nodepool-functional-openstack-ubuntu-trusty-src + - dib-nodepool-functional-openstack-ubuntu-xenial-src + - dib-nodepool-functional-openstack-ubuntu-bionic-src - dib-functests-trusty-python2 - dib-functests-xenial-python3 - dib-functests-centos7-python2 experimental: jobs: - - nodepool-functional-py35-gentoo-src - - nodepool-functional-py35-debian-src - - nodepool-functional-py35-suse-src + - dib-nodepool-functional-openstack-gentoo-src + - dib-nodepool-functional-openstack-debian-stretch-src + - dib-nodepool-functional-openstack-debian-buster-src + - dib-nodepool-functional-openstack-opensuse-150-src + - dib-nodepool-functional-openstack-opensuse-tumbleweed-src - octavia-v1-dsvm-scenario - octavia-v1-dsvm-py3x-scenario diff --git a/playbooks/dib-nodepool/debootstrap.yaml b/playbooks/dib-nodepool/debootstrap.yaml new file mode 100644 index 00000000..c83e13e7 --- /dev/null +++ b/playbooks/dib-nodepool/debootstrap.yaml @@ -0,0 +1,9 @@ +- hosts: all + tasks: + # We need a fixed debootstrap + # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=901977 + - name: Install updated debootstrap repo + become: true + shell: | + add-apt-repository ppa:openstack-ci-core/debootstrap + apt-get update