"mydestination": value => "$postfix_mydestination";
"mynetworks": value => "$postfix_mynetworks";
"relay_domains": value => '$mydestination';
- "transport_maps": value => "hash:/etc/postfix/transport";
+ "transport_maps": value => "hash:/etc/postfix/transport, regexp:/etc/postfix/transport_regexp";
"mailbox_command": value => '/usr/bin/maildrop -d ${USER}';
"virtual_mailbox_base": value => '/var/mail/virtual';
"virtual_uid_maps": value => 'static:5000';
}
postfix::config { "virtual_alias_maps":
- value => 'hash:/etc/postfix/virtual, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf',
+ value => 'hash:/etc/postfix/virtual, regexp:/etc/postfix/virtual_regexp, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf',
require => File['/etc/postfix/sql/mysql_virtual_alias_maps.cf',
'/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf',
'/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf' ],
content => template('mail/sympa/sympa.conf.erb'),
require => [ File['/etc/sympa'], User['sympa'] ],
}
+
+ file { "/etc/postfix/transport_regexp":
+ ensure => present,
+ owner => root,
+ group => root,
+ mode => 0644,
+ content => template('mail/postfix/transport_regexp.erb'),
+ notify => Service['postfix'],
+ }
+
+ file { "/etc/postfix/virtual_regexp":
+ ensure => present,
+ owner => root,
+ group => root,
+ mode => 0644,
+ content => template('mail/postfix/virtual_regexp.erb'),
+ notify => Service['postfix'],
+ }
+
+ postfix::config {
+ "sympa_destination_recipient_limit": value => '1';
+ "sympabounce_destination_recipient_limit": value => '1';
+ }
}
--- /dev/null
+/^.*+owner\@<%= sympa_subdomain.gsub(/\./, '\.') %>\.(.*)$/ sympabounce:
+/^.*\@<%= sympa_subdomain.gsub(/\./, '\.') %>\.(.*)$/ sympa:
--- /dev/null
+/^(.*)-owner\@<%= sympa_subdomain.gsub(/\./, '\.') %>\.(.*)$/ $1+owner@$2