- name: install postfix
apt: name=postfix,bsd-mailx state=latest
-- name: install postfix main.cf
- register: config_main
+- name: install postfix-mysql
+ apt: name=postfix-mysql state=latest
+ when: postfix.vmail_mysql_password is defined
+- name: install postfix config
+ register: postfix_config
template:
- src: templates/main.cf
- dest: /etc/postfix/main.cf
+ dest: /etc/postfix/{{ item }}
+ src: templates/{{ item }}
+ with_items:
+ - main.cf
+ - master.cf
+- name: install postfix mysql config
+ register: postfix_mysql
+ template:
+ dest: /etc/postfix/{{ item }}
+ src: templates/{{ item }}
+ mode: u=rw,g=r,o=
+ group: postfix
+ with_items:
+ - mysql_vmail_aliases.cf
+ - mysql_vmail_senders.cf
+ - mysql_vmail_users.cf
+ when: postfix.vmail_mysql_password is defined
+- name: create empty maps
+ copy:
+ dest: /etc/postfix/{{ item }}
+ content: ""
+ force: no
+ with_items:
+ - virtual_alias_map
+ - transport_map
+ when: postfix.virtual_mailbox_domains is defined
- name: reload postfix
service: name=postfix state=restarted enabled=yes
- when: config_main.changed
+ when: postfix_config.changed or postfix_mysql.changed
- name: delete old local-mail cronjob
file: path=/etc/cron.daily/local-mail state=absent
- name: install check-for-local-mail cronjob
copy:
- src: files/check-for-local-mail
dest: /etc/cron.daily/check-for-local-mail
+ src: files/check-for-local-mail
mode: u=rwx,g=rx,o=rx