40c6e6d7ad
So that we can have complete control of the router order, always template the full set of routers, including the "default" ones. So that it's easy to use the defaults but put them in a different order, define each router in its own variable which can be used in host or group vars to "copy" that router in. Apply this change to lists, firehose, and storyboard, all of which have custom exim routers. Note that firehose intentionally has its localuser router last. Change-Id: I737942b8c15f7020b54e350db885e968a93f806a
79 lines
3.0 KiB
YAML
79 lines
3.0 KiB
YAML
mm_domains: 'lists.openstack.org:lists.zuul-ci.org:lists.airshipit.org:lists.starlingx.io'
|
|
exim_local_domains: "@:{{ mm_domains }}"
|
|
exim_aliases:
|
|
root: "{{ ','.join(listadmins|default([])) }}"
|
|
ambassadors-owner: spam
|
|
community-owner: spam
|
|
foundation-board-confidential-owner: spam
|
|
foundation-board-owner: spam
|
|
foundation-owner: spam
|
|
legal-discuss-owner: spam
|
|
mailman-owner: spam
|
|
marketing-owner: spam
|
|
openstack-announce-owner: spam
|
|
openstack-dev-owner: spam
|
|
openstack-docs-owner: spam
|
|
openstack-fr-owner: spam
|
|
openstack-i18n-owner: spam
|
|
openstack-infra-owner: spam
|
|
openstack-operators-owner: spam
|
|
openstack-owner: spam
|
|
openstack-qa-owner: spam
|
|
openstack-security-owner: spam
|
|
openstack-tc-owner: spam
|
|
openstack-vi-owner: spam
|
|
product-wg-owner: spam
|
|
superuser-owner: spam
|
|
user-committee-owner: spam
|
|
women-of-openstack-owner: spam
|
|
spam: ':fail: delivery temporarily disabled due to ongoing spam flood'
|
|
exim_routers:
|
|
- dnslookup: '{{ exim_dnslookup_router }}'
|
|
- system_aliases: '{{ exim_system_aliases_router }}'
|
|
- localuser: '{{ exim_localuser_router }}'
|
|
- mailman_verp_router: |
|
|
{% raw -%}
|
|
driver = dnslookup
|
|
condition = ${if or{{eq{$sender_host_address}{127.0.0.1}}\
|
|
{eq{$sender_host_address}{::1}}}{yes}{no}}
|
|
{% endraw %}
|
|
domains = !+local_domains
|
|
ignore_target_hosts = <; 0.0.0.0; \
|
|
64.94.110.11; \
|
|
127.0.0.0/8; \
|
|
::1/128;fe80::/10;fe \
|
|
c0::/10;ff00::/8
|
|
senders = "*-bounces@*"
|
|
transport = mailman_verp_smtp
|
|
- mailman_router: |
|
|
driver = accept
|
|
domains = {{ mm_domains }}
|
|
local_part_suffix = -admin : \
|
|
-bounces : -bounces+* : \
|
|
-confirm : -confirm+* : \
|
|
-join : -leave : \
|
|
-owner : -request : \
|
|
-subscribe : -unsubscribe
|
|
local_part_suffix_optional
|
|
require_files = ${lookup{${lc::$domain}}lsearch{/etc/mailman/sites}}/lists/${lc::$local_part}/config.pck
|
|
transport = mailman_transport
|
|
exim_transports:
|
|
- mailman_transport: |
|
|
driver = pipe
|
|
command = /var/lib/mailman/mail/mailman \
|
|
'${if def:local_part_suffix \
|
|
{${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
|
|
{post}}' \
|
|
$local_part
|
|
current_directory = /var/lib/mailman
|
|
environment = MAILMAN_SITE_DIR=${lookup{${lc:$domain}}lsearch{/etc/mailman/sites}}
|
|
group = list
|
|
home_directory = /var/lib/mailman
|
|
user = list
|
|
- mailman_verp_smtp: |
|
|
driver = smtp
|
|
headers_add = Errors-To: ${return_path}
|
|
headers_remove = Errors-To
|
|
max_rcpt = 1
|
|
return_path = ${local_part:$return_path}+$local_part=$domain@${domain:$return_path}
|