summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2014-07-04 00:37:40 +0200
committerGuilhem Moulin <guilhem@fripost.org>2015-06-07 02:52:24 +0200
commit58e65628313da8990f1e5cb26bfe4e10e128034e (patch)
tree1ca5321944c66304b6afad7acf9dbc37d8f0b4f5
parent535741b9caaa7b1480d3a6e8290769b1e2e0a55e (diff)
Reload Postfix upon configuration change, but don't restart it.
(Unless a new instance is created, or the master.cf change is modified.) Changing some variables, such as inet_protocols, require a full restart, but most of the time it's overkill.
-rw-r--r--roles/IMAP/handlers/main.yml3
-rw-r--r--roles/IMAP/tasks/mda.yml8
-rw-r--r--roles/MSA/handlers/main.yml3
-rw-r--r--roles/MSA/tasks/main.yml8
-rw-r--r--roles/MX/handlers/main.yml3
-rw-r--r--roles/MX/tasks/main.yml8
-rw-r--r--roles/common/handlers/main.yml1
-rw-r--r--roles/common/tasks/mail.yml6
-rw-r--r--roles/lists/handlers/main.yml3
-rw-r--r--roles/lists/tasks/mail.yml8
-rw-r--r--roles/out/handlers/main.yml3
-rw-r--r--roles/out/tasks/main.yml8
-rw-r--r--roles/webmail/handlers/main.yml3
-rw-r--r--roles/webmail/tasks/mail.yml8
14 files changed, 21 insertions, 52 deletions
diff --git a/roles/IMAP/handlers/main.yml b/roles/IMAP/handlers/main.yml
index c14468a..46cf1fb 100644
--- a/roles/IMAP/handlers/main.yml
+++ b/roles/IMAP/handlers/main.yml
@@ -2,9 +2,6 @@
- name: Restart Dovecot
service: name=dovecot state=restarted
-- name: Restart Postfix
- service: name=postfix state=restarted
-
- name: Reload Postfix
service: name=postfix state=reloaded
diff --git a/roles/IMAP/tasks/mda.yml b/roles/IMAP/tasks/mda.yml
index a914f17..2d63f0e 100644
--- a/roles/IMAP/tasks/mda.yml
+++ b/roles/IMAP/tasks/mda.yml
@@ -9,9 +9,8 @@
dest=/etc/postfix-{{ postfix_instance[inst].name }}/main.cf
owner=root group=root
mode=0644
- register: r
notify:
- - Restart Postfix
+ - Reload Postfix
- name: Create directory /etc/postfix-.../virtual
file: path=/etc/postfix-{{ postfix_instance[inst].name }}/virtual
@@ -55,8 +54,7 @@
owner=root group=root
mode=0644
+- meta: flush_handlers
+
- name: Start Postfix
service: name=postfix state=started
- when: not r.changed
-
-- meta: flush_handlers
diff --git a/roles/MSA/handlers/main.yml b/roles/MSA/handlers/main.yml
index c27834e..99a5db2 100644
--- a/roles/MSA/handlers/main.yml
+++ b/roles/MSA/handlers/main.yml
@@ -1,6 +1,3 @@
---
-- name: Restart Postfix
- service: name=postfix state=restarted
-
- name: Reload Postfix
service: name=postfix state=reloaded
diff --git a/roles/MSA/tasks/main.yml b/roles/MSA/tasks/main.yml
index 30473a6..c7424d8 100644
--- a/roles/MSA/tasks/main.yml
+++ b/roles/MSA/tasks/main.yml
@@ -9,9 +9,8 @@
dest=/etc/postfix-{{ postfix_instance[inst].name }}/main.cf
owner=root group=root
mode=0644
- register: r
notify:
- - Restart Postfix
+ - Reload Postfix
- name: Copy the Regex to anonymize senders
# no need to reload upon change, as cleanup(8) is short-running
@@ -20,8 +19,7 @@
owner=root group=root
mode=0644
+- meta: flush_handlers
+
- name: Start Postfix
service: name=postfix state=started
- when: not r.changed
-
-- meta: flush_handlers
diff --git a/roles/MX/handlers/main.yml b/roles/MX/handlers/main.yml
index 21c736a..0482a49 100644
--- a/roles/MX/handlers/main.yml
+++ b/roles/MX/handlers/main.yml
@@ -2,8 +2,5 @@
- name: Restart Postgrey
service: name=postgrey state=restarted
-- name: Restart Postfix
- service: name=postfix state=restarted
-
- name: Reload Postfix
service: name=postfix state=reloaded
diff --git a/roles/MX/tasks/main.yml b/roles/MX/tasks/main.yml
index accca14..a372cf4 100644
--- a/roles/MX/tasks/main.yml
+++ b/roles/MX/tasks/main.yml
@@ -30,9 +30,8 @@
dest=/etc/postfix-{{ postfix_instance[inst].name }}/main.cf
owner=root group=root
mode=0644
- register: r
notify:
- - Restart Postfix
+ - Reload Postfix
- name: Create directory /etc/postfix-.../virtual
file: path=/etc/postfix-{{ postfix_instance[inst].name }}/virtual
@@ -68,8 +67,7 @@
owner=root group=root
mode=0755
+- meta: flush_handlers
+
- name: Start Postfix
service: name=postfix state=started
- when: not r.changed
-
-- meta: flush_handlers
diff --git a/roles/common/handlers/main.yml b/roles/common/handlers/main.yml
index d20f7b6..13712fe 100644
--- a/roles/common/handlers/main.yml
+++ b/roles/common/handlers/main.yml
@@ -29,7 +29,6 @@
- name: Restart ntp
service: name=ntp state=restarted
-# TODO: should be in a separate file, since it's used by other roles
- name: Restart Postfix
service: name=postfix state=restarted
diff --git a/roles/common/tasks/mail.yml b/roles/common/tasks/mail.yml
index 3b2a41f..cbec8cf 100644
--- a/roles/common/tasks/mail.yml
+++ b/roles/common/tasks/mail.yml
@@ -32,17 +32,17 @@
dest=/etc/postfix/master.cf
owner=root group=root
mode=0644
+ register: r3
notify:
- - Reload Postfix
+ - Restart Postfix
- name: Configure Postfix (2)
template: src=etc/postfix/main.cf.j2
dest=/etc/postfix/main.cf
owner=root group=root
mode=0644
- register: r3
notify:
- - Restart Postfix
+ - Reload Postfix
- name: Create directory /etc/postfix/ssl
file: path=/etc/postfix/ssl
diff --git a/roles/lists/handlers/main.yml b/roles/lists/handlers/main.yml
index 308f708..76084e4 100644
--- a/roles/lists/handlers/main.yml
+++ b/roles/lists/handlers/main.yml
@@ -1,7 +1,4 @@
---
-- name: Restart Postfix
- service: name=postfix state=restarted
-
- name: Reload Postfix
service: name=postfix state=reloaded
diff --git a/roles/lists/tasks/mail.yml b/roles/lists/tasks/mail.yml
index eb2fcc4..a08ff5c 100644
--- a/roles/lists/tasks/mail.yml
+++ b/roles/lists/tasks/mail.yml
@@ -9,9 +9,8 @@
dest=/etc/postfix-{{ postfix_instance[inst].name }}/main.cf
owner=root group=root
mode=0644
- register: r
notify:
- - Restart Postfix
+ - Reload Postfix
- name: Create directory /etc/postfix-.../virtual
file: path=/etc/postfix-{{ postfix_instance[inst].name }}/virtual
@@ -28,8 +27,7 @@
- mailbox_domains.cf
- transport_list.cf
+- meta: flush_handlers
+
- name: Start Postfix
service: name=postfix state=started
- when: not r.changed
-
-- meta: flush_handlers
diff --git a/roles/out/handlers/main.yml b/roles/out/handlers/main.yml
index 21c736a..0482a49 100644
--- a/roles/out/handlers/main.yml
+++ b/roles/out/handlers/main.yml
@@ -2,8 +2,5 @@
- name: Restart Postgrey
service: name=postgrey state=restarted
-- name: Restart Postfix
- service: name=postfix state=restarted
-
- name: Reload Postfix
service: name=postfix state=reloaded
diff --git a/roles/out/tasks/main.yml b/roles/out/tasks/main.yml
index 69d9ead..68f438f 100644
--- a/roles/out/tasks/main.yml
+++ b/roles/out/tasks/main.yml
@@ -6,9 +6,8 @@
dest=/etc/postfix-{{ postfix_instance[inst].name }}/main.cf
owner=root group=root
mode=0644
- register: r
notify:
- - Restart Postfix
+ - Reload Postfix
- name: Build the Postfix relay clientcerts map
sudo: False
@@ -29,8 +28,7 @@
owner=root group=root
mode=0644
+- meta: flush_handlers
+
- name: Start Postfix
service: name=postfix state=started
- when: not r.changed
-
-- meta: flush_handlers
diff --git a/roles/webmail/handlers/main.yml b/roles/webmail/handlers/main.yml
index 308f708..76084e4 100644
--- a/roles/webmail/handlers/main.yml
+++ b/roles/webmail/handlers/main.yml
@@ -1,7 +1,4 @@
---
-- name: Restart Postfix
- service: name=postfix state=restarted
-
- name: Reload Postfix
service: name=postfix state=reloaded
diff --git a/roles/webmail/tasks/mail.yml b/roles/webmail/tasks/mail.yml
index 4bf4363..e2dea38 100644
--- a/roles/webmail/tasks/mail.yml
+++ b/roles/webmail/tasks/mail.yml
@@ -6,12 +6,10 @@
dest=/etc/postfix-{{ postfix_instance[inst].name }}/main.cf
owner=root group=root
mode=0644
- register: r
notify:
- - Restart Postfix
+ - Reload Postfix
+
+- meta: flush_handlers
- name: Start Postfix
service: name=postfix state=started
- when: not r.changed
-
-- meta: flush_handlers