diff --git a/deploy-guide/source/deploymenthost.rst b/deploy-guide/source/deploymenthost.rst
index bca48049e9..0250d601b0 100644
--- a/deploy-guide/source/deploymenthost.rst
+++ b/deploy-guide/source/deploymenthost.rst
@@ -29,6 +29,7 @@ hosts:
* `Ubuntu server 20.04 (Focal Fossa) LTS 64-bit `_
* `Debian 11 (Bullseye) LTS 64-bit `_
* `Centos 8 Stream 64-bit `_
+* `Rocky Linux 8 64-bit `_
Configure at least one network interface to access the Internet or suitable
local repositories.
diff --git a/deploy-guide/source/overview-requirements.rst b/deploy-guide/source/overview-requirements.rst
index 230ba035ac..1a88e7d5be 100644
--- a/deploy-guide/source/overview-requirements.rst
+++ b/deploy-guide/source/overview-requirements.rst
@@ -20,6 +20,8 @@ following minimum requirements:
* Centos 8 Stream
+ * Rocky Linux 8
+
* Linux kernel version ``3.10.0`` or later.
* Secure Shell (SSH) client and server that support public key
diff --git a/deploy-guide/source/targethosts-prepare.rst b/deploy-guide/source/targethosts-prepare.rst
index 78ef3240ee..db134c162c 100644
--- a/deploy-guide/source/targethosts-prepare.rst
+++ b/deploy-guide/source/targethosts-prepare.rst
@@ -14,6 +14,7 @@ target host:
* Ubuntu server 20.04 (Focal Fossa) LTS 64-bit
* Debian 10 64-bit
* Centos 8 Stream 64-bit
+ * Derivitives: Rocky Linux
Configure at least one network interface to access the Internet or
suitable local repositories.
diff --git a/doc/source/user/aio/quickstart.rst b/doc/source/user/aio/quickstart.rst
index d8a4449e4e..fac2b2f2ac 100644
--- a/doc/source/user/aio/quickstart.rst
+++ b/doc/source/user/aio/quickstart.rst
@@ -121,7 +121,8 @@ version.
.. note::
The |current_release_formal_name| release is only compatible with
- Debian 11 (bullseye), Ubuntu 20.04 (Focal Fossa) and CentOS 8 Stream.
+ Debian 11 (bullseye), Ubuntu 20.04 (Focal Fossa), CentOS 8 Stream,
+ and derivitives of CentOS Stream/RHEL such as Rocky Linux.
The next step is to bootstrap Ansible and the Ansible roles for the
development environment.
diff --git a/playbooks/openstack-hosts-setup.yml b/playbooks/openstack-hosts-setup.yml
index cc317270db..b9db05428e 100644
--- a/playbooks/openstack-hosts-setup.yml
+++ b/playbooks/openstack-hosts-setup.yml
@@ -58,7 +58,7 @@
(ansible_facts['os_family'] == 'RedHat' and ansible_facts['distribution_major_version'] == '8')
msg: >
The only supported platforms for this release are Debian 11 (Bullseye),
- Ubuntu 20.04 LTS (Focal) and CentOS 8 Stream.
+ Ubuntu 20.04 LTS (Focal), CentOS 8 derivatives such as Rocky Linux, and CentOS 8 Stream.
roles:
- role: "openstack_hosts"
vars_files:
diff --git a/run_tests.sh b/run_tests.sh
index 48ce6583b7..1fe763b52b 100755
--- a/run_tests.sh
+++ b/run_tests.sh
@@ -54,7 +54,7 @@ source /etc/os-release || source /usr/lib/os-release
# Figure out the appropriate package install command
case ${ID,,} in
*suse*) pkg_mgr_cmd="zypper -n in" ;;
- centos|rhel|fedora) pkg_mgr_cmd="dnf install -y" ;;
+ centos|rhel|rocky|fedora) pkg_mgr_cmd="dnf install -y" ;;
ubuntu|debian) pkg_mgr_cmd="apt-get install -y" ;;
# Gentoo needs to have version set since it's rolling
gentoo) pkg_mgr_cmd="emerge --jobs=4"; VERSION="rolling" ;;
diff --git a/scripts/bootstrap-ansible.sh b/scripts/bootstrap-ansible.sh
index 3b4d73fc5f..4e0b9da60c 100755
--- a/scripts/bootstrap-ansible.sh
+++ b/scripts/bootstrap-ansible.sh
@@ -70,13 +70,16 @@ determine_distro
# Install the base packages
case ${DISTRO_ID} in
- centos|rhel)
+ rocky|centos|rhel)
dnf -y install \
git curl autoconf gcc gcc-c++ nc \
python38 python38-devel libselinux-python3 \
systemd-devel pkgconf \
openssl-devel libffi-devel \
rsync wget
+ if [[ ${DISTRO_ID} == "rocky" ]]; then
+ OSA_ANSIBLE_PYTHON_INTERPRETER="/usr/bin/python3"
+ fi
PYTHON_EXEC_PATH="$(which python3.8)"
;;
ubuntu|debian)
diff --git a/scripts/scripts-library.sh b/scripts/scripts-library.sh
index c40560ab65..46c0169c5c 100755
--- a/scripts/scripts-library.sh
+++ b/scripts/scripts-library.sh
@@ -204,7 +204,7 @@ function setup_ara {
function run_dstat {
if [ "$GATE_EXIT_RUN_DSTAT" == true ]; then
case ${DISTRO_ID} in
- centos|rhel)
+ rocky|centos|rhel)
dnf -y install dstat
;;
ubuntu)
@@ -250,7 +250,7 @@ function log_instance_info {
apt-get update
DEBIAN_FRONTEND=noninteractive apt-get -y install iproute2 net-tools
;;
- centos|rhel)
+ rocky|centos|rhel)
dnf -y install iproute
;;
esac
@@ -325,7 +325,7 @@ function get_instance_info {
determine_distro
case ${DISTRO_ID} in
- centos|rhel)
+ rocky|rhel)
rpm -qa | sort > \
"/openstack/log/instance-info/host_packages_info_${TS}.log" || true
;;
diff --git a/tests/roles/bootstrap-host/tasks/check-requirements.yml b/tests/roles/bootstrap-host/tasks/check-requirements.yml
index 47567c7ca3..fff52c787a 100644
--- a/tests/roles/bootstrap-host/tasks/check-requirements.yml
+++ b/tests/roles/bootstrap-host/tasks/check-requirements.yml
@@ -20,8 +20,8 @@
(ansible_facts['distribution'] == 'Ubuntu' and ansible_facts['distribution_release'] == 'focal') or
(ansible_facts['os_family'] == 'RedHat' and ansible_facts['distribution_major_version'] == '8')
msg: >-
- The only supported platforms for this release are Debian Bullseye,
- Ubuntu 20.04 (Focal), and CentOS 8 Stream
+ The only supported platforms for this release are Debian 11 (Bullseye),
+ Ubuntu 20.04 LTS (Focal), CentOS 8 derivatives such as Rocky Linux, and CentOS 8 Stream.
when: (check_operating_system | default(True))| bool
tags:
- check-operating-system
diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml
index 48ddfa68cd..57ce4aed4f 100644
--- a/zuul.d/jobs.yaml
+++ b/zuul.d/jobs.yaml
@@ -471,6 +471,149 @@
nodeset: centos-8-stream
timeout: 10800
+# rocky linux 8
+#
+- job:
+ name: openstack-ansible-deploy-aio_lxc-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-infra_lxc-rockylinux-8
+ parent: openstack-ansible-deploy-aio-infra
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-hosts_distro_lxc-rockylinux-8
+ parent: openstack-ansible-deploy-aio-hosts
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-hosts_lxc-rockylinux-8
+ parent: openstack-ansible-deploy-aio-hosts
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-hosts_metal-rockylinux-8
+ parent: openstack-ansible-deploy-aio-hosts
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-aio_distro_lxc-rockylinux-8
+ parent: openstack-ansible-deploy-aio-distro
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-aio_ceph-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-aio_nfs-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-aio_distro_ceph-rockylinux-8
+ parent: openstack-ansible-deploy-aio-distro
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-upgrade-aio_lxc-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+ timeout: 10800
+
+- job:
+ name: openstack-ansible-upgrade-infra_lxc-rockylinux-8
+ parent: openstack-ansible-deploy-aio-infra
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+ timeout: 10800
+
+- job:
+ name: openstack-ansible-deploy-aio_metal-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-aio_telemetry_metal-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-deploy-aio_distro_metal-rockylinux-8
+ parent: openstack-ansible-deploy-aio-distro
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+ voting: false
+
+- job:
+ name: openstack-ansible-deploy-aio_nspawn-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+
+- job:
+ name: openstack-ansible-upgrade-aio_ceph-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+ timeout: 10800
+
+- job:
+ name: openstack-ansible-upgrade-aio_metal-rockylinux-8
+ parent: openstack-ansible-deploy-aio
+ nodeset:
+ nodes:
+ - label: rockylinux-8
+ name: rockylinux-8
+ timeout: 10800
+
# debian bullseye
- job:
diff --git a/zuul.d/project-templates.yaml b/zuul.d/project-templates.yaml
index 65b29ef14a..ec5100cd89 100644
--- a/zuul.d/project-templates.yaml
+++ b/zuul.d/project-templates.yaml
@@ -39,11 +39,13 @@
jobs:
- openstack-ansible-deploy-aio_lxc-centos-8-stream
- openstack-ansible-deploy-aio_lxc-debian-bullseye
+ - openstack-ansible-deploy-aio_lxc-rockylinux-8
- openstack-ansible-deploy-aio_lxc-ubuntu-focal
gate:
jobs:
- openstack-ansible-deploy-aio_lxc-centos-8-stream
- openstack-ansible-deploy-aio_lxc-debian-bullseye
+ - openstack-ansible-deploy-aio_lxc-rockylinux-8
- openstack-ansible-deploy-aio_lxc-ubuntu-focal
periodic:
jobs:
@@ -78,11 +80,13 @@
jobs:
- openstack-ansible-deploy-infra_lxc-centos-8-stream
- openstack-ansible-deploy-infra_lxc-debian-bullseye
+ - openstack-ansible-deploy-infra_lxc-rockylinux-8
- openstack-ansible-deploy-infra_lxc-ubuntu-focal
gate:
jobs:
- openstack-ansible-deploy-infra_lxc-centos-8-stream
- openstack-ansible-deploy-infra_lxc-debian-bullseye
+ - openstack-ansible-deploy-infra_lxc-rockylinux-8
- openstack-ansible-deploy-infra_lxc-ubuntu-focal
periodic:
jobs:
@@ -94,11 +98,13 @@
jobs:
- openstack-ansible-deploy-hosts_lxc-centos-8-stream
- openstack-ansible-deploy-hosts_lxc-debian-bullseye
+ - openstack-ansible-deploy-hosts_lxc-rockylinux-8
- openstack-ansible-deploy-hosts_lxc-ubuntu-focal
gate:
jobs:
- openstack-ansible-deploy-hosts_lxc-centos-8-stream
- openstack-ansible-deploy-hosts_lxc-debian-bullseye
+ - openstack-ansible-deploy-hosts_lxc-rockylinux-8
- openstack-ansible-deploy-hosts_lxc-ubuntu-focal
periodic:
jobs:
@@ -110,11 +116,13 @@
jobs:
- openstack-ansible-deploy-hosts_metal-centos-8-stream
- openstack-ansible-deploy-hosts_metal-debian-bullseye
+ - openstack-ansible-deploy-hosts_metal-rockylinux-8
- openstack-ansible-deploy-hosts_metal-ubuntu-focal
gate:
jobs:
- openstack-ansible-deploy-hosts_metal-centos-8-stream
- openstack-ansible-deploy-hosts_metal-debian-bullseye
+ - openstack-ansible-deploy-hosts_metal-rockylinux-8
- openstack-ansible-deploy-hosts_metal-ubuntu-focal
periodic:
jobs:
@@ -139,6 +147,7 @@
jobs:
- openstack-ansible-deploy-aio_distro_lxc-centos-8-stream
- openstack-ansible-deploy-aio_distro_lxc-debian-bullseye
+ - openstack-ansible-deploy-aio_distro_lxc-rockylinux-8
- openstack-ansible-deploy-aio_distro_lxc-ubuntu-focal
- project-template:
@@ -148,6 +157,7 @@
- openstack-ansible-deploy-aio_metal-debian-bullseye
- openstack-ansible-deploy-aio_metal-centos-8-stream
- openstack-ansible-deploy-aio_metal-ubuntu-focal
+ - openstack-ansible-deploy-aio_metal-rockylinux-8
- openstack-ansible-upgrade-aio_metal-centos-8-stream:
voting: false
- openstack-ansible-upgrade-aio_metal-ubuntu-focal
@@ -156,6 +166,7 @@
- openstack-ansible-deploy-aio_metal-debian-bullseye
- openstack-ansible-deploy-aio_metal-centos-8-stream
- openstack-ansible-deploy-aio_metal-ubuntu-focal
+ - openstack-ansible-deploy-aio_metal-rockylinux-8
- project-template:
name: openstack-ansible-deploy-aio_telemetry_metal-jobs
@@ -163,11 +174,13 @@
jobs:
- openstack-ansible-deploy-aio_telemetry_metal-centos-8-stream
- openstack-ansible-deploy-aio_telemetry_metal-debian-bullseye
+ - openstack-ansible-deploy-aio_telemetry_metal-rockylinux-8
- openstack-ansible-deploy-aio_telemetry_metal-ubuntu-focal
gate:
jobs:
- openstack-ansible-deploy-aio_telemetry_metal-centos-8-stream
- openstack-ansible-deploy-aio_telemetry_metal-debian-bullseye
+ - openstack-ansible-deploy-aio_telemetry_metal-rockylinux-8
- openstack-ansible-deploy-aio_telemetry_metal-ubuntu-focal
- project-template: