Current master branch (2024.2) is non SLURP release and
grenade-skip-level job is not supposed to run on non SLURP
gate.If any project want to test upgrade from stable/2023.2
to 2024.2 then they can use grenade-skip-level-always job.
Keeping its job definition create more issue and confusion when
zuul looks for the job selection.
Change-Id: I705996a9eefd40b975080cdc51b68c4467b94437
we have notice failures in the grenade jobs
corralated with OOM events. grenade-base
previously used the default value of 1G
for configure_swap_size: but now its updated
to configure_swap_size: 8192
most devstack jobs have already been changed
to either 4096 or 8192. all jobs that inherit
form devstack-tempest use 4096 where as more
complex jobs such as those that have ceph use
8192. as grenade is a non trivial job this patch
uses 8192 MB
Change-Id: Ibf6dfe84f15019d0360e2c2042856aeecb22209d
Currently, because we don't run the n-novnc (console proxy) service on
the subnode, devstack won't enable VNC for guests hosted on the
subnode.
We see occasional failures in the gate when VNC tempest tests attempt
to obtain a VNC console for a guest that happened to get scheduled to
the subnode with the following error:
Details: {'code': 400, 'message': 'Unavailable console type novnc.'}
This sets NOVA_VNC_ENABLED = true for the subnode only, with the
thinking that the enabled n-novnc service is sufficient for the
controller node.
Jobs that derive from the "devstack" job [1] are already setting
NOVA_VNC_ENABLED: true for both the controller node and subnode.
[1] 3ffcc89d5d/.zuul.yaml (L535)
Change-Id: I1acbdb605e0e0d9e5b4604fcd21af850b06823b9
grenade is branched for stable/2023.2, so updating
the current master default setting for:
- Update grenade testing from stable/2023.2 to master.
- Update grenade-skip-level and grenade-skip-level-always
jobs to upgrade from stable/2023.1 -> master
Depends-On: https://review.opendev.org/c/openstack/grenade/+/897381
Change-Id: I1dbea0caad676d6be7a4a58495a76a351e3c41e5
Python regexes are deprecated in Zuul, so update the use of regexes
in branch matchers with re2-compatible syntax.
The commit also removes matches for branches that are EOL - all
branches until stable/rocky (including).
Change-Id: I43c696ef2029cbf351f902b293df05f296dbb2a2
We don't want to go through the hassle of changing existing deployments
from global pip installs to using a virtual environment, so disable this
feature in grenade jobs for now until we can use it on the old side,
too.
Needed-for: https://review.opendev.org/558930
Change-Id: I5e5a67cceade05a4a32ddd1b86802f9496d1bb79
grenade is branched for stable/2023.1, so updating
the current master default setting for:
- Update grenade testing from stable/2023.1 to master.
- Update grenade-skip-level job not to run for current non SLURP master
release
octavia-grenade job is broken due to diskimage-builder so to unblock
grenade gate, stop running it and we can run it once DIB fix is merged
and released
- https://review.opendev.org/c/openstack/diskimage-builder/+/878089
Change-Id: I400c7f386e5b900774039223c9199508229494a2
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
When devstack was switching to ML2/OVN as default backend,
in the base grenade job it was explicitly configured to use old default
ML2/OVS backend. It was done like that to avoid problems with upgrade
and change backend in the same job.
Now, as ML2/OVN is default backend in Devstack since at least
couple of cycles it's fine to switch grenade jobs to use default
backend.
Depends-On: https://review.opendev.org/c/openstack/ironic/+/866993
Depends-On: https://review.opendev.org/c/openstack/devstack/+/867065
Change-Id: Iede9fe71d81fc86a92122800d5a16f45442dd79e
This new Devstack's variable is introduced by patch [1] but as it's not
in the stable branches of Devstack yet, it can't be used in Grenade jobs
with default setting.
So lets set it to the emtpy string to make it working as it was before
[1].
[1] https://review.opendev.org/c/openstack/devstack/+/849145
Change-Id: I2de65d4764f23ae85a086d4d09ed80c81777434b
grenade-skip-level is added and supposed to be run from Yoga
release. We have added this job in integrated template which
is in branchless tempest side and applicable for stable branches
also.
We can control to run this job on Yoga and SLURP release onwards but
that leave if anyone running it directly without template So controlling
the branches in the job definition will work for everyone.
Change-Id: Ie560b25f83c3f102f408077f5023f07facf6095d
This adds a grenade job that specifically skips the last release,
to prove that we can do it. Such a job would facilitate a new
goal of a tick/tock release arrangement where slower-moving operators
could stick on the "tick" release and know that they can upgrade to
the next "tick" release directly.
Currently this tests from wallaby to yoga (master) and is added as
non-voting until the TC resolution passes (if it does).
Change-Id: I5a8fcc1097956ebbbe7b5ea0bed0889eeeca1d80
Most of the time, we miss to notice the n-v jobs failure and
end up introducing the regression. grenade-heat (new name grenade-heat-multinode)
and octavia-grenade are voting jobs on their project side so making those to voting
in grenade gate too.
Change-Id: Ic747ac9ddbb21a01e9dc18d8e8ad324d4d7d050d
Victoria only supports focal, so the upgrade from victoria
(starting from victoria+1) should use focal.
This patch should not be backported to victoria, because the
upgrades from ussuri still need to use bionic.
In order to make it work on focal:
- do not fail if ebtables does not contain the broute table
(which happens when it is based on nft);
- when the swift loopback image is remounted on upgrade,
do not use the nobarrier option, which was removed
with the 4.19 kernel. See also the corresponding change
in devstack: I6871a7765e3e04122d8d546f43d36bb8415383fc
Change-Id: If57c54828baf4e250ad08fdd95351490010e1b41
Devstack's lib/neutron shouldn't be used now as it isn't ready (still,
and probably never will be, but that's different story). On the main
node in multinode CI jobs for grenade we already used lib/neutron-legacy
which is fine. But on the subnodes it was still configured to use
lib/neutron instead of lib/neutron-legacy.
This patch is changing that so lib/neutron-legacy will be used on all
nodes in the grenade multinode jobs.
Change-Id: I6e581deeb6b9f2fc0e671882650e14bb6576c1cd
The octavia-grenade job has been migrated to a Zuul v3 native job. It
has been working fairly well and is a voting job in Octavia gate.
This patch adds octavia-grenade job to Grenade's check queue as a
non-voting job.
[1] https://zuul.openstack.org/builds?job_name=octavia-grenade&pipeline=gate&branch=master
Change-Id: I1f4b6029521d3d70ee85329b4b79d50615c357f5
The job is only executed by the grenade experimental queue, but:
- it is not run for changes in the trove respository (from
I49bd6c824b837d22d9f3945a3e8c2343c831b352) and when it was,
it was experimental anyway;
- more important: trove has no grenade plugin,
so the test is probably not relevant;
- as a side effect, this will allow us to remove
that legacy job completely, as a trove grenade
plugin may not arrive soon.
Change-Id: I8f976041e98502de4770ece8cb7f04a928e8f3d9
This patch is a part of switching ovn as a default in devstack
initiative. However, grenade will keep running with ml2/ovs for now.
This patch explicitly sets variables to deploy ml2/ovs, even though it's
still a default now.
Change-Id: I3db1ac3366cf959308028a12de0222206edd6e94
Signed-off-by: Jakub Libosvar <libosvar@redhat.com>
Since older devstack versions do not support glance in standalone mode,
make grenade configure the base and target for glance deployed with
uwsgi.
Change-Id: I9ac380aec2689277a2793a67b33b6f9ef8728003
The peakmem_tracker service has been deprecated in devstack and is
about to be removed, see [0]. Use the memory_tracker service instead.
[0] https://review.opendev.org/638409
Change-Id: I523b5f3734a7adc0001b58f9b14f79f15638b820
Setup a native Zuul v3 grenade-base job that defines base folders and
base devstack settings. The grenade play checks out repositories
in two locations, old and new, and sets up devstack config
in old and new as well.
Define a grenade job that sets up devstack services.
This job runs:
- devstack from grenade_from_branch (without tempest)
- grenade from grenade_to_branch
- projects in old from grenade_from_branch
and then tries to run grenade and then tempest.
The configure-grenade-branches role sets the base/target
branch variables (grenade_{from,to}_branch) and must be
updated when cutting a new branch.
Also, define the native versions of the grenade-postgresql
and grenade-multinode jobs, replacing non-native jobs
(like neutron-grenade and neutron-grenade-multinode) when possible.
Even though Python 3 is now the default, define grenade-py3
for compatibility reasons.
Finally, define a basic grenade-forward job which should
be used for forward upgrade testing. Forward testing
requires the user to set the destination branch,
and it is relevant for stable branches only, so disable it
from master.
At least for legacy grenade jobs, Zuul seems to be taking care
of Depends-On on the stable branch.
It is worth noting that tls-proxy is set to False as
it happens with the current legacy jobs. It does not
work by just flipping it to true.
Co-Authored-By: Luigi Toscano <ltoscano@redhat.com>
Depends-On: https://review.opendev.org/637523
Depends-On: https://review.opendev.org/649275
Change-Id: Iefe8d1d7d13bb56cbc9e80fb009d19218f8b1a64
'legacy-grenade-dsvm-neutron-forward' grenade neutron forward jobs
is present in opensatck-zuul-jobs repo running on python 2. This needs
to run on py3 from Ussuri onwards and py2 for stable/branch.
py2 version has been kept in opensatck-zuul-jobs and for ussuri
onwwards this has been migrated to grenade repo with py3 version.
Change-Id: Ifebd2492b9af322661c18a17c3724940d065c2b5
This job is still running python 2.7. As we are dropping py2 support in
Ussuri cycle, lets drop this job now.
There is same job called "grenade-py3" which runs on python 3 already
and this is still used in project's CI.
Change-Id: I4bc96e2b5d74e9dd2ad6c75136d84ae22c293218
Instead of using individual jobs, use the docs-pti template for Zuul
job configuration so that we can change docs publishing in a single
place.
Change-Id: I7b57b95e2d4eeb54d13dcb0960db91cb48b60470
This adds a grenade job which uses python3 on both
the old and new side of the upgrade run. This is part
of the python3-first community wide goal for the Stein
release. The exact version of python3 used depends on
the version of the underlying distro used in devstack
on both sides of the upgrade run.
Change-Id: Icc37e24c5910f189d09bcfed6cfbd348f6c24ab2
This adds a simple ansible alias for defining
irrelevant-files for grenade job usage so we
don't have to copy/paste this around.
Change-Id: I980a6d5fc5f45595076dc6c15673704ea9b9b13b
With the coming nova/placement extraction and need
to copy tables from the nova_api DB to the placement
DB, we should have a job using postgresql to verify
the upgrade also works for table copy/dump routine
for postgresql.
This adds a new grenade-postgresql job which copies
the neutron-grenade job configuration with the
exception of setting DEVSTACK_GATE_POSTGRES and it
runs in the experimental queue so it can be run
on-demand.
Change-Id: I7c11f244fc5529e0b8e5b7fcaa5874eb38cc9407
This is a mechanically generated patch to complete step 1 of moving
the zuul job settings out of project-config and into each project
repository.
Because there will be a separate patch on each branch, the branch
specifiers for branch-specific jobs have been removed.
Because this patch is generated by a script, there may be some
cosmetic changes to the layout of the YAML file(s) as the contents are
normalized.
See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html
Change-Id: Ie37d5c432cbfb776befdc3d902cd90f22a6fb1b6
Story: #2002586
Task: #24327