---

- name: Ensure Synapse paths exist
  file:
    path: "{{ item.path }}"
    state: directory
    mode: 0750
    owner: "{{ matrix_user_username }}"
    group: "{{ matrix_user_groupname }}"
  with_items:
    - { path: "{{ matrix_synapse_config_dir_path }}", when: true }
    - { path: "{{ matrix_synapse_ext_path }}", when: true }
    - { path: "{{ matrix_synapse_docker_src_files_path }}", when: "{{ matrix_synapse_container_image_self_build }}" }
    # We handle matrix_synapse_media_store_path elsewhere (in ./synapse/setup_install.yml),
    # because if it's using Goofys and it's already mounted (from before),
    # trying to chown/chmod it here will cause trouble.
  when: "(matrix_synapse_enabled|bool or matrix_s3_media_store_enabled|bool) and item.when"

- import_tasks: "{{ role_path }}/tasks/ext/setup.yml"

- import_tasks: "{{ role_path }}/tasks/synapse/workers/setup.yml"

- import_tasks: "{{ role_path }}/tasks/synapse/setup.yml"

- import_tasks: "{{ role_path }}/tasks/goofys/setup.yml"