22 lines
894 B
CFEngine3
22 lines
894 B
CFEngine3
|
# THIS FILE IS CONTROLLED BY ANSIBLE - DO NOT CHANGE IN DEPLOYMENT!
|
||
|
|
||
|
|
||
|
# man pgsql_table
|
||
|
|
||
|
user = {{ mailserver.postgresql.username }}
|
||
|
password = {{ mailserver.postgresql.password }}
|
||
|
dbname = {{ mailserver.postgresql.dbname }}
|
||
|
hosts = {{ mailserver.postgresql.host }}
|
||
|
query = insert into mail_from (id, original, rewritten)
|
||
|
values (nextval('mail_from_id_seq'), '%s',
|
||
|
case
|
||
|
when regexp_replace('%s', '.*@([^@]+)$', '\1') in (select name from domains)
|
||
|
then case
|
||
|
when '%s'~*'{{ mailserver.postfix.verp_marker }}-\d+@'
|
||
|
then '%s'
|
||
|
else regexp_replace('%s', '^(.*)@[^@]+$', '\1') || case when '%s'~'\+' then '{{ mailserver.postfix.verp_marker }}-' else '+{{ mailserver.postfix.verp_marker }}-' end || lastval()::text || '@' || regexp_replace('%s', '.*@([^@]+)$', '\1')
|
||
|
end
|
||
|
else '%s'
|
||
|
end
|
||
|
) on conflict (rewritten) do nothing returning rewritten
|