Manila: Allow tuning for access creation/deletion polling

This introduces support for a few tuning parameters which controls
polling checks while creating or deleting share access.

Change-Id: I47f98611201882c71ef781ed34cd43b80fffdbc0
This commit is contained in:
Takashi Kajinami 2023-01-05 19:09:48 +09:00
parent a179d50c74
commit c66b61ea95
3 changed files with 71 additions and 25 deletions

View File

@ -24,21 +24,45 @@
# (Optional) Timeout for Manila share deletion.
# Defaults to $::os_service_default
#
# [*access_create_poll_interval*]
# (Optional) Interval between checks when waiting for Manila access creation.
# Defaults to $::os_service_default
#
# [*access_create_timeout*]
# (Optional) Timeout for Manila access creation.
# Defaults to $::os_service_default
#
# [*access_delete_poll_interval*]
# (Optional) Interval between checks when waiting for Manila access deletion.
# Defaults to $::os_service_default
#
# [*access_delete_timeout*]
# (Optional) Timeout for Manila access deletion.
# Defaults to $::os_service_default
#
class rally::settings::manila (
$share_create_poll_interval = $::os_service_default,
$share_create_prepoll_delay = $::os_service_default,
$share_create_timeout = $::os_service_default,
$share_delete_poll_interval = $::os_service_default,
$share_delete_timeout = $::os_service_default,
$share_create_poll_interval = $::os_service_default,
$share_create_prepoll_delay = $::os_service_default,
$share_create_timeout = $::os_service_default,
$share_delete_poll_interval = $::os_service_default,
$share_delete_timeout = $::os_service_default,
$access_create_poll_interval = $::os_service_default,
$access_create_timeout = $::os_service_default,
$access_delete_poll_interval = $::os_service_default,
$access_delete_timeout = $::os_service_default,
) {
include rally::deps
rally_config {
'openstack/manila_share_create_poll_interval': value => $share_create_poll_interval;
'openstack/manila_share_create_prepoll_delay': value => $share_create_prepoll_delay;
'openstack/manila_share_create_timeout': value => $share_create_timeout;
'openstack/manila_share_delete_poll_interval': value => $share_delete_poll_interval;
'openstack/manila_share_delete_timeout': value => $share_delete_timeout;
'openstack/manila_share_create_poll_interval': value => $share_create_poll_interval;
'openstack/manila_share_create_prepoll_delay': value => $share_create_prepoll_delay;
'openstack/manila_share_create_timeout': value => $share_create_timeout;
'openstack/manila_share_delete_poll_interval': value => $share_delete_poll_interval;
'openstack/manila_share_delete_timeout': value => $share_delete_timeout;
'openstack/manila_access_create_poll_interval': value => $access_create_poll_interval;
'openstack/manila_access_create_timeout': value => $access_create_timeout;
'openstack/manila_access_delete_poll_interval': value => $access_delete_poll_interval;
'openstack/manila_access_delete_timeout': value => $access_delete_timeout;
}
}

View File

@ -0,0 +1,10 @@
---
features:
- |
The following parameters have been added to the ``rally::settings::manila``
class.
- ``access_create_poll_interval``
- ``access_create_poll_timeout``
- ``access_delete_poll_interval``
- ``access_delete_poll_timeout``

View File

@ -9,32 +9,44 @@ describe 'rally::settings::manila' do
let :rally_manila_params do
{
:share_create_prepoll_delay => 2.0,
:share_create_timeout => 300.0,
:share_create_poll_interval => 3.0,
:share_delete_timeout => 180.0,
:share_delete_poll_interval => 2.0,
:share_create_prepoll_delay => 2.0,
:share_create_timeout => 300.0,
:share_create_poll_interval => 3.0,
:share_delete_timeout => 180.0,
:share_delete_poll_interval => 2.0,
:access_create_timeout => 300.1,
:access_create_poll_interval => 3.1,
:access_delete_timeout => 180.1,
:access_delete_poll_interval => 2.1,
}
end
shared_examples_for 'with default parameters' do
it 'configures rally manila settings with default parameters' do
is_expected.to contain_rally_config('openstack/manila_share_create_prepoll_delay').with(:value => '<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_create_timeout').with(:value => '<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_create_poll_interval').with(:value => '<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_delete_timeout').with(:value => '<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_delete_poll_interval').with(:value => '<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_create_prepoll_delay').with_value('<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_create_timeout').with_value('<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_create_poll_interval').with_value('<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_delete_timeout').with_value('<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_share_delete_poll_interval').with_value('<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_access_create_timeout').with_value('<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_access_create_poll_interval').with_value('<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_access_delete_timeout').with_value('<SERVICE DEFAULT>')
is_expected.to contain_rally_config('openstack/manila_access_delete_poll_interval').with_value('<SERVICE DEFAULT>')
end
end
shared_examples_for 'with all parameters' do
before { params.merge!( rally_manila_params ) }
it 'configures rally-settings-manila settings with all parameters' do
is_expected.to contain_rally_config('openstack/manila_share_create_prepoll_delay').with(:value => 2.0)
is_expected.to contain_rally_config('openstack/manila_share_create_timeout').with(:value => 300.0)
is_expected.to contain_rally_config('openstack/manila_share_create_poll_interval').with(:value => 3.0)
is_expected.to contain_rally_config('openstack/manila_share_delete_timeout').with(:value => 180.0)
is_expected.to contain_rally_config('openstack/manila_share_delete_poll_interval').with(:value => 2.0)
is_expected.to contain_rally_config('openstack/manila_share_create_prepoll_delay').with_value(2.0)
is_expected.to contain_rally_config('openstack/manila_share_create_timeout').with_value(300.0)
is_expected.to contain_rally_config('openstack/manila_share_create_poll_interval').with_value(3.0)
is_expected.to contain_rally_config('openstack/manila_share_delete_timeout').with_value(180.0)
is_expected.to contain_rally_config('openstack/manila_share_delete_poll_interval').with_value(2.0)
is_expected.to contain_rally_config('openstack/manila_access_create_timeout').with_value(300.1)
is_expected.to contain_rally_config('openstack/manila_access_create_poll_interval').with_value(3.1)
is_expected.to contain_rally_config('openstack/manila_access_delete_timeout').with_value(180.1)
is_expected.to contain_rally_config('openstack/manila_access_delete_poll_interval').with_value(2.1)
end
end