Merge "Select correct novajoin package in CentOS8/Fedora"

This commit is contained in:
Zuul 2020-04-03 02:04:41 +00:00 committed by Gerrit Code Review
commit 806c83f5b4
3 changed files with 26 additions and 14 deletions

View File

@ -127,6 +127,7 @@ class nova::metadata::novajoin::api (
$configure_kerberos = false,
$ipa_realm = undef,
) {
include nova::params
include nova::metadata::novajoin::authtoken
include nova::metadata::novajoin::policy
@ -138,16 +139,9 @@ class nova::metadata::novajoin::api (
fail('service_password is missing')
}
case $::osfamily {
'RedHat': {
$package_name = 'python-novajoin'
$service_name = 'novajoin-server'
$notify_service_name = 'novajoin-notify'
}
default: {
fail("Unsupported osfamily: ${::osfamily} operatingsystem")
}
} # Case $::osfamily
if ! $nova::params::novajoin_package_name {
fail("Unsupported osfamily: ${::osfamily} operatingsystem")
}
if $enable_ipa_client_install {
require ::ipaclient
@ -162,7 +156,7 @@ class nova::metadata::novajoin::api (
package { 'python-novajoin':
ensure => $ensure_package,
name => $package_name,
name => $nova::params::novajoin_package_name,
tag => ['openstack', 'novajoin-package'],
}
@ -227,7 +221,7 @@ class nova::metadata::novajoin::api (
service { 'novajoin-server':
ensure => $service_ensure,
name => $service_name,
name => $nova::params::novajoin_service_name,
enable => $enabled,
hasstatus => true,
hasrestart => true,
@ -236,7 +230,7 @@ class nova::metadata::novajoin::api (
service { 'novajoin-notify':
ensure => $service_ensure,
name => $notify_service_name,
name => $nova::params::notify_service_name,
enable => $enabled,
hasstatus => true,
hasrestart => true,

View File

@ -16,6 +16,7 @@ class nova::params {
$python_package_name = "python${pyvers}-nova"
$compute_package_name = 'openstack-nova-compute'
$conductor_package_name = 'openstack-nova-conductor'
$novajoin_package_name = "python${pyvers}-novajoin"
$doc_package_name = 'openstack-nova-doc'
$libvirt_package_name = 'libvirt'
$libvirt_guests_package_name = 'libvirt-client'
@ -39,6 +40,8 @@ class nova::params {
$virtlog_service_name = undef
$scheduler_service_name = 'openstack-nova-scheduler'
$tgt_service_name = 'tgtd'
$novajoin_service_name = 'novajoin-server'
$notify_service_name = 'novajoin-notify'
$vncproxy_service_name = 'openstack-nova-novncproxy'
$serialproxy_service_name = 'openstack-nova-serialproxy'
$spicehtml5proxy_service_name = 'openstack-nova-spicehtml5proxy'
@ -78,6 +81,7 @@ class nova::params {
$python_package_name = "python${pyvers}-nova"
$compute_package_name = 'nova-compute'
$conductor_package_name = 'nova-conductor'
$novajoin_package_name = undef
$doc_package_name = 'nova-doc'
if ($::operatingsystem == 'Debian') and (versioncmp($::operatingsystemmajrelease, '9') >= 0 ) {
$libvirt_package_name = 'libvirt-daemon-system'
@ -96,6 +100,8 @@ class nova::params {
$vncproxy_service_name = 'nova-novncproxy'
$serialproxy_service_name = 'nova-serialproxy'
$tgt_service_name = 'tgt'
$novajoin_service_name = undef
$notify_service_name = undef
$nova_wsgi_script_path = '/usr/lib/cgi-bin/nova'
$nova_api_wsgi_script_source = '/usr/bin/nova-api-wsgi'
$nova_metadata_wsgi_script_source = '/usr/bin/nova-metadata-wsgi'

View File

@ -176,7 +176,8 @@ describe 'nova::metadata::novajoin::api' do
end
it { should contain_package('python-novajoin').with(
:tag => ['openstack', 'novajoin-package'],
:name => platform_params[:novajoin_package_name],
:tag => ['openstack', 'novajoin-package'],
)}
end
@ -192,6 +193,17 @@ describe 'nova::metadata::novajoin::api' do
if facts[:osfamily] == 'RedHat'
it_behaves_like 'nova::metadata::novajoin::api'
it_behaves_like 'nova::metadata::novajoin::api on RedHat'
let (:platform_params) do
if facts[:operatingsystem] == 'Fedora'
{ :novajoin_package_name => 'python3-novajoin' }
else
if facts[:operatingsystemmajrelease] > '7'
{ :novajoin_package_name => 'python3-novajoin' }
else
{ :novajoin_package_name => 'python-novajoin' }
end
end
end
end
end
end