From 3877df6af1f5556d9960b6412e6e2011b19f5d49 Mon Sep 17 00:00:00 2001 From: Dan Smith Date: Wed, 1 Mar 2023 14:33:34 -0800 Subject: [PATCH] Factor out a grenade-skip-level-always job For projects that want to opt-in to testing N-2 upgrades on all releases (for early warning of issues, best practices, etc), this pulls out a grenade-skip-level-always job that can track N-2 regardless of whether master or N-2 is a SLURP release. The regular grenade-skip-level job can inherit from that, with the branch restriction and most recent SLURP as the from_branch. Note that this makes the specific job a subset of the generic for easier application of config to both. Right now they use different nodeset rules, but in the next release they will be the same, so it seems clearer to make it a hierarchy. Change-Id: I39d1cbc4a2633c9908ba0e25205fb2f6a4aa729e --- .zuul.yaml | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/.zuul.yaml b/.zuul.yaml index 9254cf9c..937dd797 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -372,12 +372,35 @@ nodeset: openstack-two-node-focal pre-run: playbooks/multinode-pre.yaml +- job: + name: grenade-skip-level-always + description: | + Grenade job that skips the previous release, validating that projects + can support upgrades from N-2 to master. + parent: grenade + nodeset: openstack-single-node-jammy + vars: + # For the base "always" job, this should always be the N-2 release from + # current master for projects that want to assert N-2 upgradability + # on all releases. + grenade_from_branch: stable/zed + grenade_localrc: + NOVA_ENABLE_UPGRADE_WORKAROUND: True + - job: name: grenade-skip-level description: | Grenade job that skips a release, validating that deployers can skip specific releases as prescribed by our process. - parent: grenade + nodeset: openstack-single-node-focal + parent: grenade-skip-level-always + # Move this forward when master changes to a new skip-level-allowed + # target release. Right now, this is stable/yoga because current master is 2023.1 + # (which is N+2 release from yoga so skipping zed release and testing the upgrade + # from stable/yoga -> 2023.1). When master is 2023.3, this should become 2023.1, + # and so forth. + vars: + grenade_from_branch: stable/yoga # NOTE(gmann): This job is started and meant to be run from Yoga release. # This job is meant to validate the SLURP to SLURP release # upgrade so supposed to run on SLURP release gate only. To make sure @@ -390,12 +413,3 @@ # also and in this job definition, we control for everyone to run on SLURP # release only. branches: ^(?!stable/(pike|queens|rocky|stein|train|ussuri|victoria|wallaby|xena|zed)).*$ - vars: - # Move this forward when master changes to a new skip-level-allowed - # target release. Right now, this is stable/yoga because current master is 2023.1 - # (which is N+2 release from yoga so skipping zed release and testing the upgrade - # from stable/yoga -> 2023.1). When master is 2023.3, this should become 2023.1, - # and so forth. - grenade_from_branch: stable/yoga - grenade_localrc: - NOVA_ENABLE_UPGRADE_WORKAROUND: True