---

- name: Fail if REST Auth endpoint not configured
  fail:
    msg: "You have enabled the REST Auth password provider, but have not configured its endpoint in the `matrix_synapse_ext_password_provider_rest_auth_endpoint` variable. Consult the documentation."
  when: "matrix_synapse_ext_password_provider_rest_auth_endpoint == ''"

- name: Download matrix-synapse-rest-auth
  get_url:
    url: "{{ matrix_synapse_ext_password_provider_rest_auth_download_url }}"
    dest: "{{ matrix_synapse_ext_path }}/rest_auth_provider.py"
    force: true
    mode: 0440
    owner: "{{ matrix_user_username }}"
    group: "{{ matrix_user_groupname }}"

- set_fact:
    matrix_synapse_password_providers_enabled: true

    matrix_synapse_container_extra_arguments: >
      {{ matrix_synapse_container_extra_arguments|default([]) }}
      +
      ["--mount type=bind,src={{ matrix_synapse_ext_path }}/rest_auth_provider.py,dst={{ matrix_synapse_in_container_python_packages_path }}/rest_auth_provider.py,ro"]

    matrix_synapse_additional_loggers: >
      {{ matrix_synapse_additional_loggers }}
      +
      {{ [{'name': 'rest_auth_provider', 'level': 'INFO'}] }}