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.
|
||||
|
||||
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.
|
||||
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}"
|
||||
NODEPOOL_PUPPETLABS_MIRROR="http://${NODEPOOL_MIRROR_HOST}/apt-puppetlabs"
|
||||
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"
|
||||
# TODO centos9 content is still not mirrored
|
||||
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
|
||||
else
|
||||
CENTOS_MIRROR_HOST='http://mirror.centos.org'
|
||||
@ -52,14 +57,14 @@ else
|
||||
CEPH_MIRROR_HOST="https://download.ceph.com/debian-${CEPH_VERSION}"
|
||||
NODEPOOL_PUPPETLABS_MIRROR='https://apt.puppetlabs.com'
|
||||
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"
|
||||
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
|
||||
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|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
|
||||
$SUDO $YUM remove -y epel-release
|
||||
fi
|
||||
|
||||
source /etc/os-release
|
||||
if [ "${MANAGE_REPOS}" == "true" ] ; then
|
||||
source /etc/os-release
|
||||
$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-20250406
|
||||
$SUDO bash -c "cat << EOF > /etc/yum.repos.d/puppetlabs.repo
|
||||
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-puppet
|
||||
$SUDO rpm --import ${NODEPOOL_PUPPETLABS_MIRROR}/RPM-GPG-KEY-puppet-20250406
|
||||
$SUDO bash -c "cat << EOF > /etc/yum.repos.d/puppetlabs.repo
|
||||
[puppetlabs-products]
|
||||
name=Puppet Labs Products 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
|
||||
gpgcheck=1
|
||||
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
|
||||
$SUDO $YUM install -y ${PUPPET_PKG}
|
||||
fi
|
||||
|
@ -47,6 +47,14 @@ class openstack_integration::repos {
|
||||
$ceph_mirror = pick($::ceph_mirror_host, "http://download.ceph.com/debian-${ceph_version_real}/")
|
||||
}
|
||||
'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 != '' {
|
||||
$centos_mirror = $::centos_mirror_host
|
||||
} else {
|
||||
@ -68,6 +76,7 @@ class openstack_integration::repos {
|
||||
class { 'openstack_extras::repo::redhat::redhat':
|
||||
manage_rdo => false,
|
||||
manage_epel => false,
|
||||
manage_virt => $manage_virt,
|
||||
centos_mirror_url => $centos_mirror,
|
||||
repo_source_hash => {
|
||||
'delorean.repo' => $delorean_repo,
|
||||
@ -95,9 +104,9 @@ class openstack_integration::repos {
|
||||
# PowerTools is required on CentOS8 since Ussuri.
|
||||
if $::operatingsystem == 'CentOS' {
|
||||
exec { 'enable-powertools':
|
||||
command => 'dnf config-manager --enable powertools',
|
||||
command => "dnf config-manager --enable ${powertools_repo}",
|
||||
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_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)
|
||||
apt:
|
||||
name: "{{ item }}"
|
||||
|
12
run_tests.sh
12
run_tests.sh
@ -48,8 +48,14 @@ export WRITE_FACTS=false
|
||||
source ${SCRIPT_DIR}/configure_facts.sh
|
||||
|
||||
export PATH=${PATH}:/opt/puppetlabs/bin:/opt/puppetlabs/puppet/bin
|
||||
export PUPPET_BASE_PATH=/etc/puppetlabs/code
|
||||
export PUPPET_PKG=${PUPPET_PKG:-puppet-agent}
|
||||
# TODO In CentOS9 there is no puppetlabs package yet, so we use RDO one.
|
||||
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)'
|
||||
|
||||
@ -144,7 +150,7 @@ if uses_debs; then
|
||||
$SUDO apt-get install -y dstat ebtables iotop sysstat
|
||||
elif is_fedora; then
|
||||
$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
|
||||
$SUDO selinuxenabled && $SUDO setenforce 0
|
||||
fi
|
||||
|
@ -33,6 +33,14 @@
|
||||
voting: false
|
||||
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:
|
||||
name: puppet-openstack-integration-6-scenario001
|
||||
parent: puppet-openstack-integration-6
|
||||
@ -60,6 +68,15 @@
|
||||
parent: puppet-openstack-integration-7-scenario001
|
||||
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:
|
||||
name: puppet-openstack-integration-6-scenario002
|
||||
parent: puppet-openstack-integration-6
|
||||
@ -85,6 +102,15 @@
|
||||
parent: puppet-openstack-integration-7-scenario002
|
||||
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:
|
||||
name: puppet-openstack-integration-6-scenario003
|
||||
parent: puppet-openstack-integration-6
|
||||
@ -110,6 +136,15 @@
|
||||
parent: puppet-openstack-integration-7-scenario003
|
||||
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:
|
||||
name: puppet-openstack-integration-6-scenario004
|
||||
parent: puppet-openstack-integration-6
|
||||
@ -136,3 +171,12 @@
|
||||
name: puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
||||
parent: puppet-openstack-integration-7-scenario004
|
||||
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-scenario003-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:
|
||||
jobs:
|
||||
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
||||
@ -72,6 +77,7 @@
|
||||
jobs:
|
||||
- puppet-openstack-integration-6-scenario001-tempest-ubuntu-focal
|
||||
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
||||
- puppet-openstack-integration-7-scenario001-tempest-centos-9-stream
|
||||
gate:
|
||||
jobs:
|
||||
- puppet-openstack-integration-7-scenario001-tempest-centos-8-stream
|
||||
@ -82,6 +88,7 @@
|
||||
jobs:
|
||||
- puppet-openstack-integration-6-scenario002-tempest-ubuntu-focal
|
||||
- puppet-openstack-integration-7-scenario002-tempest-centos-8-stream
|
||||
- puppet-openstack-integration-7-scenario002-tempest-centos-9-stream
|
||||
gate:
|
||||
jobs:
|
||||
- puppet-openstack-integration-7-scenario002-tempest-centos-8-stream
|
||||
@ -92,6 +99,7 @@
|
||||
jobs:
|
||||
- puppet-openstack-integration-6-scenario003-tempest-ubuntu-focal
|
||||
- puppet-openstack-integration-7-scenario003-tempest-centos-8-stream
|
||||
- puppet-openstack-integration-7-scenario003-tempest-centos-9-stream
|
||||
gate:
|
||||
jobs:
|
||||
- puppet-openstack-integration-7-scenario003-tempest-centos-8-stream
|
||||
@ -102,6 +110,7 @@
|
||||
jobs:
|
||||
- puppet-openstack-integration-6-scenario004-tempest-ubuntu-focal
|
||||
- puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
||||
- puppet-openstack-integration-7-scenario004-tempest-centos-9-stream
|
||||
gate:
|
||||
jobs:
|
||||
- puppet-openstack-integration-7-scenario004-tempest-centos-8-stream
|
||||
|
Loading…
x
Reference in New Issue
Block a user