---
- name: Set common facts
  ansible.builtin.import_tasks: tasks/set-default-facts.yml

- name: Deploy {{ role_name }}
  vars:
    svc: "{{ synapse_svc }}"
    env: "{{ synapse_env }}"
    compose: "{{ synapse_compose }}"
    yml: "{{ synapse_yml }}"
  block:
    - name: Import prepare tasks for common service
      ansible.builtin.import_tasks: tasks/prepare-common-service.yml

    - name: Set synapse config path
      ansible.builtin.set_fact:
        config_path: "{{ (service_path, svc.config_path) | path_join }}"

    - name: Create config directory
      ansible.builtin.file:
        path: "{{ config_path }}"
        state: directory
        mode: "0755"

    - name: Template config
      ansible.builtin.template:
        src: yml.j2
        dest: "{{ (config_path, 'homeserver.yaml') | path_join }}"
        mode: "0644"

    - name: Copy the log config
      ansible.builtin.copy:
        src: msrg.cc.log.config
        dest: "{{ (config_path, 'msrg.cc.log.config') | path_join }}"
        mode: "0644"

    - name: Copy the signing key
      ansible.builtin.copy:
        content: "{{ vault_synapse.signing_key }}"
        dest: "{{ (config_path, 'msrg.cc.signing.key') | path_join }}"
        mode: "0644"

    - name: Import start tasks for common service
      ansible.builtin.import_tasks: tasks/start-common-service.yml