---

- name: Ensure Matrix base path exists
  ansible.builtin.file:
    path: "{{ item }}"
    state: directory
    mode: "{{ matrix_base_data_path_mode }}"
    owner: "{{ matrix_user_username }}"
    group: "{{ matrix_user_groupname }}"
  with_items:
    - "{{ matrix_base_data_path }}"

- name: Preserve vars.yml on the server for easily restoring if it gets lost later on
  ansible.builtin.copy:
    src: "{{ matrix_vars_yml_snapshotting_src }}"
    dest: "{{ matrix_base_data_path }}/vars.yml"
    owner: "{{ matrix_user_username }}"
    group: "{{ matrix_user_groupname }}"
    mode: '0660'
  when: "matrix_vars_yml_snapshotting_enabled | bool"

- name: Ensure Matrix network is created in Docker
  community.docker.docker_network:
    name: "{{ matrix_docker_network }}"
    driver: bridge

- name: Ensure matrix-remove-all script created
  ansible.builtin.template:
    src: "{{ role_path }}/templates/usr-local-bin/matrix-remove-all.j2"
    dest: "{{ matrix_local_bin_path }}/matrix-remove-all"
    mode: 0750
