From bba8c78ed8e9929e4106455b1cf14c70dc5197de Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Mon, 15 Nov 2021 10:34:52 +0900 Subject: [PATCH] Allow customizing state of the python-ceph package Change-Id: I1fbf6aeb01c553045a0e6dd4f29c0fbbe1dd51a7 --- manifests/storage/ceph.pp | 7 ++++++- ...storage-ceph-package_ensure-36b77ea422e5c628.yaml | 5 +++++ spec/classes/gnocchi_storage_ceph_spec.rb | 12 ++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/storage-ceph-package_ensure-36b77ea422e5c628.yaml diff --git a/manifests/storage/ceph.pp b/manifests/storage/ceph.pp index ad795cbb..ea9792c5 100644 --- a/manifests/storage/ceph.pp +++ b/manifests/storage/ceph.pp @@ -44,6 +44,10 @@ # (optional) Ensure state of the rados python package. # Defaults to true. # +# [*package_ensure*] +# (optional) ensure state for package. +# Defaults to 'present' +# class gnocchi::storage::ceph( $ceph_username, $ceph_keyring = $::os_service_default, @@ -51,6 +55,7 @@ class gnocchi::storage::ceph( $ceph_pool = 'gnocchi', $ceph_conffile = '/etc/ceph/ceph.conf', $manage_rados = true, + $package_ensure = 'present', ) inherits gnocchi::params { include gnocchi::deps @@ -70,7 +75,7 @@ class gnocchi::storage::ceph( if $manage_rados { ensure_packages('python-rados', { - 'ensure' => 'present', + 'ensure' => $package_ensure, 'name' => $::gnocchi::params::rados_package_name, 'tag' => ['openstack','gnocchi-package'], }) diff --git a/releasenotes/notes/storage-ceph-package_ensure-36b77ea422e5c628.yaml b/releasenotes/notes/storage-ceph-package_ensure-36b77ea422e5c628.yaml new file mode 100644 index 00000000..a8a360d4 --- /dev/null +++ b/releasenotes/notes/storage-ceph-package_ensure-36b77ea422e5c628.yaml @@ -0,0 +1,5 @@ +--- +features: + - | + The new ``gnoccho::storage::ceph::package_ensure`` parameter has been + added. diff --git a/spec/classes/gnocchi_storage_ceph_spec.rb b/spec/classes/gnocchi_storage_ceph_spec.rb index ed6b3eb6..04abb2b7 100644 --- a/spec/classes/gnocchi_storage_ceph_spec.rb +++ b/spec/classes/gnocchi_storage_ceph_spec.rb @@ -61,6 +61,18 @@ describe 'gnocchi::storage::ceph' do it { is_expected.not_to contain_package('python-rados') } end + + context 'with package_ensure' do + before do + params.merge!( :package_ensure => 'latest' ) + end + + it { is_expected.to contain_package('python-rados').with( + :ensure => 'latest', + :name => 'python3-rados', + :tag => ['openstack', 'gnocchi-package'], + )} + end end on_supported_os({