diff --git a/manifests/api.pp b/manifests/api.pp index a532e84f..93d982a3 100644 --- a/manifests/api.pp +++ b/manifests/api.pp @@ -397,6 +397,13 @@ class glance::api( ) } + if $enabled_import_methods != $::os_service_default { + # This option is a ListOpt that requires explicit brackets. + $enabled_import_methods_real = sprintf('[%s]', join(any2array($enabled_import_methods), ',')) + } else { + $enabled_import_methods_real = $enabled_import_methods + } + # basic service config glance_api_config { 'DEFAULT/bind_host': value => $bind_host; @@ -409,7 +416,7 @@ class glance::api( 'DEFAULT/scrub_time': value => $scrub_time; 'DEFAULT/delayed_delete': value => $delayed_delete; 'DEFAULT/image_cache_dir': value => $image_cache_dir; - 'DEFAULT/enabled_import_methods': value => $enabled_import_methods; + 'DEFAULT/enabled_import_methods': value => $enabled_import_methods_real; 'DEFAULT/node_staging_uri': value => $node_staging_uri; 'DEFAULT/image_member_quota': value => $image_member_quota; 'DEFAULT/enable_v1_api': value => $enable_v1_api; diff --git a/spec/classes/glance_api_spec.rb b/spec/classes/glance_api_spec.rb index 335ef1fc..26cd74f9 100644 --- a/spec/classes/glance_api_spec.rb +++ b/spec/classes/glance_api_spec.rb @@ -132,7 +132,6 @@ describe 'glance::api' do 'delayed_delete', 'scrub_time', 'image_cache_dir', - 'enabled_import_methods', 'node_staging_uri', 'image_member_quota', 'enable_v1_api', @@ -144,6 +143,12 @@ describe 'glance::api' do end end + it 'is_expected.to lay down default enabled_import_methods config' do + # Verify brackets "[]" are added to satisfy the ListOpt syntax. + is_expected.to contain_glance_api_config("DEFAULT/enabled_import_methods").with_value( + "[%s]" % param_hash[:enabled_import_methods]) + end + it 'is_expected.to lay down default cache config' do [ 'registry_host',