Gitlab Community Edition Instance

Skip to content
Snippets Groups Projects
postfix.pp 1.51 KiB
Newer Older
Ralph Krimmel's avatar
Ralph Krimmel committed
# Mailversand konfigurieren
class ubuntu_server::postfix($root_emails,$relayhost = "mailer.gwdg.de",$generic_maps = "puppet:///modules/ubuntu_server/etc/postfix/generic_maps") {
Ralph Krimmel's avatar
Ralph Krimmel committed

    package{['mailutils','postfix']:
        ensure => present,
    }

    file_line{'postfix_cfg_1':
        path => "/etc/postfix/main.cf",
        line => "relayhost = $relayhost",
        match => "^relayhost",
        require => [ Package["mailutils"], Package["postfix"] ],
    } ~> Service['postfix']

    file_line{'postfix_cfg_2':
        path => "/etc/postfix/main.cf",
        line => "smtp_generic_maps = hash:/etc/postfix/generic_maps",
        match => "^smtp_generic_maps",
        require => [ Package["mailutils"], Package["postfix"] ],
    } ~> Exec['generic-maps-refresh']

    # http://www.postfix.org/ADDRESS_REWRITING_README.html#generic
    file{'/etc/postfix/generic_maps':
        ensure => present,
        source => $generic_maps,
        require => [ Package["mailutils"], Package["postfix"] ],
    } ~> Exec['generic-maps-refresh']

Ralph Krimmel's avatar
Ralph Krimmel committed
    service{'postfix':
        ensure => running,
        require => Package['postfix'],
Ralph Krimmel's avatar
Ralph Krimmel committed
    }
Ralph Krimmel's avatar
Ralph Krimmel committed
    mailalias{'root':
        recipient => $root_emails,
        require => Package['postfix'],
Ralph Krimmel's avatar
Ralph Krimmel committed
    } ~> Exec["mail-alias-refresh"]
Ralph Krimmel's avatar
Ralph Krimmel committed
    exec { "mail-alias-refresh":
        path => $path,
        command => "newaliases",
        refreshonly => true,
    }

    exec { "generic-maps-refresh":
        path => $path,
        command => "postmap hash:/etc/postfix/generic_maps",
        refreshonly => true,
    }
Ralph Krimmel's avatar
Ralph Krimmel committed
}