From 2936eb233e0310c0788a3c8ed05c42af388dc6e2 Mon Sep 17 00:00:00 2001 From: PranaliD Date: Tue, 2 Feb 2021 07:20:27 -0500 Subject: [PATCH] Add config parameter for cinder mounting needs This patch is introducing cinder_mount_point_base parameter into glance::backend::multistore::cinder class, so that operators can provide the cinder mount point for NFS volumes. Change-Id: Ib724f6e895716847827be48ed08b01a7a312338f (cherry picked from commit 46e9319d8e012d2df6b7d8f85f59315db6e95ff2) (cherry picked from commit 11bd956b9b6ae6e09547bfe14ac02af4ade573ce) (cherry picked from commit 1bd1615234f261e2df8cda04fd6581230b758e6b) --- manifests/backend/multistore/cinder.pp | 8 ++++++++ ..._backend_cinder_mount_point_base-5741d2966cc10c7b.yaml | 6 ++++++ spec/defines/glance_backend_multistore_cinder_spec.rb | 5 +++++ 3 files changed, 19 insertions(+) create mode 100644 releasenotes/notes/glance_backend_cinder_mount_point_base-5741d2966cc10c7b.yaml diff --git a/manifests/backend/multistore/cinder.pp b/manifests/backend/multistore/cinder.pp index 5cc27581..2988eaf4 100644 --- a/manifests/backend/multistore/cinder.pp +++ b/manifests/backend/multistore/cinder.pp @@ -66,6 +66,11 @@ # (optional) A valid password for the user specified by `cinder_store_user_name' # Defaults to $::os_service_default. # +# [*cinder_mount_point_base*] +# (Optional) When glance uses cinder as store and cinder backend is NFS, the mount point +# would be required to be set with this parameter. +# Defaults to $::os_service_default. +# # [*store_description*] # (optional) Provides constructive information about the store backend to # end users. @@ -81,6 +86,7 @@ define glance::backend::multistore::cinder( $cinder_store_project_name = $::os_service_default, $cinder_store_user_name = $::os_service_default, $cinder_store_password = $::os_service_default, + $cinder_mount_point_base = $::os_service_default, $store_description = $::os_service_default, ) { @@ -96,6 +102,7 @@ define glance::backend::multistore::cinder( "${name}/cinder_store_project_name": value => $cinder_store_project_name; "${name}/cinder_store_user_name": value => $cinder_store_user_name; "${name}/cinder_store_password": value => $cinder_store_password; + "${name}/cinder_mount_point_base": value => $cinder_mount_point_base; "${name}/store_description": value => $store_description; } @@ -108,6 +115,7 @@ define glance::backend::multistore::cinder( "${name}/cinder_store_auth_address": value => $cinder_store_auth_address; "${name}/cinder_store_project_name": value => $cinder_store_project_name; "${name}/cinder_store_user_name": value => $cinder_store_user_name; + "${name}/cinder_mount_point_base": value => $cinder_mount_point_base; "${name}/cinder_store_password": value => $cinder_store_password; } diff --git a/releasenotes/notes/glance_backend_cinder_mount_point_base-5741d2966cc10c7b.yaml b/releasenotes/notes/glance_backend_cinder_mount_point_base-5741d2966cc10c7b.yaml new file mode 100644 index 00000000..77add832 --- /dev/null +++ b/releasenotes/notes/glance_backend_cinder_mount_point_base-5741d2966cc10c7b.yaml @@ -0,0 +1,6 @@ +--- +features: + - | + A new parameter ``cinder_mount_point_base`` is introduced into + ``glance::backend::multistore::cinder`` class, so that operators + can provide the cinder mount point for NFS volumes. \ No newline at end of file diff --git a/spec/defines/glance_backend_multistore_cinder_spec.rb b/spec/defines/glance_backend_multistore_cinder_spec.rb index 2cba7f7c..e05f4a81 100644 --- a/spec/defines/glance_backend_multistore_cinder_spec.rb +++ b/spec/defines/glance_backend_multistore_cinder_spec.rb @@ -40,6 +40,7 @@ describe 'glance::backend::multistore::cinder' do is_expected.to contain_glance_api_config('cinder/cinder_store_project_name').with_value('') is_expected.to contain_glance_api_config('cinder/cinder_store_user_name').with_value('') is_expected.to contain_glance_api_config('cinder/cinder_store_password').with_value('') + is_expected.to contain_glance_api_config('cinder/cinder_mount_point_base').with_value('') end it 'configures glance-cache.conf' do is_expected.to_not contain_glance_cache_config('cinder/store_description') @@ -52,6 +53,7 @@ describe 'glance::backend::multistore::cinder' do is_expected.to contain_glance_cache_config('cinder/cinder_store_project_name').with_value('') is_expected.to contain_glance_cache_config('cinder/cinder_store_user_name').with_value('') is_expected.to contain_glance_cache_config('cinder/cinder_store_password').with_value('') + is_expected.to contain_glance_cache_config('cinder/cinder_mount_point_base').with_value('') end end @@ -68,6 +70,7 @@ describe 'glance::backend::multistore::cinder' do :cinder_store_project_name => 'services', :cinder_store_user_name => 'glance', :cinder_store_password => 'glance', + :cinder_mount_point_base => '/var/lib/glance/mnt', } end it 'configures glance-api.conf' do @@ -81,6 +84,7 @@ describe 'glance::backend::multistore::cinder' do is_expected.to contain_glance_api_config('cinder/cinder_store_project_name').with_value('services') is_expected.to contain_glance_api_config('cinder/cinder_store_user_name').with_value('glance') is_expected.to contain_glance_api_config('cinder/cinder_store_password').with_value('glance') + is_expected.to contain_glance_api_config('cinder/cinder_mount_point_base').with_value('/var/lib/glance/mnt') end it 'configures glance-cache.conf' do is_expected.to_not contain_glance_cache_config('cinder/store_description') @@ -93,6 +97,7 @@ describe 'glance::backend::multistore::cinder' do is_expected.to contain_glance_cache_config('cinder/cinder_store_project_name').with_value('services') is_expected.to contain_glance_cache_config('cinder/cinder_store_user_name').with_value('glance') is_expected.to contain_glance_cache_config('cinder/cinder_store_password').with_value('glance') + is_expected.to contain_glance_cache_config('cinder/cinder_mount_point_base').with_value('/var/lib/glance/mnt') end end end