From e9220c8ee330905e12a079edb45411952ff21125 Mon Sep 17 00:00:00 2001 From: Dmitry Tantsur Date: Fri, 9 Aug 2019 09:36:55 +0200 Subject: [PATCH] Add support for configuring {deploy,rescue}_{kernel,ramdisk} Change-Id: I1df419a7023600e0bb3d437d1fd0820b2f0f7616 Depends-On: https://review.opendev.org/#/c/672989/ --- manifests/conductor.pp | 24 +++++++++++++++++++ .../notes/deploy-kernel-13b2318ae0f2b8bb.yaml | 6 +++++ spec/classes/ironic_conductor_spec.rb | 8 +++++++ 3 files changed, 38 insertions(+) create mode 100644 releasenotes/notes/deploy-kernel-13b2318ae0f2b8bb.yaml diff --git a/manifests/conductor.pp b/manifests/conductor.pp index 87c27c86..820b7263 100644 --- a/manifests/conductor.pp +++ b/manifests/conductor.pp @@ -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 { diff --git a/releasenotes/notes/deploy-kernel-13b2318ae0f2b8bb.yaml b/releasenotes/notes/deploy-kernel-13b2318ae0f2b8bb.yaml new file mode 100644 index 00000000..7b20210f --- /dev/null +++ b/releasenotes/notes/deploy-kernel-13b2318ae0f2b8bb.yaml @@ -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. diff --git a/spec/classes/ironic_conductor_spec.rb b/spec/classes/ironic_conductor_spec.rb index 2f75ce29..eafcccf2 100644 --- a/spec/classes/ironic_conductor_spec.rb +++ b/spec/classes/ironic_conductor_spec.rb @@ -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