From bc437b12d3e69a9c3a76aee2d9bdffbdd9800931 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Evrard Date: Tue, 18 Dec 2018 14:28:25 +0100 Subject: [PATCH] Fix periodics Periodics don't get scheduled if 'files' directive is used in the job definition. This is a problem, as we wanted to use files to restrict the amount of images to use while gating. The solution is to have two kind of jobs: check/gates jobs with a more surgical approach, and periodic/post jobs with a global approach. This patch creates unnamed "variants" for check/gates that are based on the periodic/post jobs, adding only the 'file' directive. This patch also sorts the jobs in zuul files alphabetically, so it is easier to find them. The projects's pipelines are also sorted according to a chronological order: check/gates/post/periodics jobs. LOCI jobs were also fixed in this commit. Some jobs were passing but were inconsistently configured (voting in checks but not running in gates). They are now moved to voting/gating. Change-Id: Ifa28d894167003affc71256e49805b3482bf9a61 --- zuul.d/ceph-config-helper.yaml | 42 +++++++++++------------ zuul.d/gate-utils.yaml | 32 +++++++++--------- zuul.d/libvirt.yaml | 45 ++++++++++++------------ zuul.d/mariadb.yaml | 15 ++++---- zuul.d/openstack-loci.yaml | 62 +++++++++++++++++++++------------- zuul.d/openvswitch.yaml | 28 +++++++-------- zuul.d/tempest.yaml | 15 ++++---- zuul.d/vbmc.yaml | 32 ++++++++---------- 8 files changed, 139 insertions(+), 132 deletions(-) diff --git a/zuul.d/ceph-config-helper.yaml b/zuul.d/ceph-config-helper.yaml index 05c0a2f..67239d2 100644 --- a/zuul.d/ceph-config-helper.yaml +++ b/zuul.d/ceph-config-helper.yaml @@ -16,16 +16,26 @@ - project: check: jobs: - - openstack-helm-images-ceph-config-helper-ubuntu_xenial - - openstack-helm-images-ceph-config-helper-suse_15 + - openstack-helm-images-ceph-config-helper-suse_15: + files: &ceph-suse15-files + - ^ceph-config-helper/build.sh + - ^ceph-config-helper/Dockerfile.suse_15$ + - ^zuul.d/ceph-config-helper.yaml + - openstack-helm-images-ceph-config-helper-ubuntu_xenial: + files: &ceph-ubuntuxenial-files + - ^ceph-config-helper/build.sh + - ^ceph-config-helper/Dockerfile.ubuntu_xenial$ + - ^zuul.d/ceph-config-helper.yaml gate: jobs: - - openstack-helm-images-ceph-config-helper-ubuntu_xenial - - openstack-helm-images-ceph-config-helper-suse_15 + - openstack-helm-images-ceph-config-helper-suse_15: + files: *ceph-suse15-files + - openstack-helm-images-ceph-config-helper-ubuntu_xenial: + files: *ceph-ubuntuxenial-files periodic: jobs: - - openstack-helm-images-ceph-config-helper-ubuntu_xenial - openstack-helm-images-ceph-config-helper-suse_15 + - openstack-helm-images-ceph-config-helper-ubuntu_xenial #experimental: # jobs: # - openstack-helm-infra-five-ubuntu @@ -34,27 +44,17 @@ name: openstack-helm-images-ceph-config-helper parent: openstack-helm-images-base abstract: true - files: - - ^ceph-config-helper/.* vars: image_path: ceph-config-helper -- job: - name: openstack-helm-images-ceph-config-helper-ubuntu_xenial - parent: openstack-helm-images-ceph-config-helper - files: - - ^ceph-config-helper/build.sh - - ^ceph-config-helper/Dockerfile.ubuntu_xenial$ - - ^zuul.d/ceph-config-helper.yaml - vars: - distro: "ubuntu_xenial" - - job: name: openstack-helm-images-ceph-config-helper-suse_15 parent: openstack-helm-images-ceph-config-helper - files: - - ^ceph-config-helper/build.sh - - ^ceph-config-helper/Dockerfile.suse_15$ - - ^zuul.d/ceph-config-helper.yaml vars: distro: "suse_15" + +- job: + name: openstack-helm-images-ceph-config-helper-ubuntu_xenial + parent: openstack-helm-images-ceph-config-helper + vars: + distro: "ubuntu_xenial" diff --git a/zuul.d/gate-utils.yaml b/zuul.d/gate-utils.yaml index ad7b8dc..df22013 100644 --- a/zuul.d/gate-utils.yaml +++ b/zuul.d/gate-utils.yaml @@ -16,13 +16,23 @@ - project: check: jobs: - - openstack-helm-images-gate-utils-debian - - openstack-helm-images-gate-utils-suse_15 - periodic: - jobs: - - openstack-helm-images-gate-utils-debian - - openstack-helm-images-gate-utils-suse_15 + - openstack-helm-images-gate-utils-debian: + files: &gate-debian-files + - ^gate-utils/build.sh + - ^gate-utils/Dockerfile.debian$ + - ^zuul.d/gate-utils.yaml + - openstack-helm-images-gate-utils-suse_15: + files: &gate-suse15-files + - ^gate-utils/build.sh + - ^gate-utils/Dockerfile.suse_15$ + - ^zuul.d/gate-utils.yaml gate: + jobs: + - openstack-helm-images-gate-utils-debian: + files: *gate-debian-files + - openstack-helm-images-gate-utils-suse_15: + files: *gate-suse15-files + periodic: jobs: - openstack-helm-images-gate-utils-debian - openstack-helm-images-gate-utils-suse_15 @@ -34,27 +44,17 @@ name: openstack-helm-images-gate-utils parent: openstack-helm-images-base abstract: true - files: - - ^gate-utils/.* vars: image_path: gate-utils - job: name: openstack-helm-images-gate-utils-debian parent: openstack-helm-images-gate-utils - files: - - ^gate-utils/build.sh - - ^gate-utils/Dockerfile.debian$ - - ^zuul.d/gate-utils.yaml vars: distro: "debian" - job: name: openstack-helm-images-gate-utils-suse_15 parent: openstack-helm-images-gate-utils - files: - - ^gate-utils/build.sh - - ^gate-utils/Dockerfile.suse_15$ - - ^zuul.d/gate-utils.yaml vars: distro: "suse_15" diff --git a/zuul.d/libvirt.yaml b/zuul.d/libvirt.yaml index dad5173..95d2fce 100644 --- a/zuul.d/libvirt.yaml +++ b/zuul.d/libvirt.yaml @@ -16,16 +16,27 @@ - project: check: jobs: - - openstack-helm-images-libvirt-ubuntu_xenial - - openstack-helm-images-libvirt-suse_15 + - openstack-helm-images-libvirt-suse_15: + files: &libvirt-suse15-files + - ^libvirt/build.sh + - ^libvirt/Dockerfile.suse_15$ + - ^libvirt/suse_.*$ + - ^zuul.d/libvirt.yaml + - openstack-helm-images-libvirt-ubuntu_xenial: + files: &libvirt-ubuntuxenial-files + - ^libvirt/build.sh + - ^libvirt/Dockerfile.ubuntu_xenial$ + - ^zuul.d/libvirt.yaml gate: jobs: - - openstack-helm-images-libvirt-ubuntu_xenial - - openstack-helm-images-libvirt-suse_15 + - openstack-helm-images-libvirt-suse_15: + files: *libvirt-suse15-files + - openstack-helm-images-libvirt-ubuntu_xenial: + files: *libvirt-ubuntuxenial-files periodic: jobs: - - openstack-helm-images-libvirt-ubuntu_xenial - openstack-helm-images-libvirt-suse_15 + - openstack-helm-images-libvirt-ubuntu_xenial #experimental: # jobs: # - openstack-helm-infra-five-ubuntu @@ -34,29 +45,17 @@ name: openstack-helm-images-libvirt parent: openstack-helm-images-base abstract: true - files: - - ^libvirt/.* vars: image_path: libvirt -- job: - name: openstack-helm-images-libvirt-ubuntu_xenial - parent: openstack-helm-images-libvirt - files: - - ^libvirt/build.sh - - ^libvirt/Dockerfile.ubuntu_xenial$ - - ^zuul.d/libvirt.yaml - vars: - distro: "ubuntu_xenial" - - job: name: openstack-helm-images-libvirt-suse_15 parent: openstack-helm-images-libvirt - files: - - ^libvirt/build.sh - - ^libvirt/Dockerfile.suse_15$ - - ^libvirt/suse_leap15_virtualization_repo.key$ - - ^libvirt/suse_sle15_ceph_repo.key$ - - ^zuul.d/libvirt.yaml vars: distro: "suse_15" + +- job: + name: openstack-helm-images-libvirt-ubuntu_xenial + parent: openstack-helm-images-libvirt + vars: + distro: "ubuntu_xenial" diff --git a/zuul.d/mariadb.yaml b/zuul.d/mariadb.yaml index 3a848f8..87a85b2 100644 --- a/zuul.d/mariadb.yaml +++ b/zuul.d/mariadb.yaml @@ -16,10 +16,15 @@ - project: check: jobs: - - openstack-helm-images-mariadb-ubuntu_xenial + - openstack-helm-images-mariadb-ubuntu_xenial: + files: &mariadb-ubuntuxenial-files + - ^mariadb/build.sh + - ^mariadb/Dockerfile.ubuntu_xenial$ + - ^zuul.d/mariadb.yaml gate: jobs: - - openstack-helm-images-mariadb-ubuntu_xenial + - openstack-helm-images-mariadb-ubuntu_xenial: + files: *mariadb-ubuntuxenial-files periodic: jobs: - openstack-helm-images-mariadb-ubuntu_xenial @@ -31,17 +36,11 @@ name: openstack-helm-images-mariadb parent: openstack-helm-images-base abstract: true - files: - - ^mariadb/.* vars: image_path: mariadb - job: name: openstack-helm-images-mariadb-ubuntu_xenial parent: openstack-helm-images-mariadb - files: - - ^mariadb/build.sh - - ^mariadb/Dockerfile.ubuntu_xenial$ - - ^zuul.d/mariadb.yaml vars: distro: "ubuntu_xenial" diff --git a/zuul.d/openstack-loci.yaml b/zuul.d/openstack-loci.yaml index d26cdcf..6ba28fe 100644 --- a/zuul.d/openstack-loci.yaml +++ b/zuul.d/openstack-loci.yaml @@ -18,16 +18,33 @@ jobs: - openstack-helm-images-openstack-loci-newton-ubuntu_xenial: voting: false - - openstack-helm-images-openstack-loci-ocata-ubuntu_xenial - - openstack-helm-images-openstack-loci-pike-ubuntu_xenial - - openstack-helm-images-openstack-loci-queens-suse_leap15: - voting: false - - openstack-helm-images-openstack-loci-queens-ubuntu_xenial - + files: &loci-files + - ^openstack/loci/.* + - zuul.d/openstack-loci.yaml + - openstack-helm-images-openstack-loci-ocata-ubuntu_xenial: + files: *loci-files + - openstack-helm-images-openstack-loci-pike-ubuntu_xenial: + files: *loci-files + - openstack-helm-images-openstack-loci-queens-suse_15: + files: *loci-files + - openstack-helm-images-openstack-loci-queens-ubuntu_xenial: + files: *loci-files gate: + jobs: + - openstack-helm-images-openstack-loci-ocata-ubuntu_xenial: + files: *loci-files + - openstack-helm-images-openstack-loci-pike-ubuntu_xenial: + files: *loci-files + - openstack-helm-images-openstack-loci-queens-suse_15: + files: *loci-files + - openstack-helm-images-openstack-loci-queens-ubuntu_xenial: + files: *loci-files + periodic: jobs: - openstack-helm-images-openstack-loci-ocata-ubuntu_xenial - openstack-helm-images-openstack-loci-pike-ubuntu_xenial + - openstack-helm-images-openstack-loci-queens-suse_15 + - openstack-helm-images-openstack-loci-queens-ubuntu_xenial #experimental: # jobs: # - openstack-helm-infra-five-ubuntu @@ -38,9 +55,6 @@ abstract: true vars: use_tmpfs: False - files: - - ^openstack/loci/.* - - zuul.d/openstack-loci.yaml required-projects: - name: openstack/loci pre-run: @@ -54,10 +68,6 @@ vars: build_command: './build-newton.sh' -- job: - name: openstack-helm-images-openstack-loci-newton-ubuntu_xenial - parent: openstack-helm-images-openstack-loci-newton - - job: name: openstack-helm-images-openstack-loci-ocata parent: openstack-helm-images-openstack-loci @@ -65,10 +75,6 @@ vars: build_command: './build-ocata.sh' -- job: - name: openstack-helm-images-openstack-loci-ocata-ubuntu_xenial - parent: openstack-helm-images-openstack-loci-ocata - - job: name: openstack-helm-images-openstack-loci-pike parent: openstack-helm-images-openstack-loci @@ -76,10 +82,6 @@ vars: build_command: './build-pike.sh' -- job: - name: openstack-helm-images-openstack-loci-pike-ubuntu_xenial - parent: openstack-helm-images-openstack-loci-pike - - job: name: openstack-helm-images-openstack-loci-queens parent: openstack-helm-images-openstack-loci @@ -88,12 +90,24 @@ build_command: './build-queens.sh' - job: - name: openstack-helm-images-openstack-loci-queens-ubuntu_xenial - parent: openstack-helm-images-openstack-loci-queens + name: openstack-helm-images-openstack-loci-newton-ubuntu_xenial + parent: openstack-helm-images-openstack-loci-newton - job: - name: openstack-helm-images-openstack-loci-queens-suse_leap15 + name: openstack-helm-images-openstack-loci-ocata-ubuntu_xenial + parent: openstack-helm-images-openstack-loci-ocata + +- job: + name: openstack-helm-images-openstack-loci-pike-ubuntu_xenial + parent: openstack-helm-images-openstack-loci-pike + +- job: + name: openstack-helm-images-openstack-loci-queens-suse_15 parent: openstack-helm-images-openstack-loci-queens vars: build_environment: BASE_IMAGE: leap15 + +- job: + name: openstack-helm-images-openstack-loci-queens-ubuntu_xenial + parent: openstack-helm-images-openstack-loci-queens diff --git a/zuul.d/openvswitch.yaml b/zuul.d/openvswitch.yaml index 25e17aa..c622f18 100644 --- a/zuul.d/openvswitch.yaml +++ b/zuul.d/openvswitch.yaml @@ -16,12 +16,22 @@ - project: check: jobs: - - openstack-helm-images-openvswitch-debian - - openstack-helm-images-openvswitch-suse_15 + - openstack-helm-images-openvswitch-debian: + files: &ovs-debian-files + - ^openvswitch/build.sh + - ^openvswitch/Dockerfile.debian$ + - ^zuul.d/openvswitch.yaml + - openstack-helm-images-openvswitch-suse_15: + files: &ovs-suse15-files + - ^openvswitch/build.sh + - ^openvswitch/Dockerfile.suse_15$ + - ^zuul.d/openvswitch.yaml gate: jobs: - - openstack-helm-images-openvswitch-debian - - openstack-helm-images-openvswitch-suse_15 + - openstack-helm-images-openvswitch-debian: + files: *ovs-debian-files + - openstack-helm-images-openvswitch-suse_15: + files: *ovs-suse15-files periodic: jobs: - openstack-helm-images-openvswitch-debian @@ -34,27 +44,17 @@ name: openstack-helm-images-openvswitch parent: openstack-helm-images-base abstract: true - files: - - ^openvswitch/.* vars: image_path: openvswitch - job: name: openstack-helm-images-openvswitch-debian parent: openstack-helm-images-openvswitch - files: - - ^openvswitch/build.sh - - ^openvswitch/Dockerfile.debian$ - - ^zuul.d/openvswitch.yaml vars: distro: "debian" - job: name: openstack-helm-images-openvswitch-suse_15 parent: openstack-helm-images-openvswitch - files: - - ^openvswitch/build.sh - - ^openvswitch/Dockerfile.suse_15$ - - ^zuul.d/openvswitch.yaml vars: distro: "suse_15" diff --git a/zuul.d/tempest.yaml b/zuul.d/tempest.yaml index d649101..6db31e4 100644 --- a/zuul.d/tempest.yaml +++ b/zuul.d/tempest.yaml @@ -16,10 +16,15 @@ - project: check: jobs: - - openstack-helm-images-tempest-ubuntu_xenial + - openstack-helm-images-tempest-ubuntu_xenial: + files: &tempest-ubuntuxenial-files + - ^tempest/build.sh + - ^tempest/Dockerfile.ubuntu_xenial$ + - ^zuul.d/tempest.yaml gate: jobs: - - openstack-helm-images-tempest-ubuntu_xenial + - openstack-helm-images-tempest-ubuntu_xenial: + files: *tempest-ubuntuxenial-files periodic: jobs: - openstack-helm-images-tempest-ubuntu_xenial @@ -31,17 +36,11 @@ name: openstack-helm-images-tempest parent: openstack-helm-images-base abstract: true - files: - - ^tempest/.* vars: image_path: tempest - job: name: openstack-helm-images-tempest-ubuntu_xenial parent: openstack-helm-images-tempest - files: - - ^tempest/build.sh - - ^tempest/Dockerfile.ubuntu_xenial$ - - ^zuul.d/tempest.yaml vars: distro: "ubuntu_xenial" diff --git a/zuul.d/vbmc.yaml b/zuul.d/vbmc.yaml index b239376..c2e9061 100644 --- a/zuul.d/vbmc.yaml +++ b/zuul.d/vbmc.yaml @@ -16,15 +16,22 @@ - project: check: jobs: - # We should add a job here that tests the vbmc image - # Alternatively, we can add a deploy using vbmc, and reuse - # the deploy's functional testing - - openstack-helm-images-vbmc-centos_7 - - openstack-helm-images-vbmc-suse_15 + - openstack-helm-images-vbmc-centos_7: + files: &vbmc-centos7-files + - ^vbmc/build.sh + - ^vbmc/Dockerfile.centos_7$ + - ^zuul.d/vbmc.yaml + - openstack-helm-images-vbmc-suse_15: + files: &vbmc-suse15-files + - ^vbmc/Dockerfile.suse_15 + - ^vbmc/build.sh + - ^zuul.d/vbmc.yaml gate: jobs: - - openstack-helm-images-vbmc-centos_7 - - openstack-helm-images-vbmc-suse_15 + - openstack-helm-images-vbmc-centos_7: + files: *vbmc-centos7-files + - openstack-helm-images-vbmc-suse_15: + files: *vbmc-suse15-files periodic: jobs: - openstack-helm-images-vbmc-centos_7 @@ -40,22 +47,11 @@ - job: name: openstack-helm-images-vbmc-centos_7 parent: openstack-helm-images-vbmc - files: - - ^vbmc/build.sh - - ^vbmc/Dockerfile.centos_7$ - - ^zuul.d/vbmc.yaml vars: distro: "centos_7" -# This is an example of how to re-use the jobs for -# multi-distro. The image would get built with a -# different tag, based on distro argument. - job: name: openstack-helm-images-vbmc-suse_15 parent: openstack-helm-images-vbmc - files: - - ^vbmc/Dockerfile.suse_15 - - ^vbmc/build.sh - - ^zuul.d/vbmc.yaml vars: distro: "suse_15"