diff options
author | Micah <micah@leap.se> | 2016-07-12 16:46:25 -0400 |
---|---|---|
committer | Micah <micah@leap.se> | 2016-07-12 16:46:25 -0400 |
commit | 5247b7ccf5b5889ee16262dd976b03047e34e32c (patch) | |
tree | c2a8483ac22f75d842ebc3ad6f3c6f24954b9cef /puppet/modules/postfix/manifests/transport_regexp_snippet.pp | |
parent | d8a8d30b04d34387f309d9f5b7afdbcad01f7cbc (diff) |
git subrepo clone https://leap.se/git/puppet_postfix puppet/modules/postfix
subrepo:
subdir: "puppet/modules/postfix"
merged: "cce918f"
upstream:
origin: "https://leap.se/git/puppet_postfix"
branch: "master"
commit: "cce918f"
git-subrepo:
version: "0.3.0"
origin: "https://github.com/ingydotnet/git-subrepo"
commit: "1e79595"
Change-Id: I325a79fe1780ee6a5d61959310cf8e52c9a6896f
Diffstat (limited to 'puppet/modules/postfix/manifests/transport_regexp_snippet.pp')
-rw-r--r-- | puppet/modules/postfix/manifests/transport_regexp_snippet.pp | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/puppet/modules/postfix/manifests/transport_regexp_snippet.pp b/puppet/modules/postfix/manifests/transport_regexp_snippet.pp new file mode 100644 index 00000000..2b13ed14 --- /dev/null +++ b/puppet/modules/postfix/manifests/transport_regexp_snippet.pp @@ -0,0 +1,67 @@ +/* +== Definition: postfix::transport_regexp_snippet + +Adds a transport_regexp snippets to /etc/postfix/transport_regexp. +See the postfix::transport_regexp class for details. + +Parameters: +- *source* or *content*: source or content of the transport_regexp snippet +- *ensure*: present (default) or absent + +Requires: +- Class["postfix"] + +Example usage: + + node "toto.example.com" { + class { 'postfix': } + postfix::transport_regexp { + 'wrong_date': content => 'FIXME'; + 'bla': source => 'puppet:///files/etc/postfix/transport_regexp.d/bla'; + } + } + +*/ + +define postfix::transport_regexp_snippet ( + $ensure = "present", + $source = '', + $content = undef +) { + + if $source == '' and $content == undef { + fail("One of \$source or \$content must be specified for postfix::transport_regexp_snippet ${name}") + } + + if $source != '' and $content != undef { + fail("Only one of \$source or \$content must specified for postfix::transport_regexp_snippet ${name}") + } + + if ($value == false) and ($ensure == "present") { + fail("The value parameter must be set when using the postfix::transport_regexp_snippet define with ensure=present.") + } + + include postfix::transport_regexp + + $snippetfile = "${postfix::transport_regexp::postfix_transport_regexp_snippets_dir}/${name}" + + file { "$snippetfile": + ensure => "$ensure", + mode => 600, + owner => root, + group => 0, + notify => Exec["concat_${postfix::transport_regexp::postfix_merged_transport_regexp}"], + } + + if $source { + File["$snippetfile"] { + source => $source, + } + } + else { + File["$snippetfile"] { + content => $content, + } + } + +} |