--- - name: "Configure {{ keycloak.service_name }} service script wrapper" become: true ansible.builtin.template: src: keycloak-service.sh.j2 dest: "{{ keycloak_dest }}/keycloak-service.sh" owner: root group: root mode: 0755 notify: - restart keycloak - name: Determine JAVA_HOME for selected JVM RPM ansible.builtin.set_fact: rpm_java_home: "/lib/jvm/java-{{ keycloak_jvm_package | regex_search('(?<=java-)[0-9.]+') }}-openjdk-{{ 'arm64' if ansible_architecture == 'aarch64' else 'amd64' }}" when: - ansible_facts.os_family == 'Debian' - name: Determine JAVA_HOME for selected JVM RPM ansible.builtin.set_fact: rpm_java_home: "/etc/alternatives/jre_{{ keycloak_jvm_package | regex_search('(?<=java-)[0-9.]+') }}" when: - ansible_facts.os_family == 'RedHat' - name: "Configure sysconfig file for {{ keycloak.service_name }} service" become: true ansible.builtin.template: src: keycloak-sysconfig.j2 dest: /etc/default/keycloak owner: root group: root mode: 0644 vars: keycloak_rpm_java_home: "{{ rpm_java_home }}" when: - ansible_facts.os_family == "Debian" notify: - restart keycloak - name: "Configure sysconfig file for {{ keycloak.service_name }} service" become: true ansible.builtin.template: src: keycloak-sysconfig.j2 dest: /etc/sysconfig/keycloak owner: root group: root mode: 0644 vars: keycloak_rpm_java_home: "{{ rpm_java_home }}" when: - ansible_facts.os_family == "RedHat" notify: - restart keycloak - name: "Configure systemd unit file for {{ keycloak.service_name }} service" ansible.builtin.template: src: keycloak.service.j2 dest: /etc/systemd/system/keycloak.service owner: root group: root mode: 0644 become: true register: systemdunit notify: - restart keycloak - name: "Start and wait for {{ keycloak.service_name }} service (first node db)" ansible.builtin.include_tasks: start_keycloak.yml run_once: true when: keycloak_db_enabled - name: "Start and wait for {{ keycloak.service_name }} service (remaining nodes)" ansible.builtin.include_tasks: start_keycloak.yml - name: Check service status ansible.builtin.command: "systemctl status keycloak" register: keycloak_service_status changed_when: false - name: Verify service status ansible.builtin.assert: that: - keycloak_service_status is defined - keycloak_service_status.stdout is defined - name: Flush handlers ansible.builtin.meta: flush_handlers