From 5e3521bcb1207a6e713ff2e9adabc6fa21d5d274 Mon Sep 17 00:00:00 2001 From: Arnaud Morin Date: Mon, 7 Oct 2019 11:57:52 +0200 Subject: [PATCH] B (cherry picked from commit 372c1558005515eee58e9e49c590b5faa4962127) --- libvirt.pp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/libvirt.pp b/libvirt.pp index 3f51fe3..261b258 100644 --- a/libvirt.pp +++ b/libvirt.pp @@ -33,6 +33,12 @@ # cpu_mode="custom" and virt_type="kvm|qemu". # Defaults to undef # +# [*libvirt_cpu_model_extra_flags*] +# (optional) This allows specifying granular CPU feature flags when +# specifying CPU models. Only valid, if cpu_mode and cpu_model +# attributes are specified and only if cpu_mode="custom". +# Defaults to undef +# # [*libvirt_snapshot_image_format*] # (optional) Format to save snapshots to. Some filesystems # have a preference and only operate on raw or qcow2 @@ -138,6 +144,7 @@ class nova::compute::libvirt ( $migration_support = false, $libvirt_cpu_mode = false, $libvirt_cpu_model = undef, + $libvirt_cpu_model_extra_flags = undef, $libvirt_snapshot_image_format = $::os_service_default, $libvirt_disk_cachemodes = [], $libvirt_hw_disk_discard = $::os_service_default, @@ -235,14 +242,20 @@ class nova::compute::libvirt ( validate_string($libvirt_cpu_model) nova_config { 'libvirt/cpu_model': value => $libvirt_cpu_model; + 'libvirt/cpu_model_extra_flags': value => $libvirt_cpu_model_extra_flags; } } else { nova_config { 'libvirt/cpu_model': ensure => absent; + 'libvirt/cpu_model_extra_flags': ensure => absent; } if $libvirt_cpu_model { warning('$libvirt_cpu_model requires that $libvirt_cpu_mode => "custom" and will be ignored') } + + if $libvirt_cpu_model_extra_flags { + warning('$libvirt_cpu_model_extra_flags requires that $libvirt_cpu_mode => "custom" and will be ignored') + } } if size($libvirt_disk_cachemodes) > 0 {