# Update the keycloak installation # Stop the service - name: Stopping the service for the update. systemd: name: "{{ keycloak_service_name }}" state: stopped ignore_errors: true # Delete the data/tx-object-store/ transaction directory - name: Deleting the data/tx-object-store/ transaction directory file: path: "{{ keycloak_base_path }}/keycloak-{{ keycloak_previous_version }}/standalone/data/tx-object-store/" state: absent # Backup the old installation #- name: Making a copy of the current installation # NB: Not needed as we are installing to a new directory anyways. We don't touch # the old directory. # Backup the database - name: Backing up the of database shell: mysqldump keycloak > /root/keycloak-backup-$(date --iso).sql # Upgrade the server #- name: Upgrading the server with the new files # This is actually reinstalling the files. # copy the KEYCLOAK_HOME/standalone/ directory from the previous installation over the directory in the new installation. - name: Copying the standalone directory from the previous installation copy: src: "{{ keycloak_base_path }}/keycloak-{{ keycloak_previous_version }}/standalone" dest: "{{ keycloak_base_path }}/keycloak-{{ keycloak_version }}/standalone" remote_src: yes # Run the upgrade script # bin/jboss-cli.sh --file=bin/migrate-standalone-ha.cli - name: Running the upgrade script shell: "{{ keycloak_jboss_home}}/bin/jboss-cli.sh --file={{ keycloak_jboss_home}}/bin/migrate-standalone-ha.cli" - name: Force systemd to reread configs ansible.builtin.systemd: daemon_reload: yes