Puppet Class: sssd

Inherited by:
sssd::install
sssd::service
sssd::base_config
Defined in:
manifests/init.pp

Summary

A short summary of the purpose of this class

Overview

A description of what this class does

Examples:

class { 'sssd':
  main_config => {
    'sssd' => {
       'domains' => 'a, b',
       'services => ['pam', 'nss']
     }},
  configs => {
    'enable debug' => {
      'sssd' => { 'debug' => 0 }},
    'setup different domains' => {
      'sssd' => { 'domains' => ['c', 'd'] },
      'domain/c' => { 'id_provider' => 'ldap' },
      'domain/d' => { 'id_provider' => 'ipa'}
    setup_empty_nss_section => { 'nss' => {} }
}

Parameters:

  • packages_manage (Boolean)

    Should we manage the package?

  • packages_ensure (String[1])

    ‘package` ensure parameter

  • package_names (Array[String])

    Array of packages to manage

  • config_manage (Boolean)

    Should we manage the config?

  • main_pki_dir (Stdlib::Absolutepath)

    This is probably /etc/sssd/pki on your system

  • main_config_dir (Stdlib::Absolutepath)

    This is probably /etc/sssd on your system

  • main_config_file (Stdlib::Absolutepath)

    This is probably /etc/sssd/sssd.conf on your system

  • config_d_location (Stdlib::Absolutepath)

    This is probably /etc/sssd/conf.d on your system

  • purge_unmanaged_conf_d (Boolean)

    Should we remove any files unknown to puppet in the conf_d location?

  • pki_owner (String)

    Owner for the pki directory - should probably be ‘root’ or ‘sssd’

  • pki_group (String)

    Group for the pki directory - should probably be ‘root’ or ‘sssd’

  • pki_mode (String)

    Group for the pki directory - should probably be ‘0711’

  • config_owner (String)

    Owner for the config files - should probably be ‘root’ or ‘sssd’

  • config_group (String)

    Group for the config files - should probably be ‘root’ or ‘sssd’

  • config_mode (String)

    chmod for the config files - should be ‘0600’

  • main_config (Hash)

    Hash containing the content of $main_config_file broken out by section Entries in $config_d_location can replace these elements in a last file wins methodology.

  • configs (Hash)

    A Hash similar to $main_config, but with one more level of nesting ‘any text you want’:

    section:
      key: value
    
  • services_manage (Boolean)

    Should this class manage the service states

  • services_ensure (Enum['stopped','running'])

    Service ensure parameter

  • services_enable (Boolean)

    Service enable parameter

  • service_names (Array[String])

    Array of services that are part of sssd



70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# File 'manifests/init.pp', line 70

class sssd (
  Boolean $packages_manage,
  String[1] $packages_ensure,
  Array[String] $package_names,
  Boolean $config_manage,
  Stdlib::Absolutepath $main_config_dir,
  Stdlib::Absolutepath $main_config_file,
  Stdlib::Absolutepath $config_d_location,
  Stdlib::Absolutepath $main_pki_dir,
  String $pki_owner,
  String $pki_group,
  String $pki_mode,
  String $config_owner,
  String $config_group,
  String $config_mode,
  Boolean $purge_unmanaged_conf_d,
  Hash $main_config,
  Hash $configs,
  Boolean $services_manage,
  Enum['stopped','running'] $services_ensure,
  Boolean $services_enable,
  Array[String] $service_names,
) {
  contain sssd::install
  contain sssd::base_config
  contain sssd::service

  Class['sssd::install'] -> Class['sssd::base_config'] ~> Class['sssd::service']
}