summaryrefslogtreecommitdiff
path: root/puppet/modules/site_postfix/templates/virtual-aliases.erb
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2015-09-11 10:34:56 -0700
committerelijah <elijah@riseup.net>2015-09-11 10:34:56 -0700
commit702bf139f407d60e7c297ceb67fc6c30fead1e61 (patch)
treebfb3276e04832f9d3e5fc2edb396a8d5330a4ae7 /puppet/modules/site_postfix/templates/virtual-aliases.erb
parentd113bf1b2cd3cb6a94fbe20aa711bf9b9b93286f (diff)
switch aliases to use virtual_alias_maps
Diffstat (limited to 'puppet/modules/site_postfix/templates/virtual-aliases.erb')
-rw-r--r--puppet/modules/site_postfix/templates/virtual-aliases.erb22
1 files changed, 22 insertions, 0 deletions
diff --git a/puppet/modules/site_postfix/templates/virtual-aliases.erb b/puppet/modules/site_postfix/templates/virtual-aliases.erb
new file mode 100644
index 00000000..c474e734
--- /dev/null
+++ b/puppet/modules/site_postfix/templates/virtual-aliases.erb
@@ -0,0 +1,22 @@
+#
+# This file is managed by puppet.
+#
+# This is a map of custom, non-standard aliases. The contents of this file
+# are derived from the node property `mx.aliases`.
+#
+
+#
+# enable these virtual domains:
+#
+<%= @domain %> enabled
+<%- @aliases.keys.map {|addr| addr.split('@')[1] }.compact.sort.uniq.each do |virt_domain| -%>
+<%= virt_domain %> enabled
+<%- end %>
+
+#
+# virtual aliases:
+#
+<%- @aliases.keys.sort.each do |from| -%>
+<%- full_address = from =~ /@/ ? from : from + "@" + @domain -%>
+<%= full_address %> <%= [@aliases[from]].flatten.map{|a| a =~ /@/ ? a : a + "@" + @domain}.join(', ') %>
+<%- end -%>