mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2026-07-16 19:53:53 +03:00
d9bee18ddd
Part of adopting a uniform naming policy for bridge variables, where the variable prefix matches the role directory name. The companion appservice variables defined by this role are folded under the role prefix as well: matrix_mautrix_androidsms_* becomes matrix_bridge_mautrix_wsproxy_androidsms_* and matrix_mautrix_imessage_* becomes matrix_bridge_mautrix_wsproxy_imessage_*. matrix_mautrix_signal_wsproxy_syncproxy_connection_string becomes matrix_bridge_mautrix_wsproxy_syncproxy_connection_string, aligning it with the sibling matrix_bridge_mautrix_wsproxy_syncproxy_* variables. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
199 lines
12 KiB
YAML
199 lines
12 KiB
YAML
# SPDX-FileCopyrightText: 2023 Johan Swetzén
|
|
# SPDX-FileCopyrightText: 2023 Samuel Meenzen
|
|
# SPDX-FileCopyrightText: 2024 - 2025 Slavi Pantaleev
|
|
# SPDX-FileCopyrightText: 2024 Suguru Hirahara
|
|
#
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
---
|
|
# mautrix-wsproxy is a Matrix <-> websocket bridge
|
|
# See: https://github.com/mautrix/wsproxy
|
|
|
|
matrix_bridge_mautrix_wsproxy_enabled: true
|
|
|
|
matrix_bridge_mautrix_wsproxy_version: latest
|
|
# See: https://mau.dev/mautrix/wsproxy/container_registry
|
|
matrix_bridge_mautrix_wsproxy_container_image: "{{ matrix_bridge_mautrix_wsproxy_container_image_registry_prefix }}mautrix/wsproxy:{{ matrix_bridge_mautrix_wsproxy_version }}"
|
|
matrix_bridge_mautrix_wsproxy_container_image_registry_prefix: "{{ matrix_bridge_mautrix_wsproxy_container_image_registry_prefix_upstream }}"
|
|
matrix_bridge_mautrix_wsproxy_container_image_registry_prefix_upstream: "{{ matrix_bridge_mautrix_wsproxy_container_image_registry_prefix_upstream_default }}"
|
|
matrix_bridge_mautrix_wsproxy_container_image_registry_prefix_upstream_default: "dock.mau.dev/"
|
|
|
|
matrix_bridge_mautrix_wsproxy_base_path: "{{ matrix_base_data_path }}/wsproxy"
|
|
matrix_bridge_mautrix_wsproxy_config_path: "{{ matrix_bridge_mautrix_wsproxy_base_path }}/config"
|
|
|
|
matrix_bridge_mautrix_wsproxy_homeserver_address: ""
|
|
matrix_bridge_mautrix_wsproxy_homeserver_domain: "{{ matrix_domain }}"
|
|
|
|
matrix_bridge_mautrix_wsproxy_bind_port: false
|
|
matrix_bridge_mautrix_wsproxy_port: 29331
|
|
|
|
matrix_bridge_mautrix_wsproxy_appservice_address: "http://matrix-mautrix-wsproxy:{{ matrix_bridge_mautrix_wsproxy_port }}"
|
|
|
|
matrix_bridge_mautrix_wsproxy_hostname: ""
|
|
|
|
# The base container network. It will be auto-created by this role if it doesn't exist already.
|
|
matrix_bridge_mautrix_wsproxy_container_network: matrix-mautrix-wsproxy
|
|
|
|
matrix_bridge_mautrix_wsproxy_twitter_container_additional_networks: "{{ matrix_bridge_mautrix_wsproxy_twitter_container_additional_networks_auto + matrix_bridge_mautrix_wsproxy_twitter_container_additional_networks_custom }}"
|
|
matrix_bridge_mautrix_wsproxy_twitter_container_additional_networks_auto: []
|
|
matrix_bridge_mautrix_wsproxy_twitter_container_additional_networks_custom: []
|
|
|
|
# matrix_bridge_mautrix_wsproxy_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container.
|
|
# See `../templates/labels.j2` for details.
|
|
#
|
|
# To inject your own other container labels, see `matrix_bridge_mautrix_wsproxy_container_labels_additional_labels`.
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_enabled: true
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_docker_network: "{{ matrix_bridge_mautrix_wsproxy_container_network }}"
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_hostname: "{{ matrix_bridge_mautrix_wsproxy_hostname }}"
|
|
# The path prefix must either be `/` or not end with a slash (e.g. `/wsproxy`).
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_rule: "Host(`{{ matrix_bridge_mautrix_wsproxy_container_labels_traefik_hostname }}`)"
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_priority: 0
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_entrypoints: web-secure
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_tls: "{{ matrix_bridge_mautrix_wsproxy_container_labels_traefik_entrypoints != 'web' }}"
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_tls_certResolver: default # noqa var-naming
|
|
|
|
# Controls which additional headers to attach to all HTTP responses.
|
|
# To add your own headers, use `matrix_bridge_mautrix_wsproxy_container_labels_traefik_additional_response_headers_custom`
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_additional_response_headers_auto: {}
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_additional_response_headers_custom: {}
|
|
matrix_bridge_mautrix_wsproxy_container_labels_traefik_additional_response_headers: "{{ matrix_bridge_mautrix_wsproxy_container_labels_traefik_additional_response_headers_auto | combine(matrix_bridge_mautrix_wsproxy_container_labels_traefik_additional_response_headers_custom) }}"
|
|
|
|
# matrix_bridge_mautrix_wsproxy_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
|
|
# See `../templates/labels.j2` for details.
|
|
#
|
|
# Example:
|
|
# matrix_bridge_mautrix_wsproxy_container_labels_additional_labels: |
|
|
# my.label=1
|
|
# another.label="here"
|
|
matrix_bridge_mautrix_wsproxy_container_labels_additional_labels: ''
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_bridge_mautrix_wsproxy_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-mautrix-wsproxy.service depends on.
|
|
matrix_bridge_mautrix_wsproxy_systemd_required_services_list: "{{ matrix_bridge_mautrix_wsproxy_systemd_required_services_list_default + matrix_bridge_mautrix_wsproxy_systemd_required_services_list_auto + matrix_bridge_mautrix_wsproxy_systemd_required_services_list_custom }}"
|
|
matrix_bridge_mautrix_wsproxy_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
|
|
matrix_bridge_mautrix_wsproxy_systemd_required_services_list_auto: []
|
|
matrix_bridge_mautrix_wsproxy_systemd_required_services_list_custom: []
|
|
|
|
# List of systemd services that matrix-mautrix-wsproxy.service wants
|
|
matrix_bridge_mautrix_wsproxy_systemd_wanted_services_list: []
|
|
|
|
matrix_bridge_mautrix_wsproxy_androidsms_appservice_token: ''
|
|
matrix_bridge_mautrix_wsproxy_androidsms_homeserver_token: ''
|
|
|
|
matrix_bridge_mautrix_wsproxy_imessage_appservice_token: ''
|
|
matrix_bridge_mautrix_wsproxy_imessage_homeserver_token: ''
|
|
|
|
matrix_bridge_mautrix_wsproxy_androidsms_appservice_bot_username: androidsmsbot
|
|
matrix_bridge_mautrix_wsproxy_imessage_appservice_bot_username: imessagebot
|
|
|
|
# Default mautrix-wsproxy configuration template which covers the generic use case.
|
|
# You can customize it by controlling the various variables inside it.
|
|
#
|
|
# For a more advanced customization, you can extend the default (see `matrix_bridge_mautrix_wsproxy_configuration_extension_yaml`)
|
|
# or completely replace this variable with your own template.
|
|
matrix_bridge_mautrix_wsproxy_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
|
|
|
|
matrix_bridge_mautrix_wsproxy_configuration_extension_yaml: |
|
|
# Your custom YAML configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_bridge_mautrix_wsproxy_configuration_yaml`).
|
|
#
|
|
# You can override individual variables from the default configuration, or introduce new ones.
|
|
#
|
|
# If you need something more special, you can take full control by
|
|
# completely redefining `matrix_bridge_mautrix_wsproxy_configuration_yaml`.
|
|
|
|
matrix_bridge_mautrix_wsproxy_configuration_extension: "{{ matrix_bridge_mautrix_wsproxy_configuration_extension_yaml | from_yaml if matrix_bridge_mautrix_wsproxy_configuration_extension_yaml | from_yaml is mapping else {} }}"
|
|
|
|
# Holds the final configuration (a combination of the default and its extension).
|
|
# You most likely don't need to touch this variable. Instead, see `matrix_bridge_mautrix_wsproxy_configuration_yaml`.
|
|
matrix_bridge_mautrix_wsproxy_configuration: "{{ matrix_bridge_mautrix_wsproxy_configuration_yaml | from_yaml | combine(matrix_bridge_mautrix_wsproxy_configuration_extension, recursive=True) }}"
|
|
|
|
matrix_bridge_mautrix_wsproxy_androidsms_registration_yaml: |
|
|
id: androidsms
|
|
url: {{ matrix_bridge_mautrix_wsproxy_appservice_address }}
|
|
as_token: "{{ matrix_bridge_mautrix_wsproxy_androidsms_appservice_token }}"
|
|
hs_token: "{{ matrix_bridge_mautrix_wsproxy_androidsms_homeserver_token }}"
|
|
sender_localpart: _bot_{{ matrix_bridge_mautrix_wsproxy_androidsms_appservice_bot_username }}
|
|
rate_limited: false
|
|
namespaces:
|
|
users:
|
|
- regex: '@androidsms_.+:{{ matrix_bridge_mautrix_wsproxy_homeserver_domain | regex_escape }}$'
|
|
exclusive: true
|
|
- exclusive: true
|
|
regex: '^@{{ matrix_bridge_mautrix_wsproxy_androidsms_appservice_bot_username | regex_escape }}:{{ matrix_bridge_mautrix_wsproxy_homeserver_domain | regex_escape }}$'
|
|
|
|
matrix_bridge_mautrix_wsproxy_androidsms_registration: "{{ matrix_bridge_mautrix_wsproxy_androidsms_registration_yaml | from_yaml }}"
|
|
|
|
matrix_bridge_mautrix_wsproxy_imessage_registration_yaml: |
|
|
id: imessage
|
|
url: {{ matrix_bridge_mautrix_wsproxy_appservice_address }}
|
|
as_token: "{{ matrix_bridge_mautrix_wsproxy_imessage_appservice_token }}"
|
|
hs_token: "{{ matrix_bridge_mautrix_wsproxy_imessage_homeserver_token }}"
|
|
sender_localpart: _bot_{{ matrix_bridge_mautrix_wsproxy_imessage_appservice_bot_username }}
|
|
rate_limited: false
|
|
namespaces:
|
|
users:
|
|
- regex: '@imessage_.+:{{ matrix_bridge_mautrix_wsproxy_homeserver_domain | regex_escape }}$'
|
|
exclusive: true
|
|
- exclusive: true
|
|
regex: '^@{{ matrix_bridge_mautrix_wsproxy_imessage_appservice_bot_username | regex_escape }}:{{ matrix_bridge_mautrix_wsproxy_homeserver_domain | regex_escape }}$'
|
|
|
|
matrix_bridge_mautrix_wsproxy_imessage_registration: "{{ matrix_bridge_mautrix_wsproxy_imessage_registration_yaml | from_yaml }}"
|
|
|
|
# Syncproxy-related configuration fields
|
|
# renovate: datasource=docker depName=dock.mau.dev/mautrix/syncproxy
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_version: latest
|
|
# See: https://mau.dev/mautrix/wsproxy/container_registry
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_container_image: "dock.mau.dev/mautrix/syncproxy:{{ matrix_bridge_mautrix_wsproxy_syncproxy_version }}"
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_container_extra_arguments: []
|
|
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_systemd_required_services_list: |-
|
|
{{
|
|
([devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [])
|
|
+
|
|
['matrix-mautrix-wsproxy.service']
|
|
}}
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_systemd_wanted_services_list: []
|
|
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_homeserver_url: ''
|
|
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_shared_secret: ''
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_port: 29332
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_appservice_address: "http://matrix-mautrix-wsproxy-syncproxy:{{ matrix_bridge_mautrix_wsproxy_syncproxy_port }}"
|
|
|
|
# Database-related configuration fields
|
|
#
|
|
# This bridge supports Postgres and SQLite.
|
|
#
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_database_engine: 'postgres'
|
|
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_database_username: 'matrix_bridge_mautrix_wsproxy_syncproxy'
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_database_password: ''
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_database_hostname: ''
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_database_port: 5432
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_database_name: 'matrix_bridge_mautrix_wsproxy_syncproxy'
|
|
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_connection_string: 'postgres://{{ matrix_bridge_mautrix_wsproxy_syncproxy_database_username }}:{{ matrix_bridge_mautrix_wsproxy_syncproxy_database_password }}@{{ matrix_bridge_mautrix_wsproxy_syncproxy_database_hostname }}:{{ matrix_bridge_mautrix_wsproxy_syncproxy_database_port }}/{{ matrix_bridge_mautrix_wsproxy_syncproxy_database_name }}'
|
|
|
|
# matrix_bridge_mautrix_wsproxy_restart_necessary controls whether the service
|
|
# will be restarted (when true) or merely started (when false) by the
|
|
# systemd service manager role (when conditional restart is enabled).
|
|
#
|
|
# This value is automatically computed during installation based on whether
|
|
# any configuration files, the systemd service file, or the container image changed.
|
|
# The default of `false` means "no restart needed" — appropriate when the role's
|
|
# installation tasks haven't run (e.g., due to --tags skipping them).
|
|
matrix_bridge_mautrix_wsproxy_restart_necessary: false
|
|
|
|
# matrix_bridge_mautrix_wsproxy_syncproxy_restart_necessary controls whether the service
|
|
# will be restarted (when true) or merely started (when false) by the
|
|
# systemd service manager role (when conditional restart is enabled).
|
|
#
|
|
# This value is automatically computed during installation based on whether
|
|
# any configuration files, the systemd service file, or the container image changed.
|
|
# The default of `false` means "no restart needed" — appropriate when the role's
|
|
# installation tasks haven't run (e.g., due to --tags skipping them).
|
|
matrix_bridge_mautrix_wsproxy_syncproxy_restart_necessary: false
|