summaryrefslogtreecommitdiffstats
path: root/roles/MX/tasks/main.yml
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2013-12-02 23:46:01 +0100
committerGuilhem Moulin <guilhem@fripost.org>2015-06-07 02:51:11 +0200
commitc79f18ff9a04a7534dba3c288bc9606f17786b16 (patch)
tree2e0f1d72ad481804dd5f9dff680737fe5df12f21 /roles/MX/tasks/main.yml
parent1a50ad8f85ae7b42d7749b43d8f01adb663114ff (diff)
Rename the role 'mx' into 'MX'.
Other abreviations are upper case.
Diffstat (limited to 'roles/MX/tasks/main.yml')
-rw-r--r--roles/MX/tasks/main.yml74
1 files changed, 74 insertions, 0 deletions
diff --git a/roles/MX/tasks/main.yml b/roles/MX/tasks/main.yml
new file mode 100644
index 0000000..e2da61e
--- /dev/null
+++ b/roles/MX/tasks/main.yml
@@ -0,0 +1,74 @@
+- name: Install Postfix & Postgrey
+ apt: pkg={{ item }}
+ with_items:
+ - postfix
+ - postfix-pcre
+ - postfix-ldap
+ - postfix-cdb
+ - 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
+
+- 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