Add support for configuring {deploy,rescue}_{kernel,ramdisk}

Change-Id: I1df419a7023600e0bb3d437d1fd0820b2f0f7616
Depends-On: https://review.opendev.org/#/c/672989/
This commit is contained in:
Dmitry Tantsur 2019-08-09 09:36:55 +02:00
parent eb9f7146f3
commit e9220c8ee3
3 changed files with 38 additions and 0 deletions

View File

@ -167,6 +167,22 @@
# manage nodes with a matching "conductor_group" field set on the node.
# Defaults to $::os_service_default
#
# [*deploy_kernel*]
# (optional) Glance UUID or URL of a deploy kernel to use by default.
# Defaults to $::os_service_default
#
# [*deploy_ramdisk*]
# (optional) Glance UUID or URL of a deploy ramdisk to use by default.
# Defaults to $::os_service_default
#
# [*rescue_kernel*]
# (optional) Glance UUID or URL of a rescue kernel to use by default.
# Defaults to $::os_service_default
#
# [*rescue_ramdisk*]
# (optional) Glance UUID or URL of a rescue ramdisk to use by default.
# Defaults to $::os_service_default
#
# DEPRECATED PARAMETERS
#
# [*enabled_drivers*]
@ -204,6 +220,10 @@ class ironic::conductor (
$power_state_sync_max_retries = $::os_service_default,
$power_failure_recovery_interval = $::os_service_default,
$conductor_group = $::os_service_default,
$deploy_kernel = $::os_service_default,
$deploy_ramdisk = $::os_service_default,
$rescue_kernel = $::os_service_default,
$rescue_ramdisk = $::os_service_default,
$enabled_drivers = undef,
) {
@ -292,6 +312,10 @@ class ironic::conductor (
'conductor/power_state_sync_max_retries': value => $power_state_sync_max_retries;
'conductor/power_failure_recovery_interval': value => $power_failure_recovery_interval;
'conductor/conductor_group': value => $conductor_group;
'conductor/deploy_kernel': value => $deploy_kernel;
'conductor/deploy_ramdisk': value => $deploy_ramdisk;
'conductor/rescue_kernel': value => $rescue_kernel;
'conductor/rescue_ramdisk': value => $rescue_ramdisk;
}
if $cleaning_network_name {

View File

@ -0,0 +1,6 @@
---
features:
- |
Allows configuring the default deploy and rescue kernel/ramdisk via the
new parameters ``deploy_kernel``, ``deploy_ramdisk``, ``rescue_kernel`` and
``rescue_ramdisk`` in the ``ironic::conductor`` manifest.

View File

@ -114,6 +114,10 @@ describe 'ironic::conductor' do
:power_state_sync_max_retries => 5,
:power_failure_recovery_interval => 120,
:conductor_group => 'in-the-closet-to-the-left',
:deploy_kernel => 'http://host/deploy.kernel',
:deploy_ramdisk => 'http://host/deploy.ramdisk',
:rescue_kernel => 'http://host/rescue.kernel',
:rescue_ramdisk => 'http://host/rescue.ramdisk',
)
end
it 'should replace default parameter with new value' do
@ -141,6 +145,10 @@ describe 'ironic::conductor' do
is_expected.to contain_ironic_config('conductor/power_state_sync_max_retries').with_value(p[:power_state_sync_max_retries])
is_expected.to contain_ironic_config('conductor/power_failure_recovery_interval').with_value(p[:power_failure_recovery_interval])
is_expected.to contain_ironic_config('conductor/conductor_group').with_value(p[:conductor_group])
is_expected.to contain_ironic_config('conductor/deploy_kernel').with_value(p[:deploy_kernel])
is_expected.to contain_ironic_config('conductor/deploy_ramdisk').with_value(p[:deploy_ramdisk])
is_expected.to contain_ironic_config('conductor/rescue_kernel').with_value(p[:rescue_kernel])
is_expected.to contain_ironic_config('conductor/rescue_ramdisk').with_value(p[:rescue_ramdisk])
end
end