X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fexim%2Fmanifests%2Fvdomain.pp;h=ef3c0183bc172172600c2e35f7ff288785e9a66b;hb=86bb13d735169395de039abf269bf9bf8d0fdd72;hp=de62334155ce0de646c0068066983cbb17df78e0;hpb=69f0b861e58644fba443ececeb29eb03cca333dc;p=mirror%2Fdsa-puppet.git diff --git a/modules/exim/manifests/vdomain.pp b/modules/exim/manifests/vdomain.pp index de6233415..ef3c0183b 100644 --- a/modules/exim/manifests/vdomain.pp +++ b/modules/exim/manifests/vdomain.pp @@ -1,35 +1,41 @@ +# add an exim virtualdomain entry on this host +# +# @param mail_user User to run the virtual email domain's pipe jobs and deliveries as +# @param mail_group Group to run the virtual email domain's pipe jobs and deliveries as +# @param owner User to own the directories and files +# @param group Group to own the directories and files +# @param domain email domain (defaults to $name) +# @param maildir Mail directory, usually and defaults to /srv/$name/mail define exim::vdomain ( - $alias_file, - $user, - $group, - $maildir="/srv/${name}", - $domain=$name, + String $domain = $name, + String $maildir = "/srv/${name}/mail", + String $owner = 'root', + String $group = 'root', + String $mail_user = $owner, + String $mail_group = $group, ) { - include exim::vdomain::setup - file { $maildir: ensure => directory, - mode => '0755', - owner => root, - group => root - } - - file { "${maildir}/mail": - ensure => directory, - mode => '0755', - owner => root, - group => root + mode => '2755', + owner => $owner, + group => $group, } - file { "${maildir}/mail/aliases": - source => $alias_file, - mode => '0644', - owner => root, - group => root + file { [ + "${maildir}/aliases", + "${maildir}/callout_users", + "${maildir}/grey_users", + "${maildir}/neversenders", + "${maildir}/rbllist", + "${maildir}/rhsbllist", + ] : + mode => '0644', + owner => $owner, + group => $group, } concat::fragment { "virtualdomain_${domain}": target => '/etc/exim4/virtualdomains', - content => "${domain}: user=${user} group=${group} directory=${maildir}/mail\n", + content => "${domain}: user=${mail_user} group=${mail_group} directory=${maildir}\n", } }