Add skip CPU compare to nova::workarounds

This adds the skip_cpu_compare_on_dest and
skip_cpu_compare_at_startup parameter to the
nova::workarounds class.

Change-Id: I7997067800f0e1f6563e164f8c02a15680b3aa9b
This commit is contained in:
Tobias Urdin
2025-02-05 16:07:08 +01:00
parent ce75634aeb
commit d24ca46009
3 changed files with 29 additions and 0 deletions

View File

@@ -48,6 +48,18 @@
# hypervisors during live migration. # hypervisors during live migration.
# Defaults to $facts['os_service_default'] # Defaults to $facts['os_service_default']
# #
# [*skip_cpu_compare_on_dest*]
# (Optional) With the libvirt driver, during live migration, skip comparing guest CPU
# with the destination host. When using QEMU >= 2.9 and libvirt >=
# 4.4.0, libvirt will do the correct thing with respect to checking CPU
# compatibility on the destination host during live migration.
# Defaults to $facts['os_service_default']
#
# [*skip_cpu_compare_at_startup*]
# (Optional) This will skip the CPU comparison call at the startup of Compute
# service and lets libvirt handle it.
# Defaults to $facts['os_service_default']
#
# DEPRECATED # DEPRECATED
# #
# [*enable_numa_live_migration*] # [*enable_numa_live_migration*]
@@ -63,6 +75,8 @@ class nova::workarounds (
$wait_for_vif_plugged_event_during_hard_reboot = $facts['os_service_default'], $wait_for_vif_plugged_event_during_hard_reboot = $facts['os_service_default'],
$disable_compute_service_check_for_ffu = $facts['os_service_default'], $disable_compute_service_check_for_ffu = $facts['os_service_default'],
$skip_hypervisor_version_check_on_lm = $facts['os_service_default'], $skip_hypervisor_version_check_on_lm = $facts['os_service_default'],
$skip_cpu_compare_on_dest = $facts['os_service_default'],
$skip_cpu_compare_at_startup = $facts['os_service_default'],
# DEPRECATED PARAMETER # DEPRECATED PARAMETER
$enable_numa_live_migration = undef, $enable_numa_live_migration = undef,
) { ) {
@@ -91,6 +105,10 @@ class nova::workarounds (
value => $disable_compute_service_check_for_ffu; value => $disable_compute_service_check_for_ffu;
'workarounds/skip_hypervisor_version_check_on_lm': 'workarounds/skip_hypervisor_version_check_on_lm':
value => $skip_hypervisor_version_check_on_lm; value => $skip_hypervisor_version_check_on_lm;
'workarounds/skip_cpu_compare_on_dest':
value => $skip_cpu_compare_on_dest;
'workarounds/skip_cpu_compare_at_startup':
value => $skip_cpu_compare_at_startup;
} }
} }

View File

@@ -0,0 +1,5 @@
---
features:
- |
Added parameters ``skip_cpu_compare_on_dest`` and ``skip_cpu_compare_at_startup``
to the ``nova::workarounds`` class.

View File

@@ -18,6 +18,8 @@ describe 'nova::workarounds' do
it { is_expected.to contain_nova_config('workarounds/wait_for_vif_plugged_event_during_hard_reboot').with_value('<SERVICE DEFAULT>') } it { is_expected.to contain_nova_config('workarounds/wait_for_vif_plugged_event_during_hard_reboot').with_value('<SERVICE DEFAULT>') }
it { is_expected.to contain_nova_config('workarounds/disable_compute_service_check_for_ffu').with_value('<SERVICE DEFAULT>') } it { is_expected.to contain_nova_config('workarounds/disable_compute_service_check_for_ffu').with_value('<SERVICE DEFAULT>') }
it { is_expected.to contain_nova_config('workarounds/skip_hypervisor_version_check_on_lm').with_value('<SERVICE DEFAULT>') } it { is_expected.to contain_nova_config('workarounds/skip_hypervisor_version_check_on_lm').with_value('<SERVICE DEFAULT>') }
it { is_expected.to contain_nova_config('workarounds/skip_cpu_compare_on_dest').with_value('<SERVICE DEFAULT>') }
it { is_expected.to contain_nova_config('workarounds/skip_cpu_compare_at_startup').with_value('<SERVICE DEFAULT>') }
end end
context 'with overridden parameters' do context 'with overridden parameters' do
@@ -32,6 +34,8 @@ describe 'nova::workarounds' do
:wait_for_vif_plugged_event_during_hard_reboot => ['normal', 'direct'], :wait_for_vif_plugged_event_during_hard_reboot => ['normal', 'direct'],
:disable_compute_service_check_for_ffu => true, :disable_compute_service_check_for_ffu => true,
:skip_hypervisor_version_check_on_lm => true, :skip_hypervisor_version_check_on_lm => true,
:skip_cpu_compare_on_dest => true,
:skip_cpu_compare_at_startup => true,
} }
end end
@@ -44,6 +48,8 @@ describe 'nova::workarounds' do
it { is_expected.to contain_nova_config('workarounds/wait_for_vif_plugged_event_during_hard_reboot').with_value('normal,direct') } it { is_expected.to contain_nova_config('workarounds/wait_for_vif_plugged_event_during_hard_reboot').with_value('normal,direct') }
it { is_expected.to contain_nova_config('workarounds/disable_compute_service_check_for_ffu').with_value(true) } it { is_expected.to contain_nova_config('workarounds/disable_compute_service_check_for_ffu').with_value(true) }
it { is_expected.to contain_nova_config('workarounds/skip_hypervisor_version_check_on_lm').with_value(true) } it { is_expected.to contain_nova_config('workarounds/skip_hypervisor_version_check_on_lm').with_value(true) }
it { is_expected.to contain_nova_config('workarounds/skip_cpu_compare_on_dest').with_value(true) }
it { is_expected.to contain_nova_config('workarounds/skip_cpu_compare_at_startup').with_value(true) }
end end
end end