Merge "Support CentOS Stream 10"
This commit is contained in:
50
.zuul.yaml
50
.zuul.yaml
@@ -38,6 +38,16 @@
|
|||||||
nodes:
|
nodes:
|
||||||
- controller
|
- controller
|
||||||
|
|
||||||
|
- nodeset:
|
||||||
|
name: devstack-single-node-centos-10-stream
|
||||||
|
nodes:
|
||||||
|
- name: controller
|
||||||
|
label: centos-10-stream-8GB
|
||||||
|
groups:
|
||||||
|
- name: tempest
|
||||||
|
nodes:
|
||||||
|
- controller
|
||||||
|
|
||||||
- nodeset:
|
- nodeset:
|
||||||
name: devstack-single-node-centos-9-stream
|
name: devstack-single-node-centos-9-stream
|
||||||
nodes:
|
nodes:
|
||||||
@@ -86,6 +96,36 @@
|
|||||||
nodes:
|
nodes:
|
||||||
- controller
|
- controller
|
||||||
|
|
||||||
|
- nodeset:
|
||||||
|
name: openstack-two-node-centos-10-stream
|
||||||
|
nodes:
|
||||||
|
- name: controller
|
||||||
|
label: centos-10-stream-8GB
|
||||||
|
- name: compute1
|
||||||
|
label: centos-10-stream-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
|
||||||
|
|
||||||
- nodeset:
|
- nodeset:
|
||||||
name: openstack-two-node-centos-9-stream
|
name: openstack-two-node-centos-9-stream
|
||||||
nodes:
|
nodes:
|
||||||
@@ -729,6 +769,14 @@
|
|||||||
# we often have to rush things through devstack to stabilise the gate,
|
# we often have to rush things through devstack to stabilise the gate,
|
||||||
# and these platforms don't have the round-the-clock support to avoid
|
# and these platforms don't have the round-the-clock support to avoid
|
||||||
# becoming blockers in that situation.
|
# becoming blockers in that situation.
|
||||||
|
- job:
|
||||||
|
name: devstack-platform-centos-10-stream
|
||||||
|
parent: tempest-full-py3
|
||||||
|
description: CentOS 10 Stream platform test
|
||||||
|
nodeset: devstack-single-node-centos-10-stream
|
||||||
|
timeout: 9000
|
||||||
|
voting: false
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: devstack-platform-centos-9-stream
|
name: devstack-platform-centos-9-stream
|
||||||
parent: tempest-full-py3
|
parent: tempest-full-py3
|
||||||
@@ -911,6 +959,7 @@
|
|||||||
- devstack
|
- devstack
|
||||||
- devstack-ipv6
|
- devstack-ipv6
|
||||||
- devstack-enforce-scope
|
- devstack-enforce-scope
|
||||||
|
- devstack-platform-centos-10-stream
|
||||||
- devstack-platform-centos-9-stream
|
- devstack-platform-centos-9-stream
|
||||||
- devstack-platform-debian-bookworm
|
- devstack-platform-debian-bookworm
|
||||||
- devstack-platform-rocky-blue-onyx
|
- devstack-platform-rocky-blue-onyx
|
||||||
@@ -994,6 +1043,7 @@
|
|||||||
- devstack-no-tls-proxy
|
- devstack-no-tls-proxy
|
||||||
periodic-weekly:
|
periodic-weekly:
|
||||||
jobs:
|
jobs:
|
||||||
|
- devstack-platform-centos-10-stream
|
||||||
- devstack-platform-centos-9-stream
|
- devstack-platform-centos-9-stream
|
||||||
- devstack-platform-debian-bookworm
|
- devstack-platform-debian-bookworm
|
||||||
- devstack-platform-rocky-blue-onyx
|
- devstack-platform-rocky-blue-onyx
|
||||||
|
@@ -10,9 +10,10 @@ glibc-langpack-en # dist:rhel9
|
|||||||
graphviz # needed only for docs
|
graphviz # needed only for docs
|
||||||
httpd
|
httpd
|
||||||
httpd-devel
|
httpd-devel
|
||||||
iptables-nft # dist:rhel9
|
iptables-nft # dist:rhel9,rhel10
|
||||||
iptables-services
|
iptables-services
|
||||||
java-1.8.0-openjdk-headless
|
java-1.8.0-openjdk-headless # not:rhel10
|
||||||
|
java-21-openjdk-headless # dist:rhel10
|
||||||
libffi-devel
|
libffi-devel
|
||||||
libjpeg-turbo-devel # Pillow 3.0.0
|
libjpeg-turbo-devel # Pillow 3.0.0
|
||||||
libxml2-devel # lxml
|
libxml2-devel # lxml
|
||||||
@@ -23,7 +24,8 @@ net-tools
|
|||||||
openssh-server
|
openssh-server
|
||||||
openssl
|
openssl
|
||||||
openssl-devel # to rebuild pyOpenSSL if needed
|
openssl-devel # to rebuild pyOpenSSL if needed
|
||||||
pcre-devel # for python-pcre
|
pcre2-devel # dist:rhel10 for python-pcre2
|
||||||
|
pcre-devel # not:rhel10 for python-pcre
|
||||||
pkgconfig
|
pkgconfig
|
||||||
postgresql-devel # psycopg2
|
postgresql-devel # psycopg2
|
||||||
psmisc
|
psmisc
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
cryptsetup
|
cryptsetup
|
||||||
dosfstools
|
dosfstools
|
||||||
genisoimage # not:rhel9
|
genisoimage # not:rhel9,rhel10
|
||||||
iscsi-initiator-utils
|
iscsi-initiator-utils
|
||||||
libosinfo
|
libosinfo
|
||||||
lvm2
|
lvm2
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
conntrack-tools
|
conntrack-tools
|
||||||
curl
|
curl
|
||||||
ebtables
|
ebtables
|
||||||
genisoimage # not:rhel9 required for config_drive
|
genisoimage # not:rhel9,rhel10 required for config_drive
|
||||||
iptables
|
iptables
|
||||||
iputils
|
iputils
|
||||||
kernel-modules # not:openEuler-22.03
|
kernel-modules # not:openEuler-22.03
|
||||||
|
@@ -4,4 +4,4 @@ memcached
|
|||||||
rsync-daemon
|
rsync-daemon
|
||||||
sqlite
|
sqlite
|
||||||
xfsprogs
|
xfsprogs
|
||||||
xinetd # not:f36,rhel9
|
xinetd # not:f36,rhel9,rhel10
|
||||||
|
@@ -423,7 +423,7 @@ function _ensure_lsb_release {
|
|||||||
elif [[ -x $(command -v zypper 2>/dev/null) ]]; then
|
elif [[ -x $(command -v zypper 2>/dev/null) ]]; then
|
||||||
sudo zypper -n install lsb-release
|
sudo zypper -n install lsb-release
|
||||||
elif [[ -x $(command -v dnf 2>/dev/null) ]]; then
|
elif [[ -x $(command -v dnf 2>/dev/null) ]]; then
|
||||||
sudo dnf install -y redhat-lsb-core || sudo dnf install -y openeuler-lsb
|
sudo dnf install -y python3-distro || sudo dnf install -y openeuler-lsb
|
||||||
else
|
else
|
||||||
die $LINENO "Unable to find or auto-install lsb_release"
|
die $LINENO "Unable to find or auto-install lsb_release"
|
||||||
fi
|
fi
|
||||||
@@ -436,9 +436,9 @@ function _ensure_lsb_release {
|
|||||||
# - os_VENDOR
|
# - os_VENDOR
|
||||||
# - os_PACKAGE
|
# - os_PACKAGE
|
||||||
function GetOSVersion {
|
function GetOSVersion {
|
||||||
# CentOS Stream 9 and RHEL 9 do not provide lsb_release
|
# CentOS Stream 9 or later and RHEL 9 or later do not provide lsb_release
|
||||||
source /etc/os-release
|
source /etc/os-release
|
||||||
if [[ "${ID}${VERSION}" == "centos9" ]] || [[ "${ID}${VERSION}" =~ "rhel9" ]]; then
|
if [[ "${ID}${VERSION}" =~ "centos" ]] || [[ "${ID}${VERSION}" =~ "rhel" ]]; then
|
||||||
os_RELEASE=${VERSION_ID}
|
os_RELEASE=${VERSION_ID}
|
||||||
os_CODENAME="n/a"
|
os_CODENAME="n/a"
|
||||||
os_VENDOR=$(echo $NAME | tr -d '[:space:]')
|
os_VENDOR=$(echo $NAME | tr -d '[:space:]')
|
||||||
@@ -485,9 +485,8 @@ function GetDistro {
|
|||||||
"$os_VENDOR" =~ (OracleServer) || \
|
"$os_VENDOR" =~ (OracleServer) || \
|
||||||
"$os_VENDOR" =~ (Rocky) || \
|
"$os_VENDOR" =~ (Rocky) || \
|
||||||
"$os_VENDOR" =~ (Virtuozzo) ]]; then
|
"$os_VENDOR" =~ (Virtuozzo) ]]; then
|
||||||
# Drop the . release as we assume it's compatible
|
MAJOR_VERSION=$(echo $os_RELEASE | cut -d. -f1)
|
||||||
# XXX re-evaluate when we get RHEL10
|
DISTRO="rhel${MAJOR_VERSION}"
|
||||||
DISTRO="rhel${os_RELEASE::1}"
|
|
||||||
elif [[ "$os_VENDOR" =~ (openEuler) ]]; then
|
elif [[ "$os_VENDOR" =~ (openEuler) ]]; then
|
||||||
DISTRO="openEuler-$os_RELEASE"
|
DISTRO="openEuler-$os_RELEASE"
|
||||||
else
|
else
|
||||||
|
14
stack.sh
14
stack.sh
@@ -230,7 +230,7 @@ write_devstack_version
|
|||||||
|
|
||||||
# Warn users who aren't on an explicitly supported distro, but allow them to
|
# Warn users who aren't on an explicitly supported distro, but allow them to
|
||||||
# override check and attempt installation with ``FORCE=yes ./stack``
|
# override check and attempt installation with ``FORCE=yes ./stack``
|
||||||
SUPPORTED_DISTROS="bookworm|jammy|noble|rhel9"
|
SUPPORTED_DISTROS="bookworm|jammy|noble|rhel9|rhel10"
|
||||||
|
|
||||||
if [[ ! ${DISTRO} =~ $SUPPORTED_DISTROS ]]; then
|
if [[ ! ${DISTRO} =~ $SUPPORTED_DISTROS ]]; then
|
||||||
echo "WARNING: this script has not been tested on $DISTRO"
|
echo "WARNING: this script has not been tested on $DISTRO"
|
||||||
@@ -302,16 +302,17 @@ function _install_epel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function _install_rdo {
|
function _install_rdo {
|
||||||
if [[ $DISTRO == "rhel9" ]]; then
|
if [[ $DISTRO =~ "rhel" ]]; then
|
||||||
|
VERSION=${DISTRO:4:2}
|
||||||
rdo_release=${TARGET_BRANCH#*/}
|
rdo_release=${TARGET_BRANCH#*/}
|
||||||
if [[ "$TARGET_BRANCH" == "master" ]]; then
|
if [[ "$TARGET_BRANCH" == "master" ]]; then
|
||||||
# adding delorean-deps repo to provide current master rpms
|
# adding delorean-deps repo to provide current master rpms
|
||||||
sudo wget https://trunk.rdoproject.org/centos9-master/delorean-deps.repo -O /etc/yum.repos.d/delorean-deps.repo
|
sudo wget https://trunk.rdoproject.org/centos${VERSION}-master/delorean-deps.repo -O /etc/yum.repos.d/delorean-deps.repo
|
||||||
else
|
else
|
||||||
if sudo dnf provides centos-release-openstack-${rdo_release} >/dev/null 2>&1; then
|
if sudo dnf provides centos-release-openstack-${rdo_release} >/dev/null 2>&1; then
|
||||||
sudo dnf -y install centos-release-openstack-${rdo_release}
|
sudo dnf -y install centos-release-openstack-${rdo_release}
|
||||||
else
|
else
|
||||||
sudo wget https://trunk.rdoproject.org/centos9-${rdo_release}/delorean-deps.repo -O /etc/yum.repos.d/delorean-deps.repo
|
sudo wget https://trunk.rdoproject.org/centos${VERSION}-${rdo_release}/delorean-deps.repo -O /etc/yum.repos.d/delorean-deps.repo
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@@ -408,6 +409,11 @@ elif [[ $DISTRO == "rhel9" ]]; then
|
|||||||
if is_package_installed curl-minimal; then
|
if is_package_installed curl-minimal; then
|
||||||
sudo dnf swap -y curl-minimal curl
|
sudo dnf swap -y curl-minimal curl
|
||||||
fi
|
fi
|
||||||
|
elif [[ $DISTRO == "rhel10" ]]; then
|
||||||
|
# for CentOS Stream 10 repository
|
||||||
|
sudo dnf config-manager --set-enabled crb
|
||||||
|
# rabbitmq and other packages are provided by RDO repositories.
|
||||||
|
_install_rdo
|
||||||
elif [[ $DISTRO == "openEuler-22.03" ]]; then
|
elif [[ $DISTRO == "openEuler-22.03" ]]; then
|
||||||
# There are some problem in openEuler. We should fix it first. Some required
|
# There are some problem in openEuler. We should fix it first. Some required
|
||||||
# package/action runs before fixup script. So we can't fix there.
|
# package/action runs before fixup script. So we can't fix there.
|
||||||
|
@@ -127,7 +127,7 @@ if [[ -n $PYPI_ALTERNATIVE_URL ]]; then
|
|||||||
configure_pypi_alternative_url
|
configure_pypi_alternative_url
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if is_fedora && [[ ${DISTRO} == f* || ${DISTRO} == rhel9 ]]; then
|
if is_fedora && [[ ${DISTRO} == f* || ${DISTRO} == rhel* ]]; then
|
||||||
# get-pip.py will not install over the python3-pip package in
|
# get-pip.py will not install over the python3-pip package in
|
||||||
# Fedora 34 any more.
|
# Fedora 34 any more.
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1988935
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1988935
|
||||||
|
Reference in New Issue
Block a user