File tree Expand file tree Collapse file tree 2 files changed +40
-3
lines changed
ansible/postgresql-playbooks Expand file tree Collapse file tree 2 files changed +40
-3
lines changed Original file line number Diff line number Diff line change 235235 PGPASSWORD : " {{ repmgr_password }}"
236236 register : repmgr_connection_test
237237
238- - name : Start repmgrd service
238+ - name : Determine if repmgrd needs restart
239+ ansible.builtin.set_fact :
240+ repmgrd_needs_restart : >-
241+ {{
242+ (update_repmgr_password is defined and update_repmgr_password.changed) or
243+ primary_conf_result.changed
244+ }}
245+
246+ - name : Restart repmgrd if password or config changed
247+ ansible.builtin.systemd :
248+ name : " repmgrd@{{ postgresql_version }}-main"
249+ state : restarted
250+ enabled : yes
251+ daemon_reload : yes
252+ when :
253+ - repmgr_connection_test is succeeded
254+ - repmgrd_needs_restart
255+
256+ - name : Start repmgrd service (if not restarted)
239257 ansible.builtin.systemd :
240258 name : " repmgrd@{{ postgresql_version }}-main"
241259 state : started
242260 enabled : yes
243261 daemon_reload : yes
244- when : repmgr_connection_test is succeeded
262+ when :
263+ - repmgr_connection_test is succeeded
264+ - not repmgrd_needs_restart
245265
246266 - name : Verify repmgrd is running
247267 ansible.builtin.systemd :
Original file line number Diff line number Diff line change 8484 group : postgres
8585 mode : " {{ item.mode }}"
8686 backup : yes
87+ register : replica_conf_result
8788 loop :
8889 - src : ../templates/postgresql/pg_hba.conf.j2
8990 dest : " {{ postgresql_conf_dir }}/pg_hba.conf"
303304 sudo -u postgres repmgr node status
304305 when : (verify_replica_reg.query_result[0].cnt | int) != 1
305306
306- - name : Start repmgrd service
307+ - name : Determine if repmgrd needs restart
308+ ansible.builtin.set_fact :
309+ repmgrd_needs_restart : >-
310+ {{
311+ replica_conf_result.changed
312+ }}
313+
314+ - name : Restart repmgrd if config changed
315+ ansible.builtin.systemd :
316+ name : " repmgrd@{{ postgresql_version }}-main"
317+ state : restarted
318+ enabled : yes
319+ daemon_reload : yes
320+ when : repmgrd_needs_restart
321+
322+ - name : Start repmgrd service (if not restarted)
307323 ansible.builtin.systemd :
308324 name : " repmgrd@{{ postgresql_version }}-main"
309325 state : started
310326 enabled : yes
311327 daemon_reload : yes
328+ when : not repmgrd_needs_restart
312329
313330 - name : Verify repmgrd is running
314331 ansible.builtin.systemd :
You can’t perform that action at this time.
0 commit comments