mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2024-12-22 20:45:48 +00:00
9b8fe6eadc
Shared Secret Auth double puppeting still works for this bridge, but is deprecated and will go away in the future.
195 lines
12 KiB
YAML
195 lines
12 KiB
YAML
---
|
|
# mautrix-googlechat is a Matrix <-> googlechat bridge
|
|
# Project source code URL: https://github.com/mautrix/googlechat
|
|
|
|
matrix_mautrix_googlechat_enabled: true
|
|
|
|
matrix_mautrix_googlechat_container_image_self_build: false
|
|
matrix_mautrix_googlechat_container_image_self_build_repo: "https://github.com/mautrix/googlechat.git"
|
|
matrix_mautrix_googlechat_container_image_self_build_repo_version: "{{ 'master' if matrix_mautrix_googlechat_version == 'latest' else matrix_mautrix_googlechat_version }}"
|
|
|
|
# renovate: datasource=docker depName=dock.mau.dev/mautrix/googlechat
|
|
matrix_mautrix_googlechat_version: v0.5.2
|
|
# See: https://mau.dev/mautrix/googlechat/container_registry
|
|
matrix_mautrix_googlechat_docker_image: "{{ matrix_mautrix_googlechat_docker_image_name_prefix }}mautrix/googlechat:{{ matrix_mautrix_googlechat_version }}"
|
|
matrix_mautrix_googlechat_docker_image_name_prefix: "{{ 'localhost/' if matrix_mautrix_googlechat_container_image_self_build else 'dock.mau.dev/' }}"
|
|
matrix_mautrix_googlechat_docker_image_force_pull: "{{ matrix_mautrix_googlechat_docker_image.endswith(':latest') }}"
|
|
|
|
matrix_mautrix_googlechat_base_path: "{{ matrix_base_data_path }}/mautrix-googlechat"
|
|
matrix_mautrix_googlechat_config_path: "{{ matrix_mautrix_googlechat_base_path }}/config"
|
|
matrix_mautrix_googlechat_data_path: "{{ matrix_mautrix_googlechat_base_path }}/data"
|
|
matrix_mautrix_googlechat_docker_src_files_path: "{{ matrix_mautrix_googlechat_base_path }}/docker-src"
|
|
|
|
matrix_mautrix_googlechat_public_endpoint: '/mautrix-googlechat'
|
|
|
|
matrix_mautrix_googlechat_homeserver_address: ""
|
|
matrix_mautrix_googlechat_homeserver_domain: '{{ matrix_domain }}'
|
|
matrix_mautrix_googlechat_appservice_address: 'http://matrix-mautrix-googlechat:8080'
|
|
|
|
matrix_mautrix_googlechat_command_prefix: "!gc"
|
|
|
|
# Controls whether the matrix-mautrix-googlechat container exposes its HTTP port (tcp/8080 in the container).
|
|
#
|
|
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:9007"), or empty string to not expose.
|
|
matrix_mautrix_googlechat_container_http_host_bind_port: ''
|
|
|
|
matrix_mautrix_googlechat_container_network: ""
|
|
|
|
matrix_mautrix_googlechat_container_additional_networks: "{{ matrix_mautrix_googlechat_container_additional_networks_auto + matrix_mautrix_googlechat_container_additional_networks_custom }}"
|
|
matrix_mautrix_googlechat_container_additional_networks_auto: []
|
|
matrix_mautrix_googlechat_container_additional_networks_custom: []
|
|
|
|
# matrix_mautrix_googlechat_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_mautrix_googlechat_container_labels_additional_labels`.
|
|
matrix_mautrix_googlechat_container_labels_traefik_enabled: true
|
|
matrix_mautrix_googlechat_container_labels_traefik_docker_network: "{{ matrix_mautrix_googlechat_container_network }}"
|
|
matrix_mautrix_googlechat_container_labels_traefik_entrypoints: web-secure
|
|
matrix_mautrix_googlechat_container_labels_traefik_tls_certResolver: default # noqa var-naming
|
|
|
|
# Controls whether labels will be added that expose mautrix-googlechat's public endpoint
|
|
matrix_mautrix_googlechat_container_labels_public_endpoint_enabled: true
|
|
matrix_mautrix_googlechat_container_labels_public_endpoint_hostname: ""
|
|
matrix_mautrix_googlechat_container_labels_public_endpoint_path_prefix: "{{ matrix_mautrix_googlechat_public_endpoint }}"
|
|
matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_rule: "Host(`{{ matrix_mautrix_googlechat_container_labels_public_endpoint_hostname }}`) && PathPrefix(`{{ matrix_mautrix_googlechat_container_labels_public_endpoint_path_prefix }}`)"
|
|
matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_priority: 0
|
|
matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_entrypoints: "{{ matrix_mautrix_googlechat_container_labels_traefik_entrypoints }}"
|
|
matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_tls: "{{ matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_entrypoints != 'web' }}"
|
|
matrix_mautrix_googlechat_container_labels_public_endpoint_traefik_tls_certResolver: "{{ matrix_mautrix_googlechat_container_labels_traefik_tls_certResolver }}" # noqa var-naming
|
|
|
|
# Controls whether labels will be added that expose mautrix-googlechat's metrics
|
|
matrix_mautrix_googlechat_container_labels_metrics_enabled: "{{ matrix_mautrix_googlechat_metrics_enabled and matrix_mautrix_googlechat_metrics_proxying_enabled }}"
|
|
matrix_mautrix_googlechat_container_labels_metrics_traefik_rule: "Host(`{{ matrix_mautrix_googlechat_metrics_proxying_hostname }}`) && PathPrefix(`{{ matrix_mautrix_googlechat_metrics_proxying_path_prefix }}`)"
|
|
matrix_mautrix_googlechat_container_labels_metrics_traefik_priority: 0
|
|
matrix_mautrix_googlechat_container_labels_metrics_traefik_entrypoints: "{{ matrix_mautrix_googlechat_container_labels_traefik_entrypoints }}"
|
|
matrix_mautrix_googlechat_container_labels_metrics_traefik_tls: "{{ matrix_mautrix_googlechat_container_labels_metrics_traefik_entrypoints != 'web' }}"
|
|
matrix_mautrix_googlechat_container_labels_metrics_traefik_tls_certResolver: "{{ matrix_mautrix_googlechat_container_labels_traefik_tls_certResolver }}" # noqa var-naming
|
|
matrix_mautrix_googlechat_container_labels_metrics_middleware_basic_auth_enabled: false
|
|
# See: https://doc.traefik.io/traefik/middlewares/http/basicauth/#users
|
|
matrix_mautrix_googlechat_container_labels_metrics_middleware_basic_auth_users: ''
|
|
|
|
# matrix_mautrix_googlechat_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_mautrix_googlechat_container_labels_additional_labels: |
|
|
# my.label=1
|
|
# another.label="here"
|
|
matrix_mautrix_googlechat_container_labels_additional_labels: ''
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_mautrix_googlechat_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-mautrix-googlechat.service depends on.
|
|
matrix_mautrix_googlechat_systemd_required_services_list: "{{ matrix_mautrix_googlechat_systemd_required_services_list_default + matrix_mautrix_googlechat_systemd_required_services_list_auto + matrix_mautrix_googlechat_systemd_required_services_list_custom }}"
|
|
matrix_mautrix_googlechat_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
|
|
matrix_mautrix_googlechat_systemd_required_services_list_auto: []
|
|
matrix_mautrix_googlechat_systemd_required_services_list_custom: []
|
|
|
|
# List of systemd services that matrix-mautrix-googlechat.service wants
|
|
matrix_mautrix_googlechat_systemd_wanted_services_list: []
|
|
|
|
matrix_mautrix_googlechat_appservice_token: ''
|
|
matrix_mautrix_googlechat_homeserver_token: ''
|
|
|
|
# Whether or not metrics endpoint should be enabled.
|
|
# Enabling them is usually enough for a local (in-container) Prometheus to consume them.
|
|
# If metrics need to be consumed by another (external) Prometheus server, consider exposing them via `matrix_mautrix_googlechat_metrics_proxying_enabled`.
|
|
matrix_mautrix_googlechat_metrics_enabled: false
|
|
|
|
# Controls whether metrics should be proxied (exposed) on a public URL.
|
|
matrix_mautrix_googlechat_metrics_proxying_enabled: false
|
|
matrix_mautrix_googlechat_metrics_proxying_hostname: ''
|
|
matrix_mautrix_googlechat_metrics_proxying_path_prefix: ''
|
|
|
|
# Whether or not created rooms should have federation enabled.
|
|
# If false, created portal rooms will never be federated.
|
|
matrix_mautrix_googlechat_federate_rooms: true
|
|
|
|
matrix_mautrix_googlechat_bridge_permissions: |
|
|
{{
|
|
{matrix_mautrix_googlechat_homeserver_domain: 'user'}
|
|
| combine({matrix_admin: 'admin'} if matrix_admin else {})
|
|
}}
|
|
|
|
# Database-related configuration fields.
|
|
#
|
|
# To use SQLite, stick to these defaults.
|
|
#
|
|
# To use Postgres:
|
|
# - change the engine (`matrix_mautrix_googlechat_database_engine: 'postgres'`)
|
|
# - adjust your database credentials via the `matrix_mautrix_googlechat_database_*` variables
|
|
matrix_mautrix_googlechat_database_engine: 'sqlite'
|
|
|
|
matrix_mautrix_googlechat_sqlite_database_path_local: "{{ matrix_mautrix_googlechat_data_path }}/mautrix-googlechat.db"
|
|
matrix_mautrix_googlechat_sqlite_database_path_in_container: "/data/mautrix-googlechat.db"
|
|
|
|
matrix_mautrix_googlechat_database_username: 'matrix_mautrix_googlechat'
|
|
matrix_mautrix_googlechat_database_password: 'some-password'
|
|
matrix_mautrix_googlechat_database_hostname: ''
|
|
matrix_mautrix_googlechat_database_port: 5432
|
|
matrix_mautrix_googlechat_database_name: 'matrix_mautrix_googlechat'
|
|
|
|
matrix_mautrix_googlechat_database_connection_string: 'postgres://{{ matrix_mautrix_googlechat_database_username }}:{{ matrix_mautrix_googlechat_database_password }}@{{ matrix_mautrix_googlechat_database_hostname }}:{{ matrix_mautrix_googlechat_database_port }}/{{ matrix_mautrix_googlechat_database_name }}'
|
|
|
|
matrix_mautrix_googlechat_appservice_database: "{{
|
|
{
|
|
'sqlite': ('sqlite:///' + matrix_mautrix_googlechat_sqlite_database_path_in_container),
|
|
'postgres': matrix_mautrix_googlechat_database_connection_string,
|
|
}[matrix_mautrix_googlechat_database_engine]
|
|
}}"
|
|
|
|
|
|
# Can be set to enable automatic double-puppeting via Shared Secret Auth (https://github.com/devture/matrix-synapse-shared-secret-auth) or Appservice Double Puppet.
|
|
matrix_mautrix_googlechat_login_shared_secret: ''
|
|
|
|
matrix_mautrix_googlechat_appservice_bot_username: googlechatbot
|
|
|
|
# Specifies the default log level for all bridge loggers.
|
|
matrix_mautrix_googlechat_logging_level: WARNING
|
|
|
|
# Default 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_mautrix_googlechat_configuration_extension_yaml`)
|
|
# or completely replace this variable with your own template.
|
|
matrix_mautrix_googlechat_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
|
|
|
|
matrix_mautrix_googlechat_configuration_extension_yaml: |
|
|
# Your custom YAML configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_mautrix_googlechat_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_mautrix_googlechat_configuration_yaml`.
|
|
|
|
matrix_mautrix_googlechat_configuration_extension: "{{ matrix_mautrix_googlechat_configuration_extension_yaml | from_yaml if matrix_mautrix_googlechat_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_mautrix_googlechat_configuration_yaml`.
|
|
matrix_mautrix_googlechat_configuration: "{{ matrix_mautrix_googlechat_configuration_yaml | from_yaml | combine(matrix_mautrix_googlechat_configuration_extension, recursive=True) }}"
|
|
|
|
matrix_mautrix_googlechat_registration_yaml: |
|
|
id: googlechat
|
|
as_token: "{{ matrix_mautrix_googlechat_appservice_token }}"
|
|
hs_token: "{{ matrix_mautrix_googlechat_homeserver_token }}"
|
|
namespaces:
|
|
users:
|
|
- exclusive: true
|
|
regex: '^@googlechat_.+:{{ matrix_mautrix_googlechat_homeserver_domain | regex_escape }}$'
|
|
- exclusive: true
|
|
regex: '^@{{ matrix_mautrix_googlechat_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_googlechat_homeserver_domain | regex_escape }}$'
|
|
url: {{ matrix_mautrix_googlechat_appservice_address }}
|
|
# See https://github.com/mautrix/signal/issues/43
|
|
sender_localpart: _bot_{{ matrix_mautrix_googlechat_appservice_bot_username }}
|
|
rate_limited: false
|
|
de.sorunome.msc2409.push_ephemeral: true
|
|
|
|
matrix_mautrix_googlechat_registration: "{{ matrix_mautrix_googlechat_registration_yaml | from_yaml }}"
|
|
|
|
# Enable End-to-bridge encryption
|
|
matrix_mautrix_googlechat_bridge_encryption_allow: "{{ matrix_bridges_encryption_enabled }}"
|
|
matrix_mautrix_googlechat_bridge_encryption_default: "{{ matrix_bridges_encryption_default }}"
|