Puppet Class: sendmail::userdb
- Defined in:
- manifests/userdb.pp
Overview
Class: sendmail::userdb
Manage the Sendmail userdb db file.
Parameters:
- content
-
The desired contents of the userdb file. This allows managing the userdb file as a whole. Changes to the file automatically triggers a rebuild of the userdb database file. This attribute is mutually exclusive with ‘source’.
- source
-
A source file for the userdb file. This allows managing the userdb file as a whole. Changes to the file automatically triggers a rebuild of the userdb database file. This attribute is mutually exclusive with ‘content’.
- entries
-
A hash that will be used to create sendmail::userdb::entry resources. This class can be used to create userdb entries defined in hiera. The hiera hash should look like this:
sendmail::userdb::entries:
'fred:maildrop': value: 'fred@example.org' 'barney:maildrop': value: 'barney@example.org'
Requires:
Nothing.
Sample Usage:
class { 'sendmail::userdb': }
class { 'sendmail::userdb':
source => 'puppet:///modules/sendmail/userdb',
}
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'manifests/userdb.pp', line 43
class sendmail::userdb (
Optional[String] $content = undef,
Optional[String] $source = undef,
Hash[String,Data] $entries = {},
) {
if ($content and $source) {
fail('You cannot specify more than one of content, source, entries')
}
if ($content or $source) {
if !empty($entries) {
fail('You cannot specify more than one of content, source, entries')
}
class { 'sendmail::userdb::file':
content => $content,
source => $source,
}
}
elsif !empty($entries) {
$entries.each |$entry,$attributes| {
sendmail::userdb::entry { $entry:
* => $attributes,
}
}
}
}
|