From: Stephen Gran Date: Wed, 29 Apr 2009 21:21:27 +0000 (+0100) Subject: virtualdomains into a template X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=d84da554d7c0c3d60ab7ca094e2e738cd0e4d494;p=dsa-puppet.git virtualdomains into a template Signed-off-by: Stephen Gran --- diff --git a/modules/exim/files/common/virtualdomains b/modules/exim/files/common/virtualdomains deleted file mode 100644 index 3c267060..00000000 --- a/modules/exim/files/common/virtualdomains +++ /dev/null @@ -1,22 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# virtualdomains - This is a list of all virtual domains. A virtual domain -# is much like a local domain, execpt that the delivery location -# and allowed set of users is controlled by a virtual domain -# alias file and not /etc/passwd. Wildcards are permitted - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -# Host may be a wildcard. -# User/Group are the symbolic names of the uid/gid to operate under when -# performing deliveries for this name. These should not be root! -# Directory is the directory to look in for data files. The directory and -# files may be group writable. The first file to lookup is DIR/aliases -# which is a traditional exim/sendmail alias file. You can specify -# users, patterns, pipes and filenames. If that fails then -# .forward-foo is tried, should that fail then .forward-default is tried. -# Finally the email will bounce. diff --git a/modules/exim/files/per-host/gluck.debian.org/virtualdomains b/modules/exim/files/per-host/gluck.debian.org/virtualdomains deleted file mode 100644 index 1cd39fd3..00000000 --- a/modules/exim/files/per-host/gluck.debian.org/virtualdomains +++ /dev/null @@ -1,29 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# virtualdomains - This is a list of all virtual domains. A virtual domain -# is much like a local domain, execpt that the delivery location -# and allowed set of users is controlled by a virtual domain -# alias file and not /etc/passwd. Wildcards are permitted - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -# Host may be a wildcard. -# User/Group are the symbolic names of the uid/gid to operate under when -# performing deliveries for this name. These should not be root! -# Directory is the directory to look in for data files. The directory and -# files may be group writable. The first file to lookup is DIR/aliases -# which is a traditional exim/sendmail alias file. You can specify -# users, patterns, pipes and filenames. If that fails then -# .forward-foo is tried, should that fail then .forward-default is tried. -# Finally the email will bounce. - -ddtp.debian.org: user=grisu group=Debian directory=/org/ddtp.debian.org/mail -admin.debian.org: user=mail_admin group=mail_admin directory=/org/admin.debian.org/mail/ -popcon.debian.org: user=popcon group=popcon directory=/org/popcon.debian.org/mail/ - -debian.com: user=nobody group=Debian directory=/org/misc/star.debian.org/ -debian.net: user=nobody group=Debian directory=/org/misc/star.debian.org/ diff --git a/modules/exim/files/per-host/handel.debian.org/virtualdomains b/modules/exim/files/per-host/handel.debian.org/virtualdomains deleted file mode 100644 index 41a71568..00000000 --- a/modules/exim/files/per-host/handel.debian.org/virtualdomains +++ /dev/null @@ -1,9 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -puppet.debian.org: user=sgran group=Debian directory=/srv/puppet.debian.org/mail diff --git a/modules/exim/files/per-host/klecker.debian.org/virtualdomains b/modules/exim/files/per-host/klecker.debian.org/virtualdomains deleted file mode 100644 index 5ce1a13d..00000000 --- a/modules/exim/files/per-host/klecker.debian.org/virtualdomains +++ /dev/null @@ -1,26 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# virtualdomains - This is a list of all virtual domains. A virtual domain -# is much like a local domain, execpt that the delivery location -# and allowed set of users is controlled by a virtual domain -# alias file and not /etc/passwd. Wildcards are permitted - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -# Host may be a wildcard. -# User/Group are the symbolic names of the uid/gid to operate under when -# performing deliveries for this name. These should not be root! -# Directory is the directory to look in for data files. The directory and -# files may be group writable. The first file to lookup is DIR/aliases -# which is a traditional exim/sendmail alias file. You can specify -# users, patterns, pipes and filenames. If that fails then -# .forward-foo is tried, should that fail then .forward-default is tried. -# Finally the email will bounce. - -security.debian.org: user=mail_security group=nogroup directory=/org/security.debian.org/mail/ -non-us.debian.org: user=katie group=debadmin directory=/org/non-us.debian.org/mail/ -www-master.debian.org: user=debwww group=debwww directory=/org/www.debian.org/mail/ diff --git a/modules/exim/files/per-host/master.debian.org/virtualdomains b/modules/exim/files/per-host/master.debian.org/virtualdomains deleted file mode 100644 index ed02ae68..00000000 --- a/modules/exim/files/per-host/master.debian.org/virtualdomains +++ /dev/null @@ -1,12 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir - -vote.debian.org: user=secretary group=debvote directory=/org/vote.debian.org/mail -packages.qa.debian.org: user=qa group=qa directory=/org/packages.qa.debian.org/mail -bugs.qa.debian.org: user=cjwatson group=qa directory=/org/bugs.qa.debian.org/mail diff --git a/modules/exim/files/per-host/merkel.debian.org/virtualdomains b/modules/exim/files/per-host/merkel.debian.org/virtualdomains deleted file mode 100644 index 49c099d6..00000000 --- a/modules/exim/files/per-host/merkel.debian.org/virtualdomains +++ /dev/null @@ -1,26 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# virtualdomains - This is a list of all virtual domains. A virtual domain -# is much like a local domain, execpt that the delivery location -# and allowed set of users is controlled by a virtual domain -# alias file and not /etc/passwd. Wildcards are permitted - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -# Host may be a wildcard. -# User/Group are the symbolic names of the uid/gid to operate under when -# performing deliveries for this name. These should not be root! -# Directory is the directory to look in for data files. The directory and -# files may be group writable. The first file to lookup is DIR/aliases -# which is a traditional exim/sendmail alias file. You can specify -# users, patterns, pipes and filenames. If that fails then -# .forward-foo is tried, should that fail then .forward-default is tried. -# Finally the email will bounce. - -qa.debian.org: user=qa group=qa directory=/org/qa.debian.org/mail/ -bugs.qa.debian.org: user=nobody group=nogroup directory=/org/bugs.qa.debian.org/mail/ -nm.debian.org: user=nm group=nm directory=/org/nm.debian.org/mail/ diff --git a/modules/exim/files/per-host/powell.debian.org/virtualdomains b/modules/exim/files/per-host/powell.debian.org/virtualdomains deleted file mode 100644 index 20413c06..00000000 --- a/modules/exim/files/per-host/powell.debian.org/virtualdomains +++ /dev/null @@ -1,9 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -packages.debian.org: user=nobody group=Debian directory=/org/packages.debian.org/mail/ diff --git a/modules/exim/files/per-host/raff.debian.org/virtualdomains b/modules/exim/files/per-host/raff.debian.org/virtualdomains deleted file mode 100644 index b7a5500f..00000000 --- a/modules/exim/files/per-host/raff.debian.org/virtualdomains +++ /dev/null @@ -1,10 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -buildd.debian.org: user=wbadm group=wbadm directory=/srv/buildd.debian.org/mail -logs.buildd.debian.org: user=wbadm group=wbadm directory=/srv/logs.buildd.debian.org/mail diff --git a/modules/exim/files/per-host/ries.debian.org/virtualdomains b/modules/exim/files/per-host/ries.debian.org/virtualdomains deleted file mode 100644 index c4e28028..00000000 --- a/modules/exim/files/per-host/ries.debian.org/virtualdomains +++ /dev/null @@ -1,10 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -release.debian.org: user=release group=debian-release directory=/org/release.debian.org/mail -ftp-master.debian.org: user=dak group=debadmin directory=/srv/ftp.debian.org/mail group_writable=true diff --git a/modules/exim/files/per-host/rietz.debian.org/virtualdomains b/modules/exim/files/per-host/rietz.debian.org/virtualdomains deleted file mode 100644 index 2cd091bb..00000000 --- a/modules/exim/files/per-host/rietz.debian.org/virtualdomains +++ /dev/null @@ -1,9 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -bugs.debian.org: user=debbugs group=debbugs directory=/srv/bugs.debian.org/mail diff --git a/modules/exim/files/per-host/samosa.debian.org/virtualdomains b/modules/exim/files/per-host/samosa.debian.org/virtualdomains deleted file mode 100644 index 8443f21a..00000000 --- a/modules/exim/files/per-host/samosa.debian.org/virtualdomains +++ /dev/null @@ -1,24 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# virtualdomains - This is a list of all virtual domains. A virtual domain -# is much like a local domain, execpt that the delivery location -# and allowed set of users is controlled by a virtual domain -# alias file and not /etc/passwd. Wildcards are permitted - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -# Host may be a wildcard. -# User/Group are the symbolic names of the uid/gid to operate under when -# performing deliveries for this name. These should not be root! -# Directory is the directory to look in for data files. The directory and -# files may be group writable. The first file to lookup is DIR/aliases -# which is a traditional exim/sendmail alias file. You can specify -# users, patterns, pipes and filenames. If that fails then -# .forward-foo is tried, should that fail then .forward-default is tried. -# Finally the email will bounce. - -db.debian.org: user=mail_db group=nogroup directory=/org/db.debian.org/mail diff --git a/modules/exim/files/per-host/spohr.debian.org/virtualdomains b/modules/exim/files/per-host/spohr.debian.org/virtualdomains deleted file mode 100644 index 4ee712c2..00000000 --- a/modules/exim/files/per-host/spohr.debian.org/virtualdomains +++ /dev/null @@ -1,9 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -rt.debian.org: user=rt group=rt directory=/srv/rt.debian.org/mail diff --git a/modules/exim/files/per-host/tartini.debian.org/virtualdomains b/modules/exim/files/per-host/tartini.debian.org/virtualdomains deleted file mode 100644 index 58e11839..00000000 --- a/modules/exim/files/per-host/tartini.debian.org/virtualdomains +++ /dev/null @@ -1,9 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -forums.debian.net: user=forums group=forums directory=/srv/forums.debian.net/mail diff --git a/modules/exim/files/per-host/widor.debian.org/virtualdomains b/modules/exim/files/per-host/widor.debian.org/virtualdomains deleted file mode 100644 index 64952b05..00000000 --- a/modules/exim/files/per-host/widor.debian.org/virtualdomains +++ /dev/null @@ -1,10 +0,0 @@ -## -## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. -## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git -## - -# This file lists the virtual domains that this host should handle. The -# format is -# host: user=user group=group directory=dir -wiki.debian.org: user=wiki group=wikiadm directory=/org/wiki.debian.org/mail - diff --git a/modules/exim/manifests/init.pp b/modules/exim/manifests/init.pp index 3ad6a6e0..712526f4 100644 --- a/modules/exim/manifests/init.pp +++ b/modules/exim/manifests/init.pp @@ -75,8 +75,7 @@ class exim { ; "/etc/exim4/virtualdomains": require => Package["exim4-daemon-heavy"], - source => [ "puppet:///exim/per-host/$fqdn/virtualdomains", - "puppet:///exim/common/virtualdomains" ] + content => template("exim/virtualdomains.erb") ; "/etc/exim4/whitelist": require => Package["exim4-daemon-heavy"], diff --git a/modules/exim/templates/virtualdomains.erb b/modules/exim/templates/virtualdomains.erb new file mode 100644 index 00000000..15158d78 --- /dev/null +++ b/modules/exim/templates/virtualdomains.erb @@ -0,0 +1,62 @@ +## +## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. +## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git +## + +# This file lists the virtual domains that this host should handle. The +# format is +# host: user=user group=group directory=dir +# Host may be a wildcard. +# User/Group are the symbolic names of the uid/gid to operate under when +# performing deliveries for this name. These should not be root! +# Directory is the directory to look in for data files. The directory and +# files may be group writable. The first file to lookup is DIR/aliases +# which is a traditional exim/sendmail alias file. You can specify +# users, patterns, pipes and filenames. If that fails then +# .forward-foo is tried, should that fail then .forward-default is tried. +# Finally the email will bounce. + +<%= +vdoms = case fqdn + + when "gluck.debian.org" then "ddtp.debian.org: user=grisu group=Debian directory=/org/ddtp.debian.org/mail +admin.debian.org: user=mail_admin group=mail_admin directory=/org/admin.debian.org/mail/ +popcon.debian.org: user=popcon group=popcon directory=/org/popcon.debian.org/mail/ + +debian.com: user=nobody group=Debian directory=/org/misc/star.debian.org/ +debian.net: user=nobody group=Debian directory=/org/misc/star.debian.org/" + + when "handel.debian.org" then "puppet.debian.org: user=sgran group=Debian directory=/srv/puppet.debian.org/mail" + + when "klecker.debian.org" then "security.debian.org: user=mail_security group=nogroup directory=/org/security.debian.org/mail/ +non-us.debian.org: user=katie group=debadmin directory=/org/non-us.debian.org/mail/ +www-master.debian.org: user=debwww group=debwww directory=/org/www.debian.org/mail/" + + when "master.debian.org" then "vote.debian.org: user=secretary group=debvote directory=/org/vote.debian.org/mail +packages.qa.debian.org: user=qa group=qa directory=/org/packages.qa.debian.org/mail +bugs.qa.debian.org: user=cjwatson group=qa directory=/org/bugs.qa.debian.org/mail" + + when "merkel.debian.org" then "qa.debian.org: user=qa group=qa directory=/org/qa.debian.org/mail/ +bugs.qa.debian.org: user=nobody group=nogroup directory=/org/bugs.qa.debian.org/mail/ +nm.debian.org: user=nm group=nm directory=/org/nm.debian.org/mail/" + + when "powell.debian.org" then "packages.debian.org: user=nobody group=Debian directory=/org/packages.debian.org/mail/" + + when "raff.debian.org" then "buildd.debian.org: user=wbadm group=wbadm directory=/srv/buildd.debian.org/mail +logs.buildd.debian.org: user=wbadm group=wbadm directory=/srv/logs.buildd.debian.org/mail" + + when "ries.debian.org" then "release.debian.org: user=release group=debian-release directory=/org/release.debian.org/mail +ftp-master.debian.org: user=dak group=debadmin directory=/srv/ftp.debian.org/mail group_writable=true" + + when "rietz.debian.org" then "bugs.debian.org: user=debbugs group=debbugs directory=/srv/bugs.debian.org/mail" + + when "samosa.debian.org" then "db.debian.org: user=mail_db group=nogroup directory=/org/db.debian.org/mail" + + when "spohr.debian.org" then "rt.debian.org: user=rt group=rt directory=/srv/rt.debian.org/mail" + + when "tartini.debian.org" then "forums.debian.net: user=forums group=forums directory=/srv/forums.debian.net/mail" + + when "widor.debian.org" then "wiki.debian.org: user=wiki group=wikiadm directory=/org/wiki.debian.org/mail" +end +vdoms +-%>