diff --git a/manifests/conductor.pp b/manifests/conductor.pp index 3e210489..c8f667ea 100644 --- a/manifests/conductor.pp +++ b/manifests/conductor.pp @@ -108,6 +108,12 @@ # requested. One of "netboot" or "local". # Defaults to $::os_service_default # +# [*default_boot_mode*] +# (optional) Default boot mode to use when no boot mode is explicitly +# requested in node's driver_info, capabilities or in the "instance_info" +# configuration.requested. One of "bios" or "uefi". +# Defaults to $::os_service_default +# # [*cleaning_network_name*] # (optional) If provided the name will be converted to UUID and set # as value of neutron/cleaning_network option in ironic.conf @@ -183,6 +189,7 @@ class ironic::conductor ( $configdrive_swift_container = $::os_service_default, $inspect_timeout = $::os_service_default, $default_boot_option = $::os_service_default, + $default_boot_mode = $::os_service_default, $port_setup_delay = $::os_service_default, $cleaning_network_name = undef, $provisioning_network_name = undef, @@ -271,6 +278,7 @@ class ironic::conductor ( 'conductor/configdrive_swift_container': value => $configdrive_swift_container; 'conductor/inspect_timeout': value => $inspect_timeout; 'deploy/default_boot_option': value => $default_boot_option; + 'deploy/default_boot_mode': value => $default_boot_mode; 'neutron/port_setup_delay': value => $port_setup_delay; 'conductor/power_state_change_timeout': value => $power_state_change_timeout; 'conductor/sync_power_state_interval': value => $sync_power_state_interval; diff --git a/releasenotes/notes/default-boot-mode-1dc27454b02a56e5.yaml b/releasenotes/notes/default-boot-mode-1dc27454b02a56e5.yaml new file mode 100644 index 00000000..619df249 --- /dev/null +++ b/releasenotes/notes/default-boot-mode-1dc27454b02a56e5.yaml @@ -0,0 +1,6 @@ +--- +features: + - | + Adds new parameter ``ironic::conductor::default_boot_mode`` to specify + the default boot mode ("bios" or "uefi") to use when no boot mode is + required explicitly. diff --git a/spec/classes/ironic_conductor_spec.rb b/spec/classes/ironic_conductor_spec.rb index ad53a220..37408833 100644 --- a/spec/classes/ironic_conductor_spec.rb +++ b/spec/classes/ironic_conductor_spec.rb @@ -78,6 +78,7 @@ describe 'ironic::conductor' do is_expected.to contain_ironic_config('conductor/configdrive_swift_container').with(:value => '') is_expected.to contain_ironic_config('conductor/inspect_timeout').with(:value => '') is_expected.to contain_ironic_config('deploy/default_boot_option').with(:value => '') + is_expected.to contain_ironic_config('deploy/default_boot_mode').with(:value => '') is_expected.to contain_ironic_config('neutron/port_setup_delay').with(:value => '') is_expected.to contain_ironic_config('conductor/power_state_change_timeout').with(:value => '') is_expected.to contain_ironic_config('conductor/sync_power_state_interval').with(:value => '') @@ -103,6 +104,7 @@ describe 'ironic::conductor' do :configdrive_use_swift => true, :configdrive_swift_container => 'cont', :default_boot_option => 'local', + :default_boot_mode => 'uefi', :port_setup_delay => '15', :power_state_change_timeout => '300', :sync_power_state_interval => 120, @@ -127,6 +129,7 @@ describe 'ironic::conductor' do is_expected.to contain_ironic_config('conductor/configdrive_use_swift').with_value(p[:configdrive_use_swift]) is_expected.to contain_ironic_config('conductor/configdrive_swift_container').with_value(p[:configdrive_swift_container]) is_expected.to contain_ironic_config('deploy/default_boot_option').with_value(p[:default_boot_option]) + is_expected.to contain_ironic_config('deploy/default_boot_mode').with_value(p[:default_boot_mode]) is_expected.to contain_ironic_config('neutron/port_setup_delay').with_value(p[:port_setup_delay]) is_expected.to contain_ironic_config('conductor/power_state_change_timeout').with_value(p[:power_state_change_timeout]) is_expected.to contain_ironic_config('conductor/sync_power_state_interval').with_value(p[:sync_power_state_interval])