| @@ -25,7 +25,7 @@ matrix_mautrix_whatsapp_docker_src_files_path: "{{ matrix_mautrix_whatsapp_base_ | |||
| matrix_mautrix_whatsapp_homeserver_address: "" | |||
| matrix_mautrix_whatsapp_homeserver_domain: "{{ matrix_domain }}" | |||
| matrix_mautrix_whatsapp_appservice_address: "http://matrix-mautrix-whatsapp:8080" | |||
| matrix_mautrix_whatsapp_appservice_address: "http://{{ matrix_mautrix_whatsapp_identifier }}:8080" | |||
| # Whether to make public the bridgev2 API endpoints. | |||
| # See https://spec.mau.fi/megabridge/ | |||
| @@ -22,7 +22,7 @@ | |||
| caller: "{{ role_path | basename }}" | |||
| engine_variable_name: 'matrix_mautrix_whatsapp_database_engine' | |||
| engine_old: 'sqlite' | |||
| systemd_services_to_stop: ['matrix-mautrix-whatsapp.service'] | |||
| systemd_services_to_stop: ['{{ matrix_mautrix_whatsapp_identifier }}.service'] | |||
| pgloader_options: ['--with "quote identifiers"'] | |||
| - ansible.builtin.set_fact: | |||
| @@ -89,7 +89,7 @@ | |||
| - name: (Data relocation) Ensure matrix-mautrix-whatsapp.service is stopped | |||
| ansible.builtin.service: | |||
| name: matrix-mautrix-whatsapp | |||
| name: "{{ matrix_mautrix_whatsapp_identifier }}" | |||
| state: stopped | |||
| enabled: false | |||
| daemon_reload: true | |||
| @@ -146,12 +146,12 @@ | |||
| - name: Ensure matrix-mautrix-whatsapp.service installed | |||
| ansible.builtin.template: | |||
| src: "{{ role_path }}/templates/systemd/matrix-mautrix-whatsapp.service.j2" | |||
| dest: "{{ devture_systemd_docker_base_systemd_path }}/matrix-mautrix-whatsapp.service" | |||
| dest: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_mautrix_whatsapp_identifier }}.service" | |||
| mode: 0644 | |||
| - name: Ensure matrix-mautrix-whatsapp.service restarted, if necessary | |||
| ansible.builtin.service: | |||
| name: "matrix-mautrix-whatsapp.service" | |||
| name: "{{ matrix_mautrix_whatsapp_identifier }}.service" | |||
| state: restarted | |||
| daemon_reload: true | |||
| when: "matrix_mautrix_whatsapp_requires_restart | bool" | |||
| @@ -2,19 +2,19 @@ | |||
| - name: Check existence of matrix-mautrix-whatsapp service | |||
| ansible.builtin.stat: | |||
| path: "{{ devture_systemd_docker_base_systemd_path }}/matrix-mautrix-whatsapp.service" | |||
| path: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_mautrix_whatsapp_identifier }}.service" | |||
| register: matrix_mautrix_whatsapp_service_stat | |||
| - when: matrix_mautrix_whatsapp_service_stat.stat.exists | bool | |||
| block: | |||
| - name: Ensure matrix-mautrix-whatsapp is stopped | |||
| ansible.builtin.service: | |||
| name: matrix-mautrix-whatsapp | |||
| name: "{{ matrix_mautrix_whatsapp_identifier }}" | |||
| state: stopped | |||
| enabled: false | |||
| daemon_reload: true | |||
| - name: Ensure matrix-mautrix-whatsapp.service doesn't exist | |||
| ansible.builtin.file: | |||
| path: "{{ devture_systemd_docker_base_systemd_path }}/matrix-mautrix-whatsapp.service" | |||
| path: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_mautrix_whatsapp_identifier }}.service" | |||
| state: absent | |||
| @@ -6,7 +6,7 @@ traefik.docker.network={{ matrix_mautrix_whatsapp_container_labels_traefik_docke | |||
| {% endif %} | |||
| traefik.http.services.{{ matrix_mautrix_whatsapp_identifier }}-appservice.loadbalancer.server.port=8080 | |||
| traefik.http.services.matrix-mautrix-whatsapp-metrics.loadbalancer.server.port=8001 | |||
| traefik.http.services.{{ matrix_mautrix_whatsapp_identifier }}-metrics.loadbalancer.server.port=8001 | |||
| {% if matrix_mautrix_whatsapp_container_labels_metrics_enabled %} | |||
| ############################################################ | |||
| @@ -16,22 +16,22 @@ traefik.http.services.matrix-mautrix-whatsapp-metrics.loadbalancer.server.port=8 | |||
| ############################################################ | |||
| {% if matrix_mautrix_whatsapp_container_labels_metrics_middleware_basic_auth_enabled %} | |||
| traefik.http.middlewares.matrix-mautrix-whatsapp-metrics-basic-auth.basicauth.users={{ matrix_mautrix_whatsapp_container_labels_metrics_middleware_basic_auth_users }} | |||
| traefik.http.routers.matrix-mautrix-whatsapp-metrics.middlewares=matrix-mautrix-whatsapp-metrics-basic-auth | |||
| traefik.http.middlewares.{{ matrix_mautrix_whatsapp_identifier }}-metrics-basic-auth.basicauth.users={{ matrix_mautrix_whatsapp_container_labels_metrics_middleware_basic_auth_users }} | |||
| traefik.http.routers.{{ matrix_mautrix_whatsapp_identifier }}-metrics.middlewares={{ matrix_mautrix_whatsapp_identifier }}-metrics-basic-auth | |||
| {% endif %} | |||
| traefik.http.routers.matrix-mautrix-whatsapp-metrics.rule={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_rule }} | |||
| traefik.http.routers.{{ matrix_mautrix_whatsapp_identifier }}-metrics.rule={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_rule }} | |||
| {% if matrix_mautrix_whatsapp_container_labels_metrics_traefik_priority | int > 0 %} | |||
| traefik.http.routers.matrix-mautrix-whatsapp-metrics.priority={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_priority }} | |||
| traefik.http.routers.{{ matrix_mautrix_whatsapp_identifier }}-metrics.priority={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_priority }} | |||
| {% endif %} | |||
| traefik.http.routers.matrix-mautrix-whatsapp-metrics.service=matrix-mautrix-whatsapp-metrics | |||
| traefik.http.routers.matrix-mautrix-whatsapp-metrics.entrypoints={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_entrypoints }} | |||
| traefik.http.routers.{{ matrix_mautrix_whatsapp_identifier }}-metrics.service={{ matrix_mautrix_whatsapp_identifier }}-metrics | |||
| traefik.http.routers.{{ matrix_mautrix_whatsapp_identifier }}-metrics.entrypoints={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_entrypoints }} | |||
| traefik.http.routers.matrix-mautrix-whatsapp-metrics.tls={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_tls | to_json }} | |||
| traefik.http.routers.{{ matrix_mautrix_whatsapp_identifier }}-metrics.tls={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_tls | to_json }} | |||
| {% if matrix_mautrix_whatsapp_container_labels_metrics_traefik_tls %} | |||
| traefik.http.routers.matrix-mautrix-whatsapp-metrics.tls.certResolver={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_tls_certResolver }} | |||
| traefik.http.routers.{{ matrix_mautrix_whatsapp_identifier }}-metrics.tls.certResolver={{ matrix_mautrix_whatsapp_container_labels_metrics_traefik_tls_certResolver }} | |||
| {% endif %} | |||
| ############################################################ | |||
| @@ -13,12 +13,12 @@ DefaultDependencies=no | |||
| [Service] | |||
| Type=simple | |||
| Environment="HOME={{ devture_systemd_docker_base_systemd_unit_home_path }}" | |||
| ExecStartPre=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} stop --time={{ devture_systemd_docker_base_container_stop_grace_time_seconds }} matrix-mautrix-whatsapp 2>/dev/null || true' | |||
| ExecStartPre=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} rm matrix-mautrix-whatsapp 2>/dev/null || true' | |||
| ExecStartPre=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} stop --time={{ devture_systemd_docker_base_container_stop_grace_time_seconds }} {{ matrix_mautrix_whatsapp_identifier }} 2>/dev/null || true' | |||
| ExecStartPre=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} rm {{ matrix_mautrix_whatsapp_identifier }} 2>/dev/null || true' | |||
| ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} create \ | |||
| --rm \ | |||
| --name=matrix-mautrix-whatsapp \ | |||
| --name={{ matrix_mautrix_whatsapp_identifier }} \ | |||
| --log-driver=none \ | |||
| --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ | |||
| --cap-drop=ALL \ | |||
| @@ -34,16 +34,16 @@ ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} create \ | |||
| /usr/bin/mautrix-whatsapp -c /config/config.yaml -r /config/registration.yaml | |||
| {% for network in matrix_mautrix_whatsapp_container_additional_networks %} | |||
| ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} network connect {{ network }} matrix-mautrix-whatsapp | |||
| ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} network connect {{ network }} {{ matrix_mautrix_whatsapp_identifier }} | |||
| {% endfor %} | |||
| ExecStart={{ devture_systemd_docker_base_host_command_docker }} start --attach matrix-mautrix-whatsapp | |||
| ExecStart={{ devture_systemd_docker_base_host_command_docker }} start --attach {{ matrix_mautrix_whatsapp_identifier }} | |||
| ExecStop=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} stop --time={{ devture_systemd_docker_base_container_stop_grace_time_seconds }} matrix-mautrix-whatsapp 2>/dev/null || true' | |||
| ExecStop=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} rm matrix-mautrix-whatsapp 2>/dev/null || true' | |||
| ExecStop=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} stop --time={{ devture_systemd_docker_base_container_stop_grace_time_seconds }} {{ matrix_mautrix_whatsapp_identifier }} 2>/dev/null || true' | |||
| ExecStop=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} rm {{ matrix_mautrix_whatsapp_identifier }} 2>/dev/null || true' | |||
| Restart=always | |||
| RestartSec=30 | |||
| SyslogIdentifier=matrix-mautrix-whatsapp | |||
| SyslogIdentifier={{ matrix_mautrix_whatsapp_identifier }} | |||
| [Install] | |||
| WantedBy=multi-user.target | |||