]> review.fuel-infra Code Review - puppet-modules/puppet-ceilometer.git/commitdiff
add parameter to specify if service on keystone should be configured
authorBenedikt Trefzer <benedikt.trefzer@cirrax.com>
Tue, 20 Oct 2020 14:40:45 +0000 (16:40 +0200)
committerTakashi Kajinami <tkajinam@redhat.com>
Mon, 26 Oct 2020 07:18:46 +0000 (07:18 +0000)
The added parameter should be deprecated in one of the next steps,
since there is no ceilometer api for several releases !

Change-Id: Ia579cf24a5e837487216329fe994cb030c1b3929
(cherry picked from commit 5023a2c51ff55c7b2d84c8124bb258a6c28d23ff)

manifests/keystone/auth.pp
releasenotes/notes/parameter-to-disable-keystone-service-741f019a021f5b4c.yaml [new file with mode: 0644]
spec/classes/ceilometer_keystone_auth_spec.rb

index 1a2f28644ebbe8ecfe51d828d3e2ccfd7a246dc3..51240bc3e75d4e8891fb9afa2da53964df886474 100644 (file)
 #   (Optional) Should Ceilometer endpoint be configured.
 #   Defaults to true.
 #
+# [*configure_service*]
+#   (Optional) Whether to create the service.
+#   Default to True
+#   Remark: will be deprecated in wallaby cycle
+#
 # [*configure_user*]
 #   (Optional) Should Ceilometer service user be configured?
 #   Defaults to true.
@@ -82,6 +87,7 @@ class ceilometer::keystone::auth (
   $region               = 'RegionOne',
   $tenant               = 'services',
   $configure_endpoint   = true,
+  Boolean $configure_service = true,
   $public_url           = 'http://127.0.0.1:8777',
   $admin_url            = 'http://127.0.0.1:8777',
   $internal_url         = 'http://127.0.0.1:8777',
@@ -95,6 +101,7 @@ class ceilometer::keystone::auth (
     configure_user      => $configure_user,
     configure_user_role => $configure_user_role,
     configure_endpoint  => $configure_endpoint,
+    configure_service   => $configure_service,
     service_type        => $service_type,
     service_description => $service_description,
     service_name        => $service_name,
diff --git a/releasenotes/notes/parameter-to-disable-keystone-service-741f019a021f5b4c.yaml b/releasenotes/notes/parameter-to-disable-keystone-service-741f019a021f5b4c.yaml
new file mode 100644 (file)
index 0000000..7b2cbf7
--- /dev/null
@@ -0,0 +1,6 @@
+---
+features:
+  - |
+    Add parameter to ceilometer::keystone::auth to disable the creation
+    of keystone ceilometer service (used in catalog).
+    remark: parameter will be deprecated in wallaby cycle !
index 4110ca798f9dfc5ec522c2b450e4aaf57ba17e8f..73491ca64611d00a86819aa7abf864b243afea17 100644 (file)
@@ -8,6 +8,7 @@ describe 'ceilometer::keystone::auth' do
       :auth_name          => 'ceilometer',
       :service_name       => 'ceilometer',
       :configure_endpoint => true,
+      :configure_service  => true,
       :service_type       => 'metering',
       :region             => 'RegionOne',
       :tenant             => 'services',
@@ -167,6 +168,21 @@ describe 'ceilometer::keystone::auth' do
       )}
     end
 
+    context 'when disabling service and endpoint configuration' do
+      before do
+        params.merge!(
+          :configure_service   => false,
+          :configure_endpoint  => false
+        )
+      end
+
+      it { is_expected.to_not contain_keystone_service('ceilometer::metering') }
+      it { is_expected.to_not contain_keystone_endpoint("#{default_params[:region]}/#{default_params[:service_name]}::#{default_params[:service_type]}")}
+
+      it { is_expected.to contain_keystone_user('ceilometer') }
+      it { is_expected.to contain_keystone_user_role('ceilometer@services') }
+    end
+
   end
 
   on_supported_os({