Add support for running on Rocky Linux

Change-Id: I127ab0d9bab436e207a3217a1663ba196d300fd2
Signed-off-by: Neil Hanlon <neil@shrug.pw>
Depends-On: https://review.opendev.org/c/openstack/project-config/+/828435
This commit is contained in:
Neil Hanlon 2021-10-06 17:05:06 -04:00 committed by Dmitriy Rabotyagov
parent 24b6801a67
commit 65c67f5725
11 changed files with 173 additions and 9 deletions

View File

@ -29,6 +29,7 @@ hosts:
* `Ubuntu server 20.04 (Focal Fossa) LTS 64-bit <http://releases.ubuntu.com/20.04/>`_ * `Ubuntu server 20.04 (Focal Fossa) LTS 64-bit <http://releases.ubuntu.com/20.04/>`_
* `Debian 11 (Bullseye) LTS 64-bit <https://www.debian.org/distrib/>`_ * `Debian 11 (Bullseye) LTS 64-bit <https://www.debian.org/distrib/>`_
* `Centos 8 Stream 64-bit <http://isoredirect.centos.org/centos/8-stream/isos/x86_64/>`_ * `Centos 8 Stream 64-bit <http://isoredirect.centos.org/centos/8-stream/isos/x86_64/>`_
* `Rocky Linux 8 64-bit <http://dl.rockylinux.org/pub/rocky/8/isos/x86_64/>`_
Configure at least one network interface to access the Internet or suitable Configure at least one network interface to access the Internet or suitable
local repositories. local repositories.

View File

@ -20,6 +20,8 @@ following minimum requirements:
* Centos 8 Stream * Centos 8 Stream
* Rocky Linux 8
* Linux kernel version ``3.10.0`` or later. * Linux kernel version ``3.10.0`` or later.
* Secure Shell (SSH) client and server that support public key * Secure Shell (SSH) client and server that support public key

View File

@ -14,6 +14,7 @@ target host:
* Ubuntu server 20.04 (Focal Fossa) LTS 64-bit * Ubuntu server 20.04 (Focal Fossa) LTS 64-bit
* Debian 10 64-bit * Debian 10 64-bit
* Centos 8 Stream 64-bit * Centos 8 Stream 64-bit
* Derivitives: Rocky Linux
Configure at least one network interface to access the Internet or Configure at least one network interface to access the Internet or
suitable local repositories. suitable local repositories.

View File

@ -121,7 +121,8 @@ version.
.. note:: .. note::
The |current_release_formal_name| release is only compatible with 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 The next step is to bootstrap Ansible and the Ansible roles for the
development environment. development environment.

View File

@ -58,7 +58,7 @@
(ansible_facts['os_family'] == 'RedHat' and ansible_facts['distribution_major_version'] == '8') (ansible_facts['os_family'] == 'RedHat' and ansible_facts['distribution_major_version'] == '8')
msg: > msg: >
The only supported platforms for this release are Debian 11 (Bullseye), 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: roles:
- role: "openstack_hosts" - role: "openstack_hosts"
vars_files: vars_files:

View File

@ -54,7 +54,7 @@ source /etc/os-release || source /usr/lib/os-release
# Figure out the appropriate package install command # Figure out the appropriate package install command
case ${ID,,} in case ${ID,,} in
*suse*) pkg_mgr_cmd="zypper -n 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" ;; ubuntu|debian) pkg_mgr_cmd="apt-get install -y" ;;
# Gentoo needs to have version set since it's rolling # Gentoo needs to have version set since it's rolling
gentoo) pkg_mgr_cmd="emerge --jobs=4"; VERSION="rolling" ;; gentoo) pkg_mgr_cmd="emerge --jobs=4"; VERSION="rolling" ;;

View File

@ -70,13 +70,16 @@ determine_distro
# Install the base packages # Install the base packages
case ${DISTRO_ID} in case ${DISTRO_ID} in
centos|rhel) rocky|centos|rhel)
dnf -y install \ dnf -y install \
git curl autoconf gcc gcc-c++ nc \ git curl autoconf gcc gcc-c++ nc \
python38 python38-devel libselinux-python3 \ python38 python38-devel libselinux-python3 \
systemd-devel pkgconf \ systemd-devel pkgconf \
openssl-devel libffi-devel \ openssl-devel libffi-devel \
rsync wget rsync wget
if [[ ${DISTRO_ID} == "rocky" ]]; then
OSA_ANSIBLE_PYTHON_INTERPRETER="/usr/bin/python3"
fi
PYTHON_EXEC_PATH="$(which python3.8)" PYTHON_EXEC_PATH="$(which python3.8)"
;; ;;
ubuntu|debian) ubuntu|debian)

View File

@ -204,7 +204,7 @@ function setup_ara {
function run_dstat { function run_dstat {
if [ "$GATE_EXIT_RUN_DSTAT" == true ]; then if [ "$GATE_EXIT_RUN_DSTAT" == true ]; then
case ${DISTRO_ID} in case ${DISTRO_ID} in
centos|rhel) rocky|centos|rhel)
dnf -y install dstat dnf -y install dstat
;; ;;
ubuntu) ubuntu)
@ -250,7 +250,7 @@ function log_instance_info {
apt-get update apt-get update
DEBIAN_FRONTEND=noninteractive apt-get -y install iproute2 net-tools DEBIAN_FRONTEND=noninteractive apt-get -y install iproute2 net-tools
;; ;;
centos|rhel) rocky|centos|rhel)
dnf -y install iproute dnf -y install iproute
;; ;;
esac esac
@ -325,7 +325,7 @@ function get_instance_info {
determine_distro determine_distro
case ${DISTRO_ID} in case ${DISTRO_ID} in
centos|rhel) rocky|rhel)
rpm -qa | sort > \ rpm -qa | sort > \
"/openstack/log/instance-info/host_packages_info_${TS}.log" || true "/openstack/log/instance-info/host_packages_info_${TS}.log" || true
;; ;;

View File

@ -20,8 +20,8 @@
(ansible_facts['distribution'] == 'Ubuntu' and ansible_facts['distribution_release'] == 'focal') or (ansible_facts['distribution'] == 'Ubuntu' and ansible_facts['distribution_release'] == 'focal') or
(ansible_facts['os_family'] == 'RedHat' and ansible_facts['distribution_major_version'] == '8') (ansible_facts['os_family'] == 'RedHat' and ansible_facts['distribution_major_version'] == '8')
msg: >- msg: >-
The only supported platforms for this release are Debian Bullseye, The only supported platforms for this release are Debian 11 (Bullseye),
Ubuntu 20.04 (Focal), and CentOS 8 Stream Ubuntu 20.04 LTS (Focal), CentOS 8 derivatives such as Rocky Linux, and CentOS 8 Stream.
when: (check_operating_system | default(True))| bool when: (check_operating_system | default(True))| bool
tags: tags:
- check-operating-system - check-operating-system

View File

@ -471,6 +471,149 @@
nodeset: centos-8-stream nodeset: centos-8-stream
timeout: 10800 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 # debian bullseye
- job: - job:

View File

@ -39,11 +39,13 @@
jobs: jobs:
- openstack-ansible-deploy-aio_lxc-centos-8-stream - openstack-ansible-deploy-aio_lxc-centos-8-stream
- openstack-ansible-deploy-aio_lxc-debian-bullseye - openstack-ansible-deploy-aio_lxc-debian-bullseye
- openstack-ansible-deploy-aio_lxc-rockylinux-8
- openstack-ansible-deploy-aio_lxc-ubuntu-focal - openstack-ansible-deploy-aio_lxc-ubuntu-focal
gate: gate:
jobs: jobs:
- openstack-ansible-deploy-aio_lxc-centos-8-stream - openstack-ansible-deploy-aio_lxc-centos-8-stream
- openstack-ansible-deploy-aio_lxc-debian-bullseye - openstack-ansible-deploy-aio_lxc-debian-bullseye
- openstack-ansible-deploy-aio_lxc-rockylinux-8
- openstack-ansible-deploy-aio_lxc-ubuntu-focal - openstack-ansible-deploy-aio_lxc-ubuntu-focal
periodic: periodic:
jobs: jobs:
@ -78,11 +80,13 @@
jobs: jobs:
- openstack-ansible-deploy-infra_lxc-centos-8-stream - openstack-ansible-deploy-infra_lxc-centos-8-stream
- openstack-ansible-deploy-infra_lxc-debian-bullseye - openstack-ansible-deploy-infra_lxc-debian-bullseye
- openstack-ansible-deploy-infra_lxc-rockylinux-8
- openstack-ansible-deploy-infra_lxc-ubuntu-focal - openstack-ansible-deploy-infra_lxc-ubuntu-focal
gate: gate:
jobs: jobs:
- openstack-ansible-deploy-infra_lxc-centos-8-stream - openstack-ansible-deploy-infra_lxc-centos-8-stream
- openstack-ansible-deploy-infra_lxc-debian-bullseye - openstack-ansible-deploy-infra_lxc-debian-bullseye
- openstack-ansible-deploy-infra_lxc-rockylinux-8
- openstack-ansible-deploy-infra_lxc-ubuntu-focal - openstack-ansible-deploy-infra_lxc-ubuntu-focal
periodic: periodic:
jobs: jobs:
@ -94,11 +98,13 @@
jobs: jobs:
- openstack-ansible-deploy-hosts_lxc-centos-8-stream - openstack-ansible-deploy-hosts_lxc-centos-8-stream
- openstack-ansible-deploy-hosts_lxc-debian-bullseye - openstack-ansible-deploy-hosts_lxc-debian-bullseye
- openstack-ansible-deploy-hosts_lxc-rockylinux-8
- openstack-ansible-deploy-hosts_lxc-ubuntu-focal - openstack-ansible-deploy-hosts_lxc-ubuntu-focal
gate: gate:
jobs: jobs:
- openstack-ansible-deploy-hosts_lxc-centos-8-stream - openstack-ansible-deploy-hosts_lxc-centos-8-stream
- openstack-ansible-deploy-hosts_lxc-debian-bullseye - openstack-ansible-deploy-hosts_lxc-debian-bullseye
- openstack-ansible-deploy-hosts_lxc-rockylinux-8
- openstack-ansible-deploy-hosts_lxc-ubuntu-focal - openstack-ansible-deploy-hosts_lxc-ubuntu-focal
periodic: periodic:
jobs: jobs:
@ -110,11 +116,13 @@
jobs: jobs:
- openstack-ansible-deploy-hosts_metal-centos-8-stream - openstack-ansible-deploy-hosts_metal-centos-8-stream
- openstack-ansible-deploy-hosts_metal-debian-bullseye - openstack-ansible-deploy-hosts_metal-debian-bullseye
- openstack-ansible-deploy-hosts_metal-rockylinux-8
- openstack-ansible-deploy-hosts_metal-ubuntu-focal - openstack-ansible-deploy-hosts_metal-ubuntu-focal
gate: gate:
jobs: jobs:
- openstack-ansible-deploy-hosts_metal-centos-8-stream - openstack-ansible-deploy-hosts_metal-centos-8-stream
- openstack-ansible-deploy-hosts_metal-debian-bullseye - openstack-ansible-deploy-hosts_metal-debian-bullseye
- openstack-ansible-deploy-hosts_metal-rockylinux-8
- openstack-ansible-deploy-hosts_metal-ubuntu-focal - openstack-ansible-deploy-hosts_metal-ubuntu-focal
periodic: periodic:
jobs: jobs:
@ -139,6 +147,7 @@
jobs: jobs:
- openstack-ansible-deploy-aio_distro_lxc-centos-8-stream - openstack-ansible-deploy-aio_distro_lxc-centos-8-stream
- openstack-ansible-deploy-aio_distro_lxc-debian-bullseye - openstack-ansible-deploy-aio_distro_lxc-debian-bullseye
- openstack-ansible-deploy-aio_distro_lxc-rockylinux-8
- openstack-ansible-deploy-aio_distro_lxc-ubuntu-focal - openstack-ansible-deploy-aio_distro_lxc-ubuntu-focal
- project-template: - project-template:
@ -148,6 +157,7 @@
- openstack-ansible-deploy-aio_metal-debian-bullseye - openstack-ansible-deploy-aio_metal-debian-bullseye
- openstack-ansible-deploy-aio_metal-centos-8-stream - openstack-ansible-deploy-aio_metal-centos-8-stream
- openstack-ansible-deploy-aio_metal-ubuntu-focal - openstack-ansible-deploy-aio_metal-ubuntu-focal
- openstack-ansible-deploy-aio_metal-rockylinux-8
- openstack-ansible-upgrade-aio_metal-centos-8-stream: - openstack-ansible-upgrade-aio_metal-centos-8-stream:
voting: false voting: false
- openstack-ansible-upgrade-aio_metal-ubuntu-focal - openstack-ansible-upgrade-aio_metal-ubuntu-focal
@ -156,6 +166,7 @@
- openstack-ansible-deploy-aio_metal-debian-bullseye - openstack-ansible-deploy-aio_metal-debian-bullseye
- openstack-ansible-deploy-aio_metal-centos-8-stream - openstack-ansible-deploy-aio_metal-centos-8-stream
- openstack-ansible-deploy-aio_metal-ubuntu-focal - openstack-ansible-deploy-aio_metal-ubuntu-focal
- openstack-ansible-deploy-aio_metal-rockylinux-8
- project-template: - project-template:
name: openstack-ansible-deploy-aio_telemetry_metal-jobs name: openstack-ansible-deploy-aio_telemetry_metal-jobs
@ -163,11 +174,13 @@
jobs: jobs:
- openstack-ansible-deploy-aio_telemetry_metal-centos-8-stream - openstack-ansible-deploy-aio_telemetry_metal-centos-8-stream
- openstack-ansible-deploy-aio_telemetry_metal-debian-bullseye - openstack-ansible-deploy-aio_telemetry_metal-debian-bullseye
- openstack-ansible-deploy-aio_telemetry_metal-rockylinux-8
- openstack-ansible-deploy-aio_telemetry_metal-ubuntu-focal - openstack-ansible-deploy-aio_telemetry_metal-ubuntu-focal
gate: gate:
jobs: jobs:
- openstack-ansible-deploy-aio_telemetry_metal-centos-8-stream - openstack-ansible-deploy-aio_telemetry_metal-centos-8-stream
- openstack-ansible-deploy-aio_telemetry_metal-debian-bullseye - openstack-ansible-deploy-aio_telemetry_metal-debian-bullseye
- openstack-ansible-deploy-aio_telemetry_metal-rockylinux-8
- openstack-ansible-deploy-aio_telemetry_metal-ubuntu-focal - openstack-ansible-deploy-aio_telemetry_metal-ubuntu-focal
- project-template: - project-template: