From d2aaab3683019a40bb8495f71c530657e198447b Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Sun, 25 Apr 2021 22:17:49 +0900 Subject: [PATCH] Centralize arbitrary configurations for libvirt daemons This is a prep work to add support for separate libvirt daemons and merge libvirt::config class and libvirtd::virtlogd::config class, so that we can put arbitary configurations to the single config class later. Change-Id: I21357822ae6113e484e94c6e6ab03976f40604eb --- manifests/compute/libvirt/config.pp | 11 ++++++++++- manifests/compute/libvirt/virtlogd/config.pp | 6 +++++- .../notes/virtlogd_config-1bcf0201932c2cb2.yaml | 10 ++++++++++ 3 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 releasenotes/notes/virtlogd_config-1bcf0201932c2cb2.yaml diff --git a/manifests/compute/libvirt/config.pp b/manifests/compute/libvirt/config.pp index ca1df3333..0726cef71 100644 --- a/manifests/compute/libvirt/config.pp +++ b/manifests/compute/libvirt/config.pp @@ -17,14 +17,23 @@ # bar: # value: barValue # +# [*virtlogd_config*] +# (optional) Allow configuration of arbitrary virtlogd configurations. +# The value is an hash of virtlogd_config resources. +# # NOTE: The configuration MUST NOT be already handled by this module # or Puppet catalog compilation will fail with duplicate resources. # class nova::compute::libvirt::config ( - $libvirtd_config = {}, + $libvirtd_config = {}, + $virtlogd_config = {}, ) { + include nova::deps + validate_legacy(Hash, 'validate_hash', $libvirtd_config) + validate_legacy(Hash, 'validate_hash', $virtlogd_config) create_resources('libvirtd_config', $libvirtd_config) + create_resources('virtlogd_config', $virtlogd_config) } diff --git a/manifests/compute/libvirt/virtlogd/config.pp b/manifests/compute/libvirt/virtlogd/config.pp index 1e5af60e5..80efb9ae6 100644 --- a/manifests/compute/libvirt/virtlogd/config.pp +++ b/manifests/compute/libvirt/virtlogd/config.pp @@ -1,11 +1,12 @@ # == Class: nova::compute::libvirt::virtlogd::config # +# DEPRECATED ! # This class is used to manage arbitrary virtlogd configurations. # # === Parameters # # [*virtlogd_config*] -# (optional) Allow configuration of arbitrary libvirtd configurations. +# (optional) Allow configuration of arbitrary virtlogd configurations. # The value is an hash of virtlogd_config resources. Example: # { 'foo' => { value => 'fooValue'}, # 'bar' => { value => 'barValue'} @@ -24,6 +25,9 @@ class nova::compute::libvirt::virtlogd::config ( $virtlogd_config = {}, ) { + warning('The nova::compute::libvirt::virtlogd::config class has been deprecated. \ +Use the nova::compute::libvirt::config::virtlogd_config parameter.') + validate_legacy(Hash, 'validate_hash', $virtlogd_config) create_resources('virtlogd_config', $virtlogd_config) diff --git a/releasenotes/notes/virtlogd_config-1bcf0201932c2cb2.yaml b/releasenotes/notes/virtlogd_config-1bcf0201932c2cb2.yaml new file mode 100644 index 000000000..4cf6f27a0 --- /dev/null +++ b/releasenotes/notes/virtlogd_config-1bcf0201932c2cb2.yaml @@ -0,0 +1,10 @@ +--- +features: + - | + The new ``nova::compute::libvirt::virtlogd_config`` parameter has been + added. + +deprecations: + - | + The ``nova::compute::libvirt::virtlogd::config`` class has been deprecated + in favor of ``nova::compute::libvirt::virtlogd_config``.