--- - name: Create Matrix directories ansible.builtin.file: path: "{{ item }}" state: directory mode: '0755' loop: - "{{ matrix_data_dir }}" - "{{ matrix_data_dir }}/synapse" - "{{ matrix_data_dir }}/element" - name: Generate Synapse config if not present ansible.builtin.command: cmd: > docker run --rm -v {{ matrix_data_dir }}/synapse:/data -e SYNAPSE_SERVER_NAME={{ matrix_domain }} -e SYNAPSE_REPORT_STATS=no ghcr.io/element-hq/synapse:{{ matrix_version }} generate creates: "{{ matrix_data_dir }}/synapse/homeserver.yaml" when: not (molecule_test_mode | default(false)) - name: Deploy Element config ansible.builtin.template: src: element-config.json.j2 dest: "{{ matrix_data_dir }}/element/config.json" mode: '0644' - name: Deploy Matrix docker-compose ansible.builtin.template: src: docker-compose.yml.j2 dest: "{{ matrix_data_dir }}/docker-compose.yml" mode: '0644' notify: restart matrix - name: Start Matrix community.docker.docker_compose_v2: project_src: "{{ matrix_data_dir }}" state: present when: not (molecule_test_mode | default(false))