---

- ansible.builtin.fail:
    msg: |-
      The Google Hangouts service was discontinued on November 1st, 2022.
      The mautrix-hangouts bridge (which you have enabled via the `matrix_mautrix_hangouts_enabled` variable) will be removed from the playbook soon (in February 2025).

      We suggest that you uninstall this bridge by:
      1. Tweaking your `vars.yml` file - setting `matrix_mautrix_hangouts_enabled` to `false` or better yet removing all `matrix_mautrix_hangouts_*` variables
      2. Re-running the playbook with the `setup-all` (e.g. `just setup-all`) or `setup-mautrix-hangouts` tag (e.g. `just run-tags setup-mautrix-hangouts`), so that uninstallation tasks will run.

      In the future, an error will be raised for any `matrix_mautrix_hangouts_*` variables that the playbook detects in your `vars.yml` configuration file.

      Also see: https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3863

- name: Fail if required mautrix-hangouts settings not defined
  ansible.builtin.fail:
    msg: >-
      You need to define a required configuration setting (`{{ item.name }}`).
  when: "item.when | bool and vars[item.name] == ''"
  with_items:
    - {'name': 'matrix_mautrix_hangouts_public_endpoint', when: true}
    - {'name': 'matrix_mautrix_hangouts_appservice_token', when: true}
    - {'name': 'matrix_mautrix_hangouts_homeserver_token', when: true}
    - {'name': 'matrix_mautrix_hangouts_homeserver_address', when: true}
    - {'name': 'matrix_mautrix_hangouts_database_hostname', when: "{{ matrix_mautrix_hangouts_database_engine == 'postgres' }}"}
    - {'name': 'matrix_mautrix_hangouts_container_network', when: true}
    - {'name': 'matrix_mautrix_hangouts_metrics_proxying_hostname', when: "{{ matrix_mautrix_hangouts_metrics_proxying_enabled }}"}
    - {'name': 'matrix_mautrix_hangouts_metrics_proxying_path_prefix', when: "{{ matrix_mautrix_hangouts_metrics_proxying_enabled }}"}
    - {'name': 'matrix_mautrix_hangouts_container_labels_public_endpoint_hostname', when: "{{ matrix_mautrix_hangouts_container_labels_public_endpoint_enabled }}"}
    - {'name': 'matrix_mautrix_hangouts_container_labels_public_endpoint_path_prefix', when: "{{ matrix_mautrix_hangouts_container_labels_public_endpoint_enabled }}"}
