diff options
author | mh <mh@immerda.ch> | 2012-02-16 16:51:56 +0100 |
---|---|---|
committer | mh <mh@immerda.ch> | 2012-02-16 16:51:56 +0100 |
commit | 77578b93bd98bf0bf9cf69e4fa8da75dcf9c236d (patch) | |
tree | c0ce83a00c9c6220b4bdddd1d5781e86b7ce2e48 /manifests/mta.pp | |
parent | 5108973b37903047b8b17fbe54313cb4b6ea114f (diff) | |
download | puppet-postfix-77578b93bd98bf0bf9cf69e4fa8da75dcf9c236d.tar.gz puppet-postfix-77578b93bd98bf0bf9cf69e4fa8da75dcf9c236d.tar.bz2 |
put classes and defines in the proper place
To take advantage of puppet's autoloading feature, which will be
mandatory sooner or later. We move all the files in their appropriate
place.
Diffstat (limited to 'manifests/mta.pp')
-rw-r--r-- | manifests/mta.pp | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/manifests/mta.pp b/manifests/mta.pp new file mode 100644 index 0000000..c36c0bc --- /dev/null +++ b/manifests/mta.pp @@ -0,0 +1,61 @@ +# +# == Class: postfix::mta +# +# This class configures a minimal MTA, listening on +# $postfix_smtp_listen (default to localhost) and delivering mail to +# $postfix_mydestination (default to $fqdn). +# +# A valid relay host is required ($postfix_relayhost) for outbound email. +# +# transport & virtual maps get configured and can be populated with +# postfix::transport and postfix::virtual +# +# Parameters: +# - *$postfix_relayhost* +# - *$postfix_mydestination* +# - every global variable which works for class "postfix" will work here. +# +# Example usage: +# +# node "toto.example.com" { +# $postfix_relayhost = "mail.example.com" +# $postfix_smtp_listen = "0.0.0.0" +# $postfix_mydestination = "\$myorigin, myapp.example.com" +# +# include postfix::mta +# +# postfix::transport { "myapp.example.com": +# ensure => present, +# destination => "local:", +# } +# } +# +class postfix::mta { + + #case $postfix_relayhost { + # "": { fail("Required \$postfix_relayhost variable is not defined.") } + #} + + case $postfix_mydestination { + "": { $postfix_mydestination = "\$myorigin" } + } + + include postfix + + postfix::config { + "mydestination": value => $postfix_mydestination; + "mynetworks": value => "127.0.0.0/8"; + "relayhost": value => $postfix_relayhost; + "virtual_alias_maps": value => "hash:/etc/postfix/virtual"; + "transport_maps": value => "hash:/etc/postfix/transport"; + } + + postfix::hash { "/etc/postfix/virtual": + ensure => present, + } + + postfix::hash { "/etc/postfix/transport": + ensure => present, + } + +} |