Add support for for CentOS Stream 9
CentOS has published the official mirror for CentOS Stream 9 [1]. In RDO, we are working to get ready for it ASAP and we have the required repos to run p-o-i on CS9 [2]. This patch is adding support to CS9 in p-o-i repo with the required fixes. Also is adding integrations jobs for scenarios 0-4 and adding them as non-voting. Note that we don't have promotion pipeline working so i think it's better to not make it voting yet. [1] http://mirror.stream.centos.org/9-stream/ [2] https://trunk.rdoproject.org/centos9-master/report.html Change-Id: I9da46a6aaef3559b24d5a47fb0bde9ae1d09abdb
This commit is contained in:
parent
1bd2ad0eb4
commit
f384effdb4
@ -14,7 +14,7 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
source /etc/os-release
|
source /etc/os-release
|
||||||
OS_NAME_VERS=${ID}${VERSION_ID}
|
export OS_NAME_VERS=${ID}${VERSION_ID}
|
||||||
|
|
||||||
# Write out facts to the facter folder when we generate them.
|
# Write out facts to the facter folder when we generate them.
|
||||||
export WRITE_FACTS=${WRITE_FACTS:-true}
|
export WRITE_FACTS=${WRITE_FACTS:-true}
|
||||||
@ -40,8 +40,13 @@ if [ -f /etc/ci/mirror_info.sh ]; then
|
|||||||
CEPH_MIRROR_HOST="http://download.ceph.com/debian-${CEPH_VERSION}"
|
CEPH_MIRROR_HOST="http://download.ceph.com/debian-${CEPH_VERSION}"
|
||||||
NODEPOOL_PUPPETLABS_MIRROR="http://${NODEPOOL_MIRROR_HOST}/apt-puppetlabs"
|
NODEPOOL_PUPPETLABS_MIRROR="http://${NODEPOOL_MIRROR_HOST}/apt-puppetlabs"
|
||||||
else
|
else
|
||||||
CEPH_MIRROR_HOST="${CENTOS_MIRROR_HOST}/centos/${VERSION_ID}/storage/x86_64/ceph-${CEPH_VERSION}/"
|
# TODO centos9 content is still not mirrored
|
||||||
NODEPOOL_PUPPETLABS_MIRROR="http://${NODEPOOL_MIRROR_HOST}/yum-puppetlabs"
|
if [ "${OS_NAME_VERS}" == "centos9" ]; then
|
||||||
|
CEPH_MIRROR_HOST="https://buildlogs.centos.org/centos/9-stream/storage/x86_64/ceph-${CEPH_VERSION}/"
|
||||||
|
else
|
||||||
|
CEPH_MIRROR_HOST="${CENTOS_MIRROR_HOST}/centos/${VERSION_ID}/storage/x86_64/ceph-${CEPH_VERSION}/"
|
||||||
|
NODEPOOL_PUPPETLABS_MIRROR="http://${NODEPOOL_MIRROR_HOST}/yum-puppetlabs"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
CENTOS_MIRROR_HOST='http://mirror.centos.org'
|
CENTOS_MIRROR_HOST='http://mirror.centos.org'
|
||||||
@ -52,14 +57,14 @@ else
|
|||||||
CEPH_MIRROR_HOST="https://download.ceph.com/debian-${CEPH_VERSION}"
|
CEPH_MIRROR_HOST="https://download.ceph.com/debian-${CEPH_VERSION}"
|
||||||
NODEPOOL_PUPPETLABS_MIRROR='https://apt.puppetlabs.com'
|
NODEPOOL_PUPPETLABS_MIRROR='https://apt.puppetlabs.com'
|
||||||
else
|
else
|
||||||
CEPH_MIRROR_HOST="${CENTOS_MIRROR_HOST}/centos/${VERSION_ID}/storage/x86_64/ceph-${CEPH_VERSION}/"
|
CEPH_MIRROR_HOST="${CENTOS_MIRROR_HOST}/centos/${VERSION_ID}-stream/storage/x86_64/ceph-${CEPH_VERSION}/"
|
||||||
NODEPOOL_PUPPETLABS_MIRROR="https://yum.puppetlabs.com"
|
NODEPOOL_PUPPETLABS_MIRROR="https://yum.puppetlabs.com"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
curl -o /tmp/delorean.repo "${NODEPOOL_RDO_PROXY}/centos8-master/puppet-passed-ci/delorean.repo"
|
curl -o /tmp/delorean.repo "${NODEPOOL_RDO_PROXY}/${OS_NAME_VERS}-master/puppet-passed-ci/delorean.repo"
|
||||||
sed -i -e "s|https://trunk.rdoproject.org|${NODEPOOL_RDO_PROXY}|g" /tmp/delorean.repo
|
sed -i -e "s|https://trunk.rdoproject.org|${NODEPOOL_RDO_PROXY}|g" /tmp/delorean.repo
|
||||||
curl -o /tmp/delorean-deps.repo "${NODEPOOL_RDO_PROXY}/centos8-master/delorean-deps.repo"
|
curl -o /tmp/delorean-deps.repo "${NODEPOOL_RDO_PROXY}/${OS_NAME_VERS}-master/delorean-deps.repo"
|
||||||
sed -i -e "s|https://trunk.rdoproject.org|${NODEPOOL_RDO_PROXY}|g" /tmp/delorean-deps.repo
|
sed -i -e "s|https://trunk.rdoproject.org|${NODEPOOL_RDO_PROXY}|g" /tmp/delorean-deps.repo
|
||||||
sed -i -e "s|http://mirror.centos.org|${CENTOS_MIRROR_HOST}|g" /tmp/delorean-deps.repo
|
sed -i -e "s|http://mirror.centos.org|${CENTOS_MIRROR_HOST}|g" /tmp/delorean-deps.repo
|
||||||
|
|
||||||
|
22
functions
22
functions
@ -217,13 +217,13 @@ install_puppet() {
|
|||||||
if rpm --quiet -q epel-release; then
|
if rpm --quiet -q epel-release; then
|
||||||
$SUDO $YUM remove -y epel-release
|
$SUDO $YUM remove -y epel-release
|
||||||
fi
|
fi
|
||||||
|
source /etc/os-release
|
||||||
if [ "${MANAGE_REPOS}" == "true" ] ; then
|
if [ "${MANAGE_REPOS}" == "true" ] ; then
|
||||||
source /etc/os-release
|
if [ ${VERSION_ID} -ne 9 ] ; then
|
||||||
$SUDO rpm --import ${NODEPOOL_PUPPETLABS_MIRROR}/RPM-GPG-KEY-puppetlabs
|
$SUDO rpm --import ${NODEPOOL_PUPPETLABS_MIRROR}/RPM-GPG-KEY-puppetlabs
|
||||||
$SUDO rpm --import ${NODEPOOL_PUPPETLABS_MIRROR}/RPM-GPG-KEY-puppet
|
$SUDO rpm --import ${NODEPOOL_PUPPETLABS_MIRROR}/RPM-GPG-KEY-puppet
|
||||||
$SUDO rpm --import ${NODEPOOL_PUPPETLABS_MIRROR}/RPM-GPG-KEY-puppet-20250406
|
$SUDO rpm --import ${NODEPOOL_PUPPETLABS_MIRROR}/RPM-GPG-KEY-puppet-20250406
|
||||||
$SUDO bash -c "cat << EOF > /etc/yum.repos.d/puppetlabs.repo
|
$SUDO bash -c "cat << EOF > /etc/yum.repos.d/puppetlabs.repo
|
||||||
[puppetlabs-products]
|
[puppetlabs-products]
|
||||||
name=Puppet Labs Products El ${VERSION_ID} - x86_64
|
name=Puppet Labs Products El ${VERSION_ID} - x86_64
|
||||||
baseurl=${NODEPOOL_PUPPETLABS_MIRROR}/puppet${PUPPET_MAJ_VERSION}/el/${VERSION_ID}/x86_64/
|
baseurl=${NODEPOOL_PUPPETLABS_MIRROR}/puppet${PUPPET_MAJ_VERSION}/el/${VERSION_ID}/x86_64/
|
||||||
@ -233,6 +233,16 @@ gpgkey=${NODEPOOL_PUPPETLABS_MIRROR}/RPM-GPG-KEY-puppetlabs
|
|||||||
enabled=1
|
enabled=1
|
||||||
gpgcheck=1
|
gpgcheck=1
|
||||||
EOF"
|
EOF"
|
||||||
|
else
|
||||||
|
# TODO we are using puppet from RDO in CS9 until there el9 in puppetlabs repo
|
||||||
|
$SUDO bash -c "cat << EOF > /etc/yum.repos.d/puppet-rdo.repo
|
||||||
|
[puppet-rdo]
|
||||||
|
name=Puppet from RDO repo for CentOS ${VERSION_ID} - x86_64
|
||||||
|
baseurl=https://trunk.rdoproject.org/centos9-master/deps/latest/
|
||||||
|
enabled=1
|
||||||
|
gpgcheck=0
|
||||||
|
EOF"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
$SUDO $YUM install -y ${PUPPET_PKG}
|
$SUDO $YUM install -y ${PUPPET_PKG}
|
||||||
fi
|
fi
|
||||||
|
@ -47,6 +47,14 @@ class openstack_integration::repos {
|
|||||||
$ceph_mirror = pick($::ceph_mirror_host, "http://download.ceph.com/debian-${ceph_version_real}/")
|
$ceph_mirror = pick($::ceph_mirror_host, "http://download.ceph.com/debian-${ceph_version_real}/")
|
||||||
}
|
}
|
||||||
'RedHat': {
|
'RedHat': {
|
||||||
|
# Set specific variables for CentOS Stream 9
|
||||||
|
if $::os['release']['major'] >= '9' {
|
||||||
|
$powertools_repo = 'crb'
|
||||||
|
$manage_virt = false
|
||||||
|
} else {
|
||||||
|
$powertools_repo = 'powertools'
|
||||||
|
$manage_virt = true
|
||||||
|
}
|
||||||
if defined('$::centos_mirror_host') and $::centos_mirror_host != '' {
|
if defined('$::centos_mirror_host') and $::centos_mirror_host != '' {
|
||||||
$centos_mirror = $::centos_mirror_host
|
$centos_mirror = $::centos_mirror_host
|
||||||
} else {
|
} else {
|
||||||
@ -68,6 +76,7 @@ class openstack_integration::repos {
|
|||||||
class { 'openstack_extras::repo::redhat::redhat':
|
class { 'openstack_extras::repo::redhat::redhat':
|
||||||
manage_rdo => false,
|
manage_rdo => false,
|
||||||
manage_epel => false,
|
manage_epel => false,
|
||||||
|
manage_virt => $manage_virt,
|
||||||
centos_mirror_url => $centos_mirror,
|
centos_mirror_url => $centos_mirror,
|
||||||
repo_source_hash => {
|
repo_source_hash => {
|
||||||
'delorean.repo' => $delorean_repo,
|
'delorean.repo' => $delorean_repo,
|
||||||
@ -95,9 +104,9 @@ class openstack_integration::repos {
|
|||||||
# PowerTools is required on CentOS8 since Ussuri.
|
# PowerTools is required on CentOS8 since Ussuri.
|
||||||
if $::operatingsystem == 'CentOS' {
|
if $::operatingsystem == 'CentOS' {
|
||||||
exec { 'enable-powertools':
|
exec { 'enable-powertools':
|
||||||
command => 'dnf config-manager --enable powertools',
|
command => "dnf config-manager --enable ${powertools_repo}",
|
||||||
path => '/usr/bin/',
|
path => '/usr/bin/',
|
||||||
unless => 'test 0 -ne $(dnf repolist --enabled powertools | wc -l)'
|
unless => "test 0 -ne $(dnf repolist --enabled ${powertools_repo} | wc -l)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -84,6 +84,19 @@
|
|||||||
- ansible_os_family == 'RedHat'
|
- ansible_os_family == 'RedHat'
|
||||||
- ansible_distribution == "Fedora" or ansible_distribution_major_version >= "8"
|
- ansible_distribution == "Fedora" or ansible_distribution_major_version >= "8"
|
||||||
|
|
||||||
|
- block:
|
||||||
|
- name: install required packages for CentOS 9
|
||||||
|
dnf:
|
||||||
|
name: "{{ item }}"
|
||||||
|
state: present
|
||||||
|
become: true
|
||||||
|
ignore_errors: true
|
||||||
|
with_items:
|
||||||
|
- rubygem-rexml
|
||||||
|
when:
|
||||||
|
- ansible_os_family == 'RedHat'
|
||||||
|
- ansible_distribution == "Fedora" or ansible_distribution_major_version >= "9"
|
||||||
|
|
||||||
- name: Install Ruby dependencies (Ubuntu)
|
- name: Install Ruby dependencies (Ubuntu)
|
||||||
apt:
|
apt:
|
||||||
name: "{{ item }}"
|
name: "{{ item }}"
|
||||||
|
12
run_tests.sh
12
run_tests.sh
@ -48,8 +48,14 @@ export WRITE_FACTS=false
|
|||||||
source ${SCRIPT_DIR}/configure_facts.sh
|
source ${SCRIPT_DIR}/configure_facts.sh
|
||||||
|
|
||||||
export PATH=${PATH}:/opt/puppetlabs/bin:/opt/puppetlabs/puppet/bin
|
export PATH=${PATH}:/opt/puppetlabs/bin:/opt/puppetlabs/puppet/bin
|
||||||
export PUPPET_BASE_PATH=/etc/puppetlabs/code
|
# TODO In CentOS9 there is no puppetlabs package yet, so we use RDO one.
|
||||||
export PUPPET_PKG=${PUPPET_PKG:-puppet-agent}
|
if [ "${OS_NAME_VERS}" == "centos9" ]; then
|
||||||
|
export PUPPET_BASE_PATH=/etc/puppet
|
||||||
|
export PUPPET_PKG="puppet"
|
||||||
|
else
|
||||||
|
export PUPPET_BASE_PATH=/etc/puppetlabs/code
|
||||||
|
export PUPPET_PKG=${PUPPET_PKG:-puppet-agent}
|
||||||
|
fi
|
||||||
|
|
||||||
print_header 'Start (run_tests.sh)'
|
print_header 'Start (run_tests.sh)'
|
||||||
|
|
||||||
@ -144,7 +150,7 @@ if uses_debs; then
|
|||||||
$SUDO apt-get install -y dstat ebtables iotop sysstat
|
$SUDO apt-get install -y dstat ebtables iotop sysstat
|
||||||
elif is_fedora; then
|
elif is_fedora; then
|
||||||
$SUDO $YUM install -y dstat setools setroubleshoot audit iotop sysstat
|
$SUDO $YUM install -y dstat setools setroubleshoot audit iotop sysstat
|
||||||
$SUDO service auditd start
|
$SUDO systemctl start auditd
|
||||||
# SElinux in permissive mode so later we can catch alerts
|
# SElinux in permissive mode so later we can catch alerts
|
||||||
$SUDO selinuxenabled && $SUDO setenforce 0
|
$SUDO selinuxenabled && $SUDO setenforce 0
|
||||||
fi
|
fi
|
||||||
|
@ -33,6 +33,14 @@
|
|||||||
voting: false
|
voting: false
|
||||||
nodeset: centos-8-stream
|
nodeset: centos-8-stream
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: puppet-openstack-integration-7-scenario000-tempest-centos-9-stream
|
||||||
|
parent: puppet-openstack-integration-7-scenario000
|
||||||
|
voting: false
|
||||||
|
nodeset:
|
||||||
|
nodes:
|
||||||
|
- name: centos-9-stream
|
||||||
|
label: centos-9-stream
|
||||||
- job:
|
- job:
|
||||||
name: puppet-openstack-integration-6-scenario001
|
name: puppet-openstack-integration-6-scenario001
|
||||||
parent: puppet-openstack-integration-6
|
parent: puppet-openstack-integration-6
|
||||||
@ -60,6 +68,15 @@
|
|||||||
parent: puppet-openstack-integration-7-scenario001
|
parent: puppet-openstack-integration-7-scenario001
|
||||||
nodeset: centos-8-stream
|
nodeset: centos-8-stream
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: puppet-openstack-integration-7-scenario001-tempest-centos-9-stream
|
||||||
|
parent: puppet-openstack-integration-7-scenario001
|
||||||
|
voting: false
|
||||||
|
nodeset:
|
||||||
|
nodes:
|
||||||
|
- name: centos-9-stream
|
||||||
|
label: centos-9-stream
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: puppet-openstack-integration-6-scenario002
|
name: puppet-openstack-integration-6-scenario002
|
||||||
parent: puppet-openstack-integration-6
|
parent: puppet-openstack-integration-6
|
||||||
@ -85,6 +102,15 @@
|
|||||||
parent: puppet-openstack-integration-7-scenario002
|
parent: puppet-openstack-integration-7-scenario002
|
||||||
nodeset: centos-8-stream
|
nodeset: centos-8-stream
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: puppet-openstack-integration-7-scenario002-tempest-centos-9-stream
|
||||||
|
parent: puppet-openstack-integration-7-scenario002
|
||||||
|
voting: false
|
||||||
|
nodeset:
|
||||||
|
nodes:
|
||||||
|
- name: centos-9-stream
|
||||||
|
label: centos-9-stream
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: puppet-openstack-integration-6-scenario003
|
name: puppet-openstack-integration-6-scenario003
|
||||||
parent: puppet-openstack-integration-6
|
parent: puppet-openstack-integration-6
|
||||||
@ -110,6 +136,15 @@
|
|||||||
parent: puppet-openstack-integration-7-scenario003
|
parent: puppet-openstack-integration-7-scenario003
|
||||||
nodeset: centos-8-stream
|
nodeset: centos-8-stream
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: puppet-openstack-integration-7-scenario003-tempest-centos-9-stream
|
||||||
|
parent: puppet-openstack-integration-7-scenario003
|
||||||
|
voting: false
|
||||||
|
nodeset:
|
||||||
|
nodes:
|
||||||
|
- name: centos-9-stream
|
||||||
|
label: centos-9-stream
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: puppet-openstack-integration-6-scenario004
|
name: puppet-openstack-integration-6-scenario004
|
||||||
parent: puppet-openstack-integration-6
|
parent: puppet-openstack-integration-6
|
||||||
@ -136,3 +171,12 @@
|
|||||||
name: puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
name: puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
||||||
parent: puppet-openstack-integration-7-scenario004
|
parent: puppet-openstack-integration-7-scenario004
|
||||||
nodeset: centos-8-stream
|
nodeset: centos-8-stream
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: puppet-openstack-integration-7-scenario004-tempest-centos-9-stream
|
||||||
|
parent: puppet-openstack-integration-7-scenario004
|
||||||
|
voting: false
|
||||||
|
nodeset:
|
||||||
|
nodes:
|
||||||
|
- name: centos-9-stream
|
||||||
|
label: centos-9-stream
|
||||||
|
@ -59,6 +59,11 @@
|
|||||||
- puppet-openstack-integration-7-scenario002-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario002-tempest-centos-8-stream
|
||||||
- puppet-openstack-integration-7-scenario003-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario003-tempest-centos-8-stream
|
||||||
- puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
||||||
|
- puppet-openstack-integration-7-scenario000-tempest-centos-9-stream
|
||||||
|
- puppet-openstack-integration-7-scenario001-tempest-centos-9-stream
|
||||||
|
- puppet-openstack-integration-7-scenario002-tempest-centos-9-stream
|
||||||
|
- puppet-openstack-integration-7-scenario003-tempest-centos-9-stream
|
||||||
|
- puppet-openstack-integration-7-scenario004-tempest-centos-9-stream
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
||||||
@ -72,6 +77,7 @@
|
|||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-6-scenario001-tempest-ubuntu-focal
|
- puppet-openstack-integration-6-scenario001-tempest-ubuntu-focal
|
||||||
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
||||||
|
- puppet-openstack-integration-7-scenario001-tempest-centos-9-stream
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
||||||
@ -82,6 +88,7 @@
|
|||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-6-scenario002-tempest-ubuntu-focal
|
- puppet-openstack-integration-6-scenario002-tempest-ubuntu-focal
|
||||||
- puppet-openstack-integration-7-scenario002-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario002-tempest-centos-8-stream
|
||||||
|
- puppet-openstack-integration-7-scenario002-tempest-centos-9-stream
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-7-scenario002-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario002-tempest-centos-8-stream
|
||||||
@ -92,6 +99,7 @@
|
|||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-6-scenario003-tempest-ubuntu-focal
|
- puppet-openstack-integration-6-scenario003-tempest-ubuntu-focal
|
||||||
- puppet-openstack-integration-7-scenario003-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario003-tempest-centos-8-stream
|
||||||
|
- puppet-openstack-integration-7-scenario003-tempest-centos-9-stream
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-7-scenario003-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario003-tempest-centos-8-stream
|
||||||
@ -102,6 +110,7 @@
|
|||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-6-scenario004-tempest-ubuntu-focal
|
- puppet-openstack-integration-6-scenario004-tempest-ubuntu-focal
|
||||||
- puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
||||||
|
- puppet-openstack-integration-7-scenario004-tempest-centos-9-stream
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
- puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
- puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
||||||
|
Loading…
x
Reference in New Issue
Block a user