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
This commit is contained in:
Dr. Jens Harbott
2025-07-10 21:15:21 +02:00
parent b0146a2d97
commit f8ebb4939c
5 changed files with 65 additions and 7 deletions

View File

@@ -68,6 +68,16 @@
nodes:
- controller
- nodeset:
name: devstack-single-node-debian-trixie
nodes:
- name: controller
label: debian-trixie-8GB
groups:
- name: tempest
nodes:
- controller
- nodeset:
name: devstack-single-node-debian-bookworm
nodes:
@@ -383,6 +393,36 @@
nodes:
- compute1
- nodeset:
name: devstack-two-node-debian-trixie
nodes:
- name: controller
label: debian-trixie-8GB
- name: compute1
label: debian-trixie-8GB
groups:
# Node where tests are executed and test results collected
- name: tempest
nodes:
- controller
# Nodes running the compute service
- name: compute
nodes:
- controller
- compute1
# Nodes that are not the controller
- name: subnode
nodes:
- compute1
# Switch node for multinode networking setup
- name: switch
nodes:
- controller
# Peer nodes for multinode networking setup
- name: peers
nodes:
- compute1
- job:
name: devstack-base
parent: openstack-multinode-fips
@@ -806,6 +846,15 @@
timeout: 9000
voting: false
- job:
name: devstack-platform-debian-trixie
parent: tempest-full-py3
description: Debian Trixie platform test
nodeset: devstack-single-node-debian-trixie
timeout: 9000
vars:
configure_swap_size: 4096
- job:
name: devstack-platform-debian-bookworm
parent: tempest-full-py3
@@ -990,6 +1039,7 @@
- devstack-platform-centos-10-stream
- devstack-platform-centos-9-stream
- devstack-platform-debian-bookworm
- devstack-platform-debian-trixie
- devstack-platform-rocky-blue-onyx
- devstack-platform-rocky-red-quartz
- devstack-platform-ubuntu-noble-ovn-source
@@ -1021,6 +1071,7 @@
- devstack
- devstack-ipv6
- devstack-platform-debian-bookworm
- devstack-platform-debian-trixie
- devstack-platform-ubuntu-noble
# NOTE(danms): Disabled due to instability, see comment in the job
# definition above.

View File

@@ -11,10 +11,8 @@ gettext # used for compiling message catalogs
git
graphviz # needed for docs
iputils-ping
libapache2-mod-proxy-uwsgi
libffi-dev # for pyOpenSSL
libjpeg-dev # Pillow 3.0.0
libpcre3-dev # for python-pcre
libpq-dev # psycopg2
libssl-dev # for pyOpenSSL
libsystemd-dev # for systemd-python

View File

@@ -82,7 +82,7 @@ function install_apache_uwsgi {
fi
if is_ubuntu; then
local pkg_list="uwsgi uwsgi-plugin-python3 libapache2-mod-proxy-uwsgi"
local pkg_list="uwsgi uwsgi-plugin-python3"
install_package ${pkg_list}
# NOTE(ianw) 2022-02-03 : Fedora 35 needs to skip this and fall
# into the install-from-source because the upstream packages

View File

@@ -20,7 +20,7 @@ if [[ -z "$MYSQL_SERVICE_NAME" ]]; then
MYSQL_SERVICE_NAME=mysql
if is_fedora && ! is_oraclelinux; then
MYSQL_SERVICE_NAME=mariadb
elif [[ "$DISTRO" =~ bookworm|bullseye ]]; then
elif [[ "$DISTRO" =~ trixie|bookworm|bullseye ]]; then
MYSQL_SERVICE_NAME=mariadb
fi
fi
@@ -107,7 +107,7 @@ function configure_database_mysql {
# for Ubuntu 22.04+ because the authorization model change in
# version 10.4 of mariadb. See
# https://mariadb.org/authentication-in-mariadb-10-4/
if ! (is_ubuntu && [[ ! "$DISTRO" =~ bookworm|bullseye ]] && [ "$MYSQL_SERVICE_NAME" == "mariadb" ]); then
if ! (is_ubuntu && [[ ! "$DISTRO" =~ trixie|bookworm|bullseye ]] && [ "$MYSQL_SERVICE_NAME" == "mariadb" ]); then
sudo mysqladmin -u root password $DATABASE_PASSWORD || true
fi
@@ -119,6 +119,16 @@ function configure_database_mysql {
local cmd_args="-uroot -p$DATABASE_PASSWORD -h$SERVICE_LOCAL_HOST "
fi
# Workaround for mariadb > 11.6.2,
# see https://bugs.launchpad.net/nova/+bug/2116186/comments/3
min_db_ver="11.6.2"
db_version=$(sudo mysql ${cmd_args} -e "select version();" -sN | cut -d '-' -f 1)
max_db_ver=$(printf '%s\n' ${min_db_ver} ${db_version} | sort -V | tail -n 1)
if [[ "${min_db_ver}" != "${max_db_ver}" ]]; then
iniset -sudo $my_conf mysqld innodb_snapshot_isolation OFF
restart_service $MYSQL_SERVICE_NAME
fi
# In mariadb e.g. on Ubuntu socket plugin is used for authentication
# as root so it works only as sudo. To restore old "mysql like" behaviour,
# we need to change auth plugin for root user

View File

@@ -1,6 +1,5 @@
#!/usr/bin/env bash
# ``stack.sh`` is an opinionated OpenStack developer installation. It
# installs and configures various combinations of **Cinder**, **Glance**,
# **Horizon**, **Keystone**, **Nova**, **Neutron**, and **Swift**
@@ -230,7 +229,7 @@ write_devstack_version
# Warn users who aren't on an explicitly supported distro, but allow them to
# override check and attempt installation with ``FORCE=yes ./stack``
SUPPORTED_DISTROS="bookworm|jammy|noble|rhel9|rhel10"
SUPPORTED_DISTROS="trixie|bookworm|jammy|noble|rhel9|rhel10"
if [[ ! ${DISTRO} =~ $SUPPORTED_DISTROS ]]; then
echo "WARNING: this script has not been tested on $DISTRO"