1701 Commits

Author SHA1 Message Date
Dr. Jens Harbott
ea0fdd2c80 Drop platform job for Ubuntu Jammy
The job stopped working recently, the reason is unclear, but since Jammy
is no longer included as required platform, let's just stop testing it.

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: I796eddac96313584f4aa5225a9b9803bb2ad19b5
2026-02-16 07:53:08 +01:00
Zuul
feb2482328 Merge "Drop logic for CentOS (Stream) 8" 2025-12-18 10:40:30 +00:00
Dr. Jens Harbott
f8ebb4939c Add support for trixie and platform job
Dropping libapache2-mod-proxy-uwsgi package for debuntu, which is no
longer needed for Jammy, Bookworm and beyond.

libpcre3-dev is removed form the set of packages pre installed
for debian systems.

This change adds both single and two node nodesets for trixie.

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Signed-off-by: Sean Mooney <work@seanmooney.info>
Change-Id: Ib056d2ad64b31657ea8ef9359fed78e589b01b88
2025-11-10 17:39:27 +01:00
Zuul
18a4806513 Merge "Add support for shared os_brick file lock path" 2025-10-16 20:35:12 +00:00
Takashi Kajinami
8060e12a7b Drop logic for CentOS (Stream) 8
Change-Id: I528652ced464fadd565e16e89a7e0ef826d42611
Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com>
2025-10-12 13:42:30 +09:00
Zuul
8a42b6f69c Merge "Replace use of fgrep" 2025-08-13 12:50:08 +00:00
Joel Capitao
3b3aab5264 Support CentOS Stream 10
This patch includes changes required to run devstack
on CentOS Stream 10 which has been already published
in official repos by CentOS team [1]:

- Add RDO deps repository for CS10.
- remove xinetd package from installation for swift. Note that
  rsync-daemon is installed which should work fine.
- Use python3-distro to identify the distro
- Add devstack-single-node-centos-10-stream nodeset
- Add devstack-platform-centos-10-stream job to the check
  pipeline.

Closes https://issues.redhat.com/browse/RDO-379

[1] https://mirror.stream.centos.org/10-stream/

Change-Id: I33a6c5530482c28a24f2043cd4195e7bcd46427d
Signed-off-by: Cyril Roelandt <cyril@redhat.com>
Signed-off-by: Sean Mooney <work@seanmooney.info>
2025-08-08 15:55:06 +00:00
Stephen Finucane
4f065ca80e Replace use of fgrep
It is deprecated.

Change-Id: Iad071865361d51c148fc157d715bdf517ec5b94b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-08-06 11:18:27 +01:00
Gorka Eguileor
c4340a64ee Add support for shared os_brick file lock path
There can be problems with some os-brick connectors if nova and cinder
run on the same host with different lock path locations, which we
currently do, or if Cinder and Glance with cinder store run on the same
host, and a recent os-brick change
(Ic52338278eb5bb3d90ce582fe6b23f37eb5568c4) allows for an os-brick
specific lock_path to facilitate these kind of deployment.

This patch adds the ``lock_path`` configuration option in the
``[os_brick]`` section of the nova, cinder, and glance config files.

If the os-brick, cinder, nova, or glance-store changes are not present
then the new config option is be ignored in the respective service, and
it will be used otherwise, so there's no need to make this patch
dependent on any other since we won't be worse off than we are now.

Change-Id: Ibe7da160460151734224863cddec5e0d549b4938
2025-04-21 13:07:06 +00:00
Zuul
01755f8bdf Merge "Allow to enable atop" 2025-02-20 11:18:08 +00:00
Vasyl Saienko
1aac81ee88 Allow to enable atop
It may be required to troubleshoot performance related bugs during
tests exection, to have ability to inspect environment processes
and theirs status during test run this patch installs atop
by default if not explicitly disabled.

Related-Bug: #2095224

Change-Id: Iedbd61f3ce3cd2255ea5f2a7a93ba2f39ad28ff2
2025-02-19 07:24:02 +00:00
Slawek Kaplonski
a08a53de42 Remove leftover from the usage of the removed lib/neutron module
In the patch [1] lib/neutron module was removed completely but it left
call to the non existing currently function 'start_neutron_api' when the
neutron-api service is enabled.
Devstack should start neutron in the same way in case when q-svc or
neutron-api service is enabled and this patch is removing that leftover
call to the 'start_neutron_api' function and make it behave the same way
for both service names.

Additionally this patch adds service "neutron-api" to be checked when
initial networks are going to be created. It is like that as just one of
the services "q-svc" or "neutron-api" is enough to create those initial
networks.

[1] https://review.opendev.org/c/openstack/devstack/+/865014

Related-bug: #2096912
Change-Id: I1287af6a31f60b4e522f0ce3ea525e3336ffd8ba
2025-02-01 14:38:58 +01:00
Joel Capitao
f41479f370 Pull RDO Trunk repos when CentOS Stream official RPM not available
The RDO project releases centos-release-openstack-* RPM a couple of
weeks after the OpenStack upstream project cut master branch.
In order to fill the gap in the meantime, we have to pull the repos
from RDO Trunk.

Change-Id: If95a687f2d7579779129eeb689cfa46b92450dc5
2024-11-13 10:22:07 +01:00
karolinku
8784a3027f Replacing usage of rdo-release rpm
with centos-release-openstack rpms follwing [1].

[1] https://issues.redhat.com/browse/RDO-311

Change-Id: I50951e077e73297d10b075677a440992d1e2fa91
2024-07-31 12:36:43 +02:00
Sean Mooney
db305d2a4b enable openstack-cli-server and other perfromace tunings
This commit enabeles a number of performance optimizations
to tune the host vms memory and io by leveraging zswap
and other kernel parmaters to minimize the effect of io
latency and memory pressure.

The openstack-cli-server has been enabled in the nova ci
for several months now and has proven to speed up devstack
signifcantly, while this change does not enable it by
default in devstack it does enable it by default in the ci
jobs.

simiarly the zswap and other tuning remain disabled by default
in devstack but are enabled by default in the devstack job.

This change limits the qemu tb_cache_size to 128MB form 1G,
this requires libvirt 8.0.0 or newer. as bullseye and
openeuler-22.03 do not meet that requirement they have been
removed. libvirt 8.0.0 will be the new min version supported
in nova in the 2025.1 release so the decions was made
to drop supprot for older release now instead of doing it
at the start of the 2025.1 cycle. debain coverage is still
provided by the newer bookworm relase. openeuler-22.03 has
been superseded by the openeuler-24.03 lts release.
openeuler-24.03 is not currnetly aviable in ci but supprot
could be readded if desired however that is out os scope of
this change.

Change-Id: Ib45ca08c7e3e833b14f7e6ec496ad2d2f7073f99
2024-06-25 11:01:54 +01:00
Zuul
d0284d8c7b Merge "add ubuntu noble (24.04) support" 2024-06-24 00:19:12 +00:00
Sean Mooney
41d253a6f9 add ubuntu noble (24.04) support
This change installs setuptools in the requirements
and global venv to ensure that distutils is present

This change also adds new single and two node
nodeset for noble and a devstack platform job as nonvoting.

Change-Id: Ie1f8ebc5db75d6913239c529ee923395a764e19c
2024-06-21 16:35:32 +01:00
4d69238383 Fix rdo_release for unmaintained branches
Only branches with stable/ as prefix were considered
but now we have branches even with different
prefix like unmaintained/, fix it to consider
such cases by using a generic filter instead of
assuming branch name starts with stable.

Change-Id: I967de13094ff6df46737a22d4e1758f9900dfbc9
2024-06-21 18:30:30 +05:30
Ben Nemec
9a97326c3f Use OSCaaS to speed up devstack runs
OpenStackClient has a significant amount of startup overhead, which
adds a non-trivial amount of time to each devstack run because it makes
a lot of OSC calls. This change uses the OSC service from [0] to run
a persistent process that handles openstack calls. This removes most
of the startup overhead and in my local testing removes about three
minutes per devstack run.

Currently this is implemented as an opt-in feature. There are likely a
lot of edge cases in projects that use a devstack plugin so turning it
on universally is going to require boiling the ocean. I think getting
this in and enabled for some of the major projects should give us a lot
of the benefit without the enormous effort of making it 100% compatible
across all of OpenStack.

Depends-On: https://review.opendev.org/c/openstack/nova/+/918689
Depends-On: https://review.opendev.org/c/openstack/ironic/+/918690
Change-Id: I28e6159944746abe2d320369249b87f1c4b9e24e
0: http://lists.openstack.org/pipermail/openstack-dev/2016-April/092546.html
2024-05-14 07:30:55 -07:00
Zuul
ed41f85d72 Merge "Add cinder-manage to /usr/local/bin/" 2024-02-13 17:14:03 +00:00
Sean Mooney
224fe1b09a add support for zswap and ksmtuned
This change add a new lib/host-mem file and moves the existing
ksm support to a new configure_ksm function.
Additional support for ksmtuned is added with a new flag
"ENABLE_KSMTUNED" which defaults to true.

This change also adds support for zswap. zswap is disabled
by default. When enabled on ubuntu lz4 will
be used as the default compressor and z3fold as the zpool.
On non debian distros the compressor and zpool are not set.
The default values should result in very low overhead although
the zstd compressor may provide better overall performance in ci
or with slow io due to the higher compression ratio.

Additionally memory and network sysctl tunings are optionally applied
to defer writes, prefer swapping and optimise tcp connection
startup and keepalive. The sysctl tunings are disabled by default
The base devstack job has been modifed to enable zram and sysctl
tuning.

Both ksm and zswap are wrapped by a tune_host function
which is now called very early in devstack to ensure
they are configured before any memory/network intensive
operations are executed.

The ci jobs do not enable this functionality by default.
To use this functionaltiy define

        ENABLE_SYSCTL_MEM_TUNING: true
        ENABLE_SYSCTL_NET_TUNING: true
        ENABLE_ZSWAP: true

in the devstack_localrc section of the job vars.

Change-Id: Ia5202d5a9903492a4c18b50ea8d12bd91cc9f135
2024-01-16 19:51:00 +00:00
Eric Harney
2e14add0fd Add cinder-manage to /usr/local/bin/
This is useful in a dev environment.

Change-Id: I247eb4aea23a906d0e667ec6c5ac79f932bdca24
2023-11-29 09:22:10 -05:00
tzing
0f402b8327 Fix openEuler support
openEuler 22.03 LTS support was removed from devstack in last
few months due to its libvirt version is too old and the CI job
always fail.

This Patch add a yum repository for libvirt7.2.0, and add the
related CI job to make sure its works well.

Change-Id: Ic507f165cfa117451283360854c4776a968bbb10
2023-11-07 06:14:58 +00:00
Zuul
af8750c82a Merge "Remove wget + rpm workaround to manage repos install in CentOS" 2023-09-12 09:38:36 +00:00
Zuul
d51a6b9a11 Merge "Fix $LOGDIR owner to be stack.stack" 2023-09-05 16:50:32 +00:00
Dr. Jens Harbott
427a4e1a9b Drop focal platform job and support
This was dropped in tempest, too[0], and we want to focus on getting and
keeping the jammy job stable.

Still retaining the nodeset definitions until we are sure they are not
needed in other projects.

[0] https://review.opendev.org/c/openstack/tempest/+/884952

Change-Id: Iafb5a939a650b763935d8b7ce7069ac4c6d9a95b
2023-09-03 12:07:41 -07:00
Ghanshyam
08b434e5b0 Revert "GLOBAL_VENV: add nova to linked binaries"
This reverts commit 26b5eddeaa.

Reason for revert: nova changed to use osc

- https://review.opendev.org/c/openstack/nova/+/891247/2

Resolving conflict due to
- https://review.opendev.org/c/openstack/devstack/+/891248

Change-Id: I69e179a90a241946b3f426a41c38ae72a66ba6dc
2023-08-14 12:42:49 -07:00
Dr. Jens Harbott
4c45bec6eb GLOBAL_VENV: add more binaries
glance and rally binaries are also needed.

Also make sure the cinder-rtstool is only called when cinder is actually
enabled.

Change-Id: I18113eabf2fa83e36bace276883775303f6a1e9a
2023-08-12 11:35:08 +02:00
Zuul
af9e67c050 Merge "GLOBAL_VENV: add nova to linked binaries" 2023-08-12 05:32:31 +00:00
Dr. Jens Harbott
26b5eddeaa GLOBAL_VENV: add nova to linked binaries
This is being used in some nova jobs, so we need to add it. Also order
the list of linked binaries to allow easier maintenance.

Change-Id: Ief012f7842d6e14380c9575740d1856bc1f2355e
2023-08-11 21:51:05 +02:00
Brian Haley
4363b0bd84 Fix $LOGDIR owner to be stack.stack
I have seen this failure in the gate a few times:

[ERROR] /opt/stack/devstack/functions-common:2334 Neutron did not start
/opt/stack/devstack/functions-common: line 310:
  /opt/stack/logs/error.log: Permission denied

So whatever was trying to be written to error.log never
happened. Change to be like other directories in this
file and make the $LOGDIR owner stack.stack.

Change-Id: I673011aba10c8d03234100503ccc5876e75baff2
2023-08-08 08:38:00 -04:00
Alfredo Moralejo
0da88c4af0 Remove wget + rpm workaround to manage repos install in CentOS
RDO has moved rdo-release packages to a new infra which supports EMS so
we do not need to wget it and install it using local rpm install.

This partially reverts [1].

[1] https://review.opendev.org/c/openstack/devstack/+/884277/

Change-Id: I189d0c3da0e7b017e2568022c14e6c8fb28251f1
2023-08-07 14:16:12 +02:00
Dr. Jens Harbott
0b79f6f769 Add debian-bookworm job
Change-Id: Id5e54775e2be38a75db0bd1f55d1d3b5ae7ef71f
2023-08-02 05:11:03 +00:00
Clark Boylan
a40f9cb91f Add option to install everything in global venvs
Since we are python3 only for openstack we create a single python3
virtualenv to install all the packages into. This gives us the benefits
of installing into a virtualenv while still ensuring coinstallability.
This is a major change and will likely break many things.

There are several reasons for this. The change that started this effort
was pip stopped uninstalling packages which used distutils to generate
their package installation. Many distro packages do this which meant
that pip installed packages and distro packages could not coexist in the
global install space. More recently git has made pip installing repos as
root more difficult due to file ownership concerns.

Currently the switch to the global venv is optional, but if we go down
this path we should very quickly remove the old global installation
method as it has only caused us problems.

Major hurdles we have to get over are convincing rootwrap to trust
binaries in the virtualenvs (so you'll notice we update rootwrap
configs).

Some distros still have issues, keep them using the old setup for now.

Depends-On: https://review.opendev.org/c/openstack/grenade/+/880266
Co-Authored-By: Dr. Jens Harbott <frickler@offenerstapel.de>
Change-Id: If9bc7ba45522189d03f19b86cb681bb150ee2f25
2023-08-02 07:07:25 +02:00
Zuul
9dba09975d Merge "Drop Fedora support" 2023-08-01 17:49:48 +00:00
Zuul
9845128969 Merge "Support RHEL 9" 2023-07-21 12:35:17 +00:00
Dr. Jens Harbott
fbc1865dc4 Drop Fedora support
Fedora 36 is EOL, also opendev is dropping support for Fedora images
completely since interest in running jobs on that platform is no longer
existing. CentOS 9 Stream has evolved as replacement platform for new
features.

Only drop the Zuul configuration and the tag in stack.sh for now plus
update some docs. Cleanup of the deployment code will be done in a
second step.

Change-Id: Ica483fde27346e3939b5fc0d7e0a6dfeae0e8d1e
2023-06-07 15:19:37 +02:00
Alfredo Moralejo
b2ad00cb66 Use RDO official CloudSIG mirrors for C9S deployments
Instead of using RDO Trunk repo server, CentOS official mirrors provide
a most reliable infrastructure and supports EMS which is required when
enabling FIPS in C9S.

In order to install the rdo-release rpm from repo.fedoraproject.org,
which does not support EMS, I'm using a workaround to wget, which works
with non-EMS servers because it uses gnutls instead of openssl, and
install it locally with rpm.

This is also consistent to CentOS 8 implementatioin.

Closes-Bug: #2020661
Closes-Bug: #2020434
Change-Id: Icd99f467d47aaafaaf3ee8f2a3c4da08842cb672
2023-05-26 14:22:20 +02:00
Zuul
b33ec4bf1b Merge "Remove support for opensuse" 2023-04-18 17:15:32 +00:00
Yamato Tanaka
03c3fd763e Support RHEL 9
This patch includes changes required to run devstack on RHEL 9.

- en_US.utf8 is provided by glibc-langpack-en
- iptables command is provided by iptables-nft
- Use /etc/os-release to identify the distro in RHEL 9 as it doesn't
  provide lsb_release command.
- CRB repository name is different from CentOS 9

Change-Id: I8f6d9263b24f9c2cf82e09258e2d14d7766ad337
2023-03-03 14:47:10 +09:00
Martin Kopec
ec07b343d2 Remove support for opensuse
We haven't been testing the distro for a while in CI, e.g. in
Tempest, the jobs on opensuse15 haven't been executed for a year
now.
Therefore the patch removes opensuse support from devstack.

Closes-Bug: #2002900
Change-Id: I0f5e4c644e2d14d1b8bb5bc0096d1469febe5fcc
2023-02-16 12:01:39 +01:00
Gregory Thiemonge
fcc525f4fc Fix rockylinux and make it voting
Some rockylinux deployments have the curl-minimal package installed by
default (the latest GenericCloud image still has the curl package), it
triggers an error when devstack wants to install the curl package.
Fix this issue by swaping curl-minimal with curl before installing base
packages.

Change-Id: I969e8dc22e7d11c9917a843d9245f33a04fe197d
2023-02-16 10:33:38 +01:00
wangxiyuan
6440c6d7e6 Add openEuler 22.03 LTS support
openEuler 20.03 LTS SP2 support was removed from devstack in last
few months due to its python version is too old and the CI job
always fail. And openEuler 20.03 LTS SP2 was out of maintainer in May
2022 by openEuler community.

The newest LTS version was released in March 2022 called 22.03 LTS.
This release will be maintained for at least 2 years. And the python
version is 3.9 which works well for devstack.

This Patch add the openEuler distro support back. And add the related
CI job to make sure its works well.

Change-Id: I99c99d08b4a44d3dc644bd2e56b5ae7f7ee44210
2022-12-07 10:03:27 +08:00
Ian Wienand
9ece457b7b Update to Fedora 36
Update the Fedora job to the latest release nodes

Depends-On: https://review.opendev.org/c/openstack/devstack/+/860634
Change-Id: If2d7f99e3665a2e3df4cf763efc64dd381f02350
2022-10-07 06:14:57 +00:00
Dr. Jens Harbott
ca5f919561 Clean up n-net remnants
In I90316208d1af42c1659d3bee386f95e38aaf2c56 support for nova-network
was removed, but some bits remained, fix this up.

Change-Id: Iba7e1785fd0bdf0a6e94e5e03438fc7634621e49
2022-08-21 10:52:41 +02:00
Dr. Jens Harbott
560ee16a85 Drop openEuler support
The job is broken since it is running with python3.7 and most services
now require at least python3.8.

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: Ie21f71acffabd78c79e2b141951ccf30a5c06445
2022-05-19 14:06:11 +02:00
Zuul
08254ca312 Merge "Add Ubuntu 22.04 LTS (jammy) platform job" 2022-05-19 08:16:18 +00:00
Dan Smith
fe52d7f0a8 Change DB counting mechanism
The mysql performance_schema method for counting per-database queries
is very heavyweight in that it requires full logging (in a table) of
every query. We do hundreds of thousands in the course of a tempest
run, which ends up creating its own performance problem.

This changes the approach we take, which is to bundle a very tiny
sqlalchemy plugin module which counts just what we care about in
a special database.

It is more complex than just enabling the features in mysql, but it
is a massively smaller runtime overhead. It also provides us the
opportunity to easily zero the counters just before a tempest run.

Change-Id: I361bc30bb970cdaf18b966951f217862d302f0b9
2022-05-12 07:55:02 -07:00
Dr. Jens Harbott
5c765cb8a1 Add Ubuntu 22.04 LTS (jammy) platform job
The new Ubuntu LTS release has been made last week, start running
devstack on it as a platform job.

Horizon has issues with py310, so gets disabled for now.

Run variants with OVS and OVN(default).

Co-Authored-By: yatinkarel <ykarel@redhat.com>
Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: I47696273d6b009f754335b44ef3356b4f5115cd8
2022-05-12 13:54:02 +02:00
Sean Mooney
eca9783a0a ensure /usr/local/bin in in path
osc is typicaly installed in /usr/local/bin
to avoid command not found errors when invoking osc
in devstack ensure that /usr/local/bin is included
in the PATH.

Change-Id: I605fbc4b131149bf5d1b6307b360fe365c680b1a
2022-04-07 13:31:50 +01:00