Skip to content

Commit 2b269b2

Browse files
Add role mappings (#342)
* add role mappers * fix typo * add param --------- Co-authored-by: Benjamin Rechsteiner <benjamin.rechsteiner@abacus.ch>
1 parent 4169f62 commit 2b269b2

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

manifests/init.pp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,10 @@
189189
# Hash that is used to define keycloak_ldap_user_provider resources.
190190
# @param ldap_user_providers_merge
191191
# Boolean that sets if `ldap_user_providers` should be merged from Hiera.
192+
# @param role_mappings
193+
# Hash that is used to define keycloak_role_mapping resources.
194+
# @param role_mapping_merge
195+
# Boolean that sets if `role_mappings` should be merged from Hiera.
192196
# @param with_sssd_support
193197
# Boolean that determines if SSSD user provider support should be available
194198
# @param libunix_dbus_java_source
@@ -299,6 +303,8 @@
299303
Hash $ldap_mappers = {},
300304
Boolean $ldap_mappers_merge = false,
301305
Hash $ldap_user_providers = {},
306+
Hash $role_mappings = {},
307+
Boolean $role_mapping_merge = false,
302308
Boolean $ldap_user_providers_merge = false,
303309
Boolean $flow_executions_merge = false,
304310
Boolean $with_sssd_support = false,

manifests/resources.pp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,11 @@
6363
} else {
6464
$ldap_user_providers = $keycloak::ldap_user_providers
6565
}
66+
if $keycloak::role_mapping_merge {
67+
$role_mappings = lookup('keycloak::role_mappings', Hash, 'deep', {})
68+
} else {
69+
$role_mappings = $keycloak::role_mappings
70+
}
6671

6772
$realms.each |$name, $realm| {
6873
keycloak_realm { $name: * => $realm }
@@ -103,6 +108,9 @@
103108
$ldap_user_providers.each |$name, $data| {
104109
keycloak_ldap_user_provider { $name: * => $data }
105110
}
111+
$role_mappings.each |$name, $data| {
112+
keycloak_role_mapping { $name: * => $data }
113+
}
106114
$keycloak::spi_deployments.each |$name, $deployment| {
107115
keycloak::spi_deployment { $name: * => $deployment }
108116
}

0 commit comments

Comments
 (0)