diff options
Diffstat (limited to 'roles/mx')
-rw-r--r-- | roles/mx/tasks/main.yml | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/roles/mx/tasks/main.yml b/roles/mx/tasks/main.yml new file mode 100644 index 0000000..bd04feb --- /dev/null +++ b/roles/mx/tasks/main.yml @@ -0,0 +1,75 @@ +- name: Install Postfix & Postgrey + apt: pkg={{ item }} + with_items: + - postfix + - postfix-pcre + - postfix-ldap + - postgrey + - libnet-ldap-perl + - libauthen-sasl-perl + +- name: Configure Postgrey + lineinfile: dest=/etc/default/postgrey + regexp='^POSTGREY_OPTS=' + line='POSTGREY_OPTS="--privacy --unix=/var/spool/postfix-{{ postfix_instance[inst].name }}/private/postgrey"' + owner=root group=root + mode=0644 + register: r + notify: + - Restart Postgrey + +- name: Start Postgrey + service: name=postgrey state=started + when: not r.changed + +- meta: flush_handlers + +- name: Configure Postfix + template: src=etc/postfix/main.cf.j2 + dest=/etc/postfix-{{ postfix_instance[inst].name }}/main.cf + owner=root group=root + mode=0644 + register: r + notify: + - Restart Postfix + +- name: Create directory /etc/postfix-.../virtual + file: path=/etc/postfix-{{ postfix_instance[inst].name }}/virtual + owner=root group=root + state=directory + mode=0755 + +- name: Copy lookups tables + copy: src=etc/postfix/virtual/{{ item }} + dest=/etc/postfix-{{ postfix_instance[inst].name }}/virtual/{{ item }} + owner=root group=root + mode=0644 + with_items: + - mailbox_domains.cf + - reserved_maps.pcre + - alias_maps.cf + - lists_maps.cf + - alias_catchall_maps.cf + - mailbox_maps.cf + - reserved_transport_maps + - transport_lists_maps.cf + notify: + - Restart Postfix + +- name: Compile the Reserved Transport Maps + postmap: cmd=postalias instance={{ postfix_instance[inst].name }} + src=/etc/postfix-{{ postfix_instance[inst].name }}/virtual/reserved_transport_maps db=cdb + owner=root group=root + mode=0644 + +- name: Copy reserved-alias.pl + copy: src=usr/local/sbin/reserved-alias.pl + dest=/usr/local/sbin/reserved-alias.pl + owner=root group=root + mode=0755 + +- name: Start Postfix + service: name=postfix state=started + when: not r.changed + +- meta: flush_handlers |