mirror of
https://github.com/ansible-middleware/keycloak.git
synced 2025-07-30 08:31:39 -07:00
Add restart strategies, and allow custom task include
Co-authored-by: Helmut Wolf <hwo@world-direct.at> Co-authored-by: Guido Grazioli <ggraziol@redhat.com>
This commit is contained in:
parent
1e9a669dea
commit
2d573c2b62
9 changed files with 104 additions and 45 deletions
4
roles/keycloak_quarkus/tasks/restart/none.yml
Normal file
4
roles/keycloak_quarkus/tasks/restart/none.yml
Normal file
|
@ -0,0 +1,4 @@
|
|||
---
|
||||
- name: "Display message"
|
||||
ansible.builtin.debug:
|
||||
msg: "keycloak_quarkus_restart_strategy is none, skipping restart"
|
8
roles/keycloak_quarkus/tasks/restart/serial.yml
Normal file
8
roles/keycloak_quarkus/tasks/restart/serial.yml
Normal file
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
- name: "Restart services in serial, with optional healtch check (keycloak_quarkus_restart_health_check)"
|
||||
throttle: 1
|
||||
loop: "{{ ansible_play_hosts }}"
|
||||
block:
|
||||
- name: "Restart and enable {{ keycloak.service_name }} service on first host"
|
||||
ansible.builtin.include_tasks: ../restart.yml
|
||||
delegate_to: "{{ item }}"
|
34
roles/keycloak_quarkus/tasks/restart/verify_first.yml
Normal file
34
roles/keycloak_quarkus/tasks/restart/verify_first.yml
Normal file
|
@ -0,0 +1,34 @@
|
|||
---
|
||||
- name: Verify first restarted service with health URL, then rest in parallel
|
||||
block:
|
||||
- name: "Restart and enable {{ keycloak.service_name }} service on first host"
|
||||
ansible.builtin.systemd:
|
||||
name: "{{ keycloak.service_name }}"
|
||||
enabled: true
|
||||
state: restarted
|
||||
daemon_reload: true
|
||||
become: true
|
||||
delegate_to: "{{ ansible_play_hosts | first }}"
|
||||
run_once: true
|
||||
|
||||
- name: "Wait until {{ keycloak.service_name }} service becomes active {{ keycloak.health_url }}"
|
||||
ansible.builtin.uri:
|
||||
url: "{{ keycloak.health_url }}"
|
||||
register: keycloak_status
|
||||
until: keycloak_status.status == 200
|
||||
retries: 25
|
||||
delay: 10
|
||||
delegate_to: "{{ ansible_play_hosts | first }}"
|
||||
run_once: true
|
||||
|
||||
- name: Pause to give distributed ispn caches time to (re-)replicate back onto first host
|
||||
ansible.builtin.pause:
|
||||
seconds: "{{ keycloak_quarkus_restart_pause }}"
|
||||
when:
|
||||
- keycloak_quarkus_ha_enabled
|
||||
|
||||
- name: "Restart and enable {{ keycloak.service_name }} service on other hosts"
|
||||
ansible.builtin.include_tasks: ../restart.yml
|
||||
delegate_to: "{{ item }}"
|
||||
loop: "{{ ansible_play_hosts }}"
|
||||
when: inventory_hostname != ansible_play_hosts | first
|
Loading…
Add table
Add a link
Reference in a new issue