---

- name: Fail if required mautrix-facebook 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_facebook_public_endpoint', when: true}
    - {'name': 'matrix_mautrix_facebook_appservice_token', when: true}
    - {'name': 'matrix_mautrix_facebook_homeserver_token', when: true}
    - {'name': 'matrix_mautrix_facebook_database_hostname', when: "{{ matrix_mautrix_facebook_database_engine == 'postgres' }}"}

- when: "matrix_mautrix_facebook_database_engine == 'sqlite' and matrix_mautrix_facebook_docker_image.endswith(':da1b4ec596e334325a1589e70829dea46e73064b')"
  block:
    - name: Inject warning if on an old SQLite-supporting version
      ansible.builtin.set_fact:
        devture_playbook_runtime_messages_list: |
          {{
            devture_playbook_runtime_messages_list | default([])
            +
            [
              "NOTE: Your mautrix-facebook bridge is still on SQLite and on the last version that supported it, before support was dropped. Support has been subsequently re-added in v0.3.2, so we advise you to upgrade (by removing your `matrix_mautrix_facebook_docker_image` definition from vars.yml)"
            ]
          }}