]> review.fuel-infra Code Review - puppet-modules/puppet-ceilometer.git/commitdiff
Allow customizing roles of the ceilometer service user
authorTakashi Kajinami <tkajinam@redhat.com>
Sat, 22 Jan 2022 12:23:53 +0000 (21:23 +0900)
committerTakashi Kajinami <tkajinam@redhat.com>
Sat, 22 Jan 2022 12:24:57 +0000 (21:24 +0900)
This change introduces the capability to customize project-scoped and
system-scoped roles assigned to the ceilometer service user.

Change-Id: I6221fa85ad1fd0388c49f2ed49db1b6645dec3f5

manifests/keystone/auth.pp
releasenotes/notes/system_scope-role-d29cc9a3c6da4fef.yaml [new file with mode: 0644]
spec/classes/ceilometer_keystone_auth_spec.rb

index c8cb0c8f65cd903445f02d3331af500fdd4ca581..1cf24b2f9d5c2653251f125d957e81e530df71c4 100644 (file)
 #   (Optional) Tenant for Ceilometer user.
 #   Defaults to 'services'.
 #
+# [*roles*]
+#   (Optional) List of roles assigned to aodh user.
+#   Defaults to ['admin']
+#
+# [*system_scope*]
+#   (Optional) Scope for system operations.
+#   Defaults to 'all'
+#
+# [*system_roles*]
+#   (Optional) List of system roles assigned to aodh user.
+#   Defaults to []
+#
 # === Examples:
 #
 #  class { 'ceilometer::keystone::auth':
@@ -45,6 +57,9 @@ class ceilometer::keystone::auth (
   $configure_user_role  = true,
   $region               = 'RegionOne',
   $tenant               = 'services',
+  $roles                = ['admin'],
+  $system_scope         = 'all',
+  $system_roles         = [],
 ) {
 
   include ceilometer::deps
@@ -63,5 +78,8 @@ class ceilometer::keystone::auth (
     password            => $password,
     email               => $email,
     tenant              => $tenant,
+    roles               => $roles,
+    system_scope        => $system_scope,
+    system_roles        => $system_roles,
   }
 }
diff --git a/releasenotes/notes/system_scope-role-d29cc9a3c6da4fef.yaml b/releasenotes/notes/system_scope-role-d29cc9a3c6da4fef.yaml
new file mode 100644 (file)
index 0000000..b1f2e1e
--- /dev/null
@@ -0,0 +1,9 @@
+---
+features:
+  - |
+    The ``ceilometer::keystone::auth`` class now supports customizing roles
+    assigned to the ceilometer service user.
+
+  - |
+    The ``ceilometer::keystone::auth`` class now supports defining assignment
+    of system-scoped roles to the ceilometer user.
index 326ddec82419ad7562f403384c75dccee6b28ade..c9d49cfab24b2b95a93e764766fb2aa23a1b61ab 100644 (file)
@@ -21,6 +21,9 @@ describe 'ceilometer::keystone::auth' do
         :password            => 'ceilometer_password',
         :email               => 'ceilometer@localhost',
         :tenant              => 'services',
+        :roles               => ['admin'],
+        :system_scope        => 'all',
+        :system_roles        => [],
       ) }
     end
 
@@ -30,6 +33,9 @@ describe 'ceilometer::keystone::auth' do
           :auth_name           => 'alt_ceilometer',
           :email               => 'alt_ceilometer@alt_localhost',
           :tenant              => 'alt_service',
+          :roles               => ['admin', 'service'],
+          :system_scope        => 'alt_all',
+          :system_roles        => ['admin', 'member', 'reader'],
           :configure_user      => false,
           :configure_user_role => false,
           :region              => 'RegionTwo' }
@@ -45,6 +51,9 @@ describe 'ceilometer::keystone::auth' do
         :password            => 'ceilometer_password',
         :email               => 'alt_ceilometer@alt_localhost',
         :tenant              => 'alt_service',
+        :roles               => ['admin', 'service'],
+        :system_scope        => 'alt_all',
+        :system_roles        => ['admin', 'member', 'reader'],
       ) }
     end
   end