summaryrefslogtreecommitdiff
path: root/puppet/modules/postfix/manifests/satellite.pp
diff options
context:
space:
mode:
authorMicah <micah@leap.se>2016-07-12 16:46:25 -0400
committerMicah <micah@leap.se>2016-07-12 16:46:25 -0400
commit5247b7ccf5b5889ee16262dd976b03047e34e32c (patch)
treec2a8483ac22f75d842ebc3ad6f3c6f24954b9cef /puppet/modules/postfix/manifests/satellite.pp
parentd8a8d30b04d34387f309d9f5b7afdbcad01f7cbc (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/satellite.pp')
-rw-r--r--puppet/modules/postfix/manifests/satellite.pp49
1 files changed, 49 insertions, 0 deletions
diff --git a/puppet/modules/postfix/manifests/satellite.pp b/puppet/modules/postfix/manifests/satellite.pp
new file mode 100644
index 00000000..c6c1a0e4
--- /dev/null
+++ b/puppet/modules/postfix/manifests/satellite.pp
@@ -0,0 +1,49 @@
+#
+# == Class: postfix::satellite
+#
+# This class configures all local email (cron, mdadm, etc) to be forwarded
+# to $root_mail_recipient, using $postfix_relayhost as a relay.
+#
+# $valid_fqdn can be set to override $fqdn in the case where the FQDN is
+# not recognized as valid by the destination server.
+#
+# Parameters:
+# - *valid_fqdn*
+# - every global variable which works for class "postfix" will work here.
+#
+# Example usage:
+#
+# node "toto.local.lan" {
+# class { 'postfix::satellite':
+# relayhost => "mail.example.com"
+# valid_fqdn => "toto.example.com"
+# root_mail_recipient => "the.sysadmin@example.com"
+# }
+# }
+#
+class postfix::satellite(
+ $relayhost = '',
+ $valid_fqdn = $::fqdn,
+ $root_mail_recipient = ''
+) {
+
+ # If $valid_fqdn is provided, use it to override $fqdn
+ if $valid_fqdn != $::fdqn {
+ $fqdn = $valid_fqdn
+ }
+
+ class { 'postfix':
+ root_mail_recipient => $root_mail_recipient,
+ myorigin => $valid_fqdn,
+ mailname => $valid_fqdn
+ }
+
+ class { 'postfix::mta':
+ relayhost => $relayhost,
+ }
+
+ postfix::virtual {"@${valid_fqdn}":
+ ensure => present,
+ destination => "root",
+ }
+}