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
This commit is contained in:
Dan Smith 2023-03-01 14:33:34 -08:00
parent 8fdda79453
commit 3877df6af1
1 changed files with 24 additions and 10 deletions

View File

@ -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