2019-09-09 01:15:23 -03:00

70 lines
2.5 KiB
YAML

---
- name: Template LDAP lookup tables
template:
src: ldap_table.cf.j2
dest: "{{ postfix_mountpoint }}/{{ domain }}_ldap_{{ item }}.cf"
when: >-
postfix_mail_domains[domain][item+'_lookup'].provider
| default(postfix_lookup_provider) == 'ldap' or
( item == 'group' and postfix_ldap_use_group_alias and
postfix_mail_domains[domain]['alias_lookup'].provider
| default(postfix_lookup_provider) == 'ldap' )
loop:
- user
- alias
- group
notify: reload postfix
- name: Template SQLite lookup tables
template:
src: sqlite_table.cf.j2
dest: "{{ postfix_mountpoint }}/{{ domain }}_sqlite_{{ item }}.cf"
when:
- postfix_mail_domains[domain][item+'_lookup'].provider|default(postfix_lookup_provider) == 'sqlite'
loop:
- user
- alias
notify: reload postfix
- name: Template file user lookup table
blockinfile:
block: |
{% for item in postfix_mail_domains[domain]['users']|default([]) -%}
{% if item is string %}{{ item }} /nomailbox/{{ item }}
{% else %}{{ item.user }} {{ item.mailbox }}
{% endif %}{% endfor %}
dest: "{{ postfix_mail_domains[domain].user_lookup.file |
default('/etc/postfix/'+domain+'_users') |
regex_replace('^/etc/postfix',postfix_mountpoint) }}"
marker: "# {mark} ANSIBLE-MANAGED USERS"
create: yes
when:
- postfix_mail_domains[domain].user_lookup.provider|default(postfix_lookup_provider) == 'file'
notify: postmap hash users
- name: Template file alias lookup table
blockinfile:
block: |
{% for key in postfix_mail_domains[domain]['aliases']|default([]) -%}
{{ key.alias }} {{ key.dest }}
{% endfor %}
dest: "{{ postfix_mail_domains[domain].user_lookup.file |
default('/etc/postfix/'+domain+'_aliases') |
regex_replace('^/etc/postfix',postfix_mountpoint) }}"
marker: "# {mark} ANSIBLE-MANAGED ALIASES"
create: yes
when:
- postfix_mail_domains[domain].alias_lookup.provider|default(postfix_lookup_provider) == 'file'
notify: postmap hash aliases
- name: Template no-reply aliases file
copy:
content: |
{% for address in postfix_mail_domains[domain].noreply_aliases|default(['noreply']) %}
{{ address }}@{{ domain }} _dev_null
{% endfor %}
dest: "{{ postfix_mail_domains[domain].noreply_file |
default('/etc/postfix/'+domain+'_noreply') |
regex_replace('^/etc/postfix',postfix_mountpoint) }}"
notify: postmap no reply aliases