Replace hardcoded CentOS version with fact

Changes the hardcoded CentOS version with
using the major OS release fact.

Change-Id: Id04670b11fb16270bc6e3e220dd0d80086df90e4
This commit is contained in:
Tobias Urdin 2020-03-30 10:25:37 +02:00
parent 5d64035d5c
commit 972f66aeae
2 changed files with 33 additions and 3 deletions

View File

@ -100,7 +100,7 @@ class openstack_extras::repo::redhat::redhat(
$rdo_hash = {
'rdo-release' => {
'baseurl' => "${centos_mirror_url}/centos/7/cloud/\$basearch/openstack-${release}/",
'baseurl' => "${centos_mirror_url}/centos/${::os['release']['major']}/cloud/\$basearch/openstack-${release}/",
'descr' => "OpenStack ${release_cap} Repository",
'gpgkey' => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Cloud',
}
@ -116,10 +116,18 @@ class openstack_extras::repo::redhat::redhat(
}
if $manage_virt and ($::operatingsystem != 'Fedora') {
$os_major = $::os['release']['major']
if Integer.new($os_major) >= 8 {
$virt_baseurl = "${centos_mirror_url}/centos/${os_major}/virt/\$basearch/advanced-virtualization/"
} else {
$virt_baseurl = "${centos_mirror_url}/centos/${os_major}/virt/\$basearch/kvm-common/"
}
$virt_hash = {
'rdo-qemu-ev' => {
'baseurl' => "${centos_mirror_url}/centos/7/virt/\$basearch/kvm-common/",
'descr' => 'RDO CentOS-7 - QEMU EV',
'baseurl' => $virt_baseurl,
'descr' => "RDO CentOS-${$os_major} - QEMU EV",
'gpgkey' => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Virtualization',
}
}

View File

@ -88,6 +88,27 @@ describe 'openstack_extras::repo::redhat::redhat' do
it { should_not contain_yumrepo('epel') }
end
context 'with major release 8 or later and virt repo enabled' do
let :params do
default_params.merge!( :manage_virt => true )
end
before do
facts.merge!( :os => {'release' => {'major' => 8}} )
end
it { should contain_yumrepo('rdo-qemu-ev').with(
:baseurl => "http://mirror.centos.org/centos/8/virt/$basearch/advanced-virtualization/",
:descr => 'RDO CentOS-8 - QEMU EV',
:gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Virtualization',
:enabled => '1',
:gpgcheck => '1',
:mirrorlist => 'absent',
:require => 'Anchor[openstack_extras_redhat]',
:notify => 'Exec[yum_refresh]'
)}
end
context 'with overridden release' do
let :params do
default_params.merge!({ :release => 'juno' })
@ -248,6 +269,7 @@ describe 'openstack_extras::repo::redhat::redhat' do
facts.merge!(OSDefaults.get_facts({ :operatingsystem => 'RedHat',
:operatingsystemrelease => '7.1',
:operatingsystemmajrelease => '7',
:os => {'release' => {'major' => '7'}},
:puppetversion => Puppet.version }))
end