vmware: Fix the wrong package installed

All common implementation for vmware has been split out to
the oslo.vmware library, which is currently an optional dependency.
We have to make sure this library is installed so that vmware driver
is functional.

Also, python(3)-suds is required by python(3)-oslo-vmware so we don't
have to explicitly installs this library.

Additionally this fixes the wrong indent in the spec file.

Closes-Bug: #2011828
Change-Id: Ica93dd5127e6330e0d5a65738ca68c43e8be3058
This commit is contained in:
Takashi Kajinami
2023-03-16 20:26:05 +09:00
parent d9240327d4
commit 160ae675a4
3 changed files with 25 additions and 19 deletions

View File

@@ -74,6 +74,7 @@ class nova::compute::vmware(
) {
include nova::deps
include nova::params
nova_config {
'DEFAULT/compute_driver': value => $compute_driver;
@@ -90,8 +91,9 @@ class nova::compute::vmware(
'vmware/datastore_regex': value => $datastore_regex;
}
package { 'python-suds':
package { 'python-oslo-vmware':
ensure => present,
name => $::nova::params::oslo_vmware_package_name,
tag => ['openstack', 'nova-support-package'],
}
}

View File

@@ -32,6 +32,9 @@ class nova::params {
$serialproxy_package_name = 'openstack-nova-serialproxy'
$spicehtml5proxy_package_name = 'openstack-nova-console'
$ceph_client_package_name = 'ceph-common'
$oslo_vmware_package_name = 'python3-oslo-vmware'
$mkisofs_package_name = 'xorriso'
$mkisofs_cmd = 'mkisofs'
# service names
$api_service_name = 'openstack-nova-api'
$api_metadata_service_name = undef
@@ -59,8 +62,6 @@ class nova::params {
$nova_api_wsgi_script_source = '/usr/bin/nova-api-wsgi'
$nova_metadata_wsgi_script_source = '/usr/bin/nova-metadata-wsgi'
$messagebus_service_name = 'dbus'
$mkisofs_package_name = 'xorriso'
$mkisofs_cmd = 'mkisofs'
}
'Debian': {
# package names
@@ -74,6 +75,7 @@ class nova::params {
$scheduler_package_name = 'nova-scheduler'
$tgt_package_name = 'tgt'
$ceph_client_package_name = 'ceph-common'
$oslo_vmware_package_name = 'python3-oslo-vmware'
$mkisofs_package_name = 'genisoimage'
$mkisofs_cmd = false
# service names

View File

@@ -41,27 +41,29 @@ describe 'nova::compute::vmware' do
is_expected.to contain_nova_config('vmware/datastore_regex').with_value('<SERVICE DEFAULT>')
end
it 'installs suds python package' do
is_expected.to contain_package('python-suds').with(
:ensure => 'present'
it 'installs oslo.vmware python package' do
is_expected.to contain_package('python-oslo-vmware').with(
:ensure => 'present',
:name => 'python3-oslo-vmware',
:tag => ['openstack', 'nova-support-package'],
)
end
end
end
context 'with optional parameters' do
before :each do
params.merge!(optional_params)
end
context 'with optional parameters' do
before :each do
params.merge!(optional_params)
end
it 'configures vmwareapi in nova.conf' do
is_expected.to contain_nova_config('DEFAULT/compute_driver').with_value(params[:compute_driver])
is_expected.to contain_nova_config('vmware/api_retry_count').with_value(params[:api_retry_count])
is_expected.to contain_nova_config('vmware/maximum_objects').with_value(params[:maximum_objects])
is_expected.to contain_nova_config('vmware/task_poll_interval').with_value(params[:task_poll_interval])
is_expected.to contain_nova_config('vmware/use_linked_clone').with_value(params[:use_linked_clone])
is_expected.to contain_nova_config('vmware/insecure').with_value(params[:insecure])
is_expected.to contain_nova_config('vmware/datastore_regex').with_value(params[:datastore_regex])
it 'configures vmwareapi in nova.conf' do
is_expected.to contain_nova_config('DEFAULT/compute_driver').with_value(params[:compute_driver])
is_expected.to contain_nova_config('vmware/api_retry_count').with_value(params[:api_retry_count])
is_expected.to contain_nova_config('vmware/maximum_objects').with_value(params[:maximum_objects])
is_expected.to contain_nova_config('vmware/task_poll_interval').with_value(params[:task_poll_interval])
is_expected.to contain_nova_config('vmware/use_linked_clone').with_value(params[:use_linked_clone])
is_expected.to contain_nova_config('vmware/insecure').with_value(params[:insecure])
is_expected.to contain_nova_config('vmware/datastore_regex').with_value(params[:datastore_regex])
end
end
end