diff --git a/REFERENCE.md b/REFERENCE.md index e9fd44c..b8f2f2a 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -1376,6 +1376,7 @@ The following parameters are available in the `sssd::domain` defined type: * [`proxy_pam_target`](#-sssd--domain--proxy_pam_target) * [`proxy_lib_name`](#-sssd--domain--proxy_lib_name) * [`ldap_user_search_filter`](#-sssd--domain--ldap_user_search_filter) +* [`custom_options`](#-sssd--domain--custom_options) ##### `name` @@ -1728,7 +1729,17 @@ Default value: `undef` Data type: `Optional[String]` +##### `custom_options` +Data type: `Optional[Hash]` + +If defined, this hash will be used to create the service +section instead of the parameters. You must provide all options +in the section you want to add. Each entry in the hash will be +added as a simple init pair +key = value +under the section in the sssd.conf file. +No error checking will be performed. Default value: `undef` diff --git a/manifests/domain.pp b/manifests/domain.pp index d5e8c4c..10e3986 100644 --- a/manifests/domain.pp +++ b/manifests/domain.pp @@ -66,6 +66,14 @@ # @param proxy_lib_name # @param ldap_user_search_filter # +# @param custom_options +# If defined, this hash will be used to create the service +# section instead of the parameters. You must provide all options +# in the section you want to add. Each entry in the hash will be +# added as a simple init pair key = value under the section in +# the sssd.conf file. +# No error checking will be performed. +# # @author https://github.com/simp/pupmod-simp-sssd/graphs/contributors # define sssd::domain ( @@ -112,7 +120,8 @@ Optional[String] $realmd_tags = undef, Optional[String] $proxy_pam_target = undef, Optional[String] $proxy_lib_name = undef, - Optional[String] $ldap_user_search_filter = undef + Optional[String] $ldap_user_search_filter = undef, + Optional[Hash] $custom_options = undef ) { sssd::config::entry { "puppet_domain_${name}": diff --git a/templates/domain.erb b/templates/domain.erb index 6740a9b..7ddb181 100644 --- a/templates/domain.erb +++ b/templates/domain.erb @@ -107,3 +107,8 @@ proxy_pam_target = <%= @proxy_pam_target %> <% if @proxy_lib_name %> proxy_lib_name = <%= @proxy_lib_name %> <% end -%> +<% if @custom_options -%> +<% @custom_options.each do |opt,value| -%> +<%= opt %> = <%= value %> +<% end -%> +<% end -%>