rbd: Support rbd_concurrent_flatten_operations option

... which was added during this cycle.

Depends-on: https://review.opendev.org/c/openstack/cinder/+/835384
Change-Id: I93b6b81aa5e96ba1ffc98837ae6b6e72ca5e8970
This commit is contained in:
Takashi Kajinami 2024-01-16 10:58:07 +09:00
parent bfa6540457
commit 03f100c350
3 changed files with 71 additions and 56 deletions

View File

@ -91,6 +91,11 @@
# volumes tagged for deletion. # volumes tagged for deletion.
# Defaults to $facts['os_service_default'] # Defaults to $facts['os_service_default']
# #
# [*rbd_concurrent_flatten_operations*]
# (optional) Number of flatten operations that will run concurrently on
# this volume service.
# Defaults to $facts['os_service_default']
#
# [*manage_volume_type*] # [*manage_volume_type*]
# (Optional) Whether or not manage Cinder Volume type. # (Optional) Whether or not manage Cinder Volume type.
# If set to true, a Cinder Volume type will be created # If set to true, a Cinder Volume type will be created
@ -123,6 +128,7 @@ define cinder::backend::rbd (
$enable_deferred_deletion = $facts['os_service_default'], $enable_deferred_deletion = $facts['os_service_default'],
$deferred_deletion_delay = $facts['os_service_default'], $deferred_deletion_delay = $facts['os_service_default'],
$deferred_deletion_purge_interval = $facts['os_service_default'], $deferred_deletion_purge_interval = $facts['os_service_default'],
$rbd_concurrent_flatten_operations = $facts['os_service_default'],
Boolean $manage_volume_type = false, Boolean $manage_volume_type = false,
Hash $extra_options = {}, Hash $extra_options = {},
) { ) {
@ -159,6 +165,7 @@ define cinder::backend::rbd (
"${name}/enable_deferred_deletion": value => $enable_deferred_deletion; "${name}/enable_deferred_deletion": value => $enable_deferred_deletion;
"${name}/deferred_deletion_delay": value => $deferred_deletion_delay; "${name}/deferred_deletion_delay": value => $deferred_deletion_delay;
"${name}/deferred_deletion_purge_interval": value => $deferred_deletion_purge_interval; "${name}/deferred_deletion_purge_interval": value => $deferred_deletion_purge_interval;
"${name}/rbd_concurrent_flatten_operations": value => $rbd_concurrent_flatten_operations;
"${name}/report_discard_supported": value => true; "${name}/report_discard_supported": value => true;
} }

View File

@ -0,0 +1,5 @@
---
features:
- |
The new ``cinder::backends::rbd::rbd_concurrent_flatten_operations`` option
has been added.

View File

@ -41,6 +41,7 @@ describe 'cinder::backend::rbd' do
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/enable_deferred_deletion").with_value('<SERVICE DEFAULT>') is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/enable_deferred_deletion").with_value('<SERVICE DEFAULT>')
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/deferred_deletion_delay").with_value('<SERVICE DEFAULT>') is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/deferred_deletion_delay").with_value('<SERVICE DEFAULT>')
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/deferred_deletion_purge_interval").with_value('<SERVICE DEFAULT>') is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/deferred_deletion_purge_interval").with_value('<SERVICE DEFAULT>')
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/rbd_concurrent_flatten_operations").with_value('<SERVICE DEFAULT>')
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/report_discard_supported").with_value(true) is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/report_discard_supported").with_value(true)
} }
@ -63,6 +64,7 @@ describe 'cinder::backend::rbd' do
:enable_deferred_deletion => false, :enable_deferred_deletion => false,
:deferred_deletion_delay => 0, :deferred_deletion_delay => 0,
:deferred_deletion_purge_interval => 60, :deferred_deletion_purge_interval => 60,
:rbd_concurrent_flatten_operations => 3,
}) })
end end
@ -88,6 +90,7 @@ describe 'cinder::backend::rbd' do
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/enable_deferred_deletion").with_value(params[:enable_deferred_deletion]) is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/enable_deferred_deletion").with_value(params[:enable_deferred_deletion])
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/deferred_deletion_delay").with_value(params[:deferred_deletion_delay]) is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/deferred_deletion_delay").with_value(params[:deferred_deletion_delay])
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/deferred_deletion_purge_interval").with_value(params[:deferred_deletion_purge_interval]) is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/deferred_deletion_purge_interval").with_value(params[:deferred_deletion_purge_interval])
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/rbd_concurrent_flatten_operations").with_value(params[:rbd_concurrent_flatten_operations])
is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/report_discard_supported").with_value(true) is_expected.to contain_cinder_config("#{req_params[:volume_backend_name]}/report_discard_supported").with_value(true)
} }
end end