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: