Rename matrix_mautrix_meta_messenger_* variables to matrix_bridge_mautrix_meta_messenger_*

Part of adopting a uniform naming policy for bridge variables,
where the variable prefix matches the role directory name.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Slavi Pantaleev
2026-07-16 14:53:35 +03:00
parent ba0fd18361
commit ca301ffde0
12 changed files with 360 additions and 360 deletions
+1 -1
View File
@@ -30,7 +30,7 @@ fi
cp -ar $messenger_role_path $instagram_role_path cp -ar $messenger_role_path $instagram_role_path
find "$instagram_role_path" -type f | while read -r file; do find "$instagram_role_path" -type f | while read -r file; do
sed --in-place 's/matrix_mautrix_meta_messenger_/matrix_bridge_mautrix_meta_instagram_/g' "$file" sed --in-place 's/matrix_bridge_mautrix_meta_messenger_/matrix_bridge_mautrix_meta_instagram_/g' "$file"
sed --in-place 's/mautrix-meta-messenger/mautrix-meta-instagram/g' "$file" sed --in-place 's/mautrix-meta-messenger/mautrix-meta-instagram/g' "$file"
done done
@@ -24,7 +24,7 @@ To enable the bridge, add the following configuration to your `inventory/host_va
matrix_mautrix_SERVICENAME_enabled: true matrix_mautrix_SERVICENAME_enabled: true
``` ```
**Note**: for bridging to Meta's Messenger or Instagram, you would need to add `meta` with an underscore symbol (`_`) or hyphen (`-`) based on the context as prefix to each `SERVICENAME`; add `_` to variables (as in `matrix_mautrix_meta_messenger_configuration_extension_yaml` for example) and `-` to paths of the configuration files (as in `roles/custom/matrix-bridge-mautrix-meta-messenger/templates/config.yaml.j2`), respectively. **Note**: for bridging to Meta's Messenger or Instagram, you would need to add `meta` with an underscore symbol (`_`) or hyphen (`-`) based on the context as prefix to each `SERVICENAME`; add `_` to variables (as in `matrix_bridge_mautrix_meta_messenger_configuration_extension_yaml` for example) and `-` to paths of the configuration files (as in `roles/custom/matrix-bridge-mautrix-meta-messenger/templates/config.yaml.j2`), respectively.
There are some additional things you may wish to configure about the bridge before you continue. Each bridge may have additional requirements besides `_enabled: true`. For example, the mautrix-telegram bridge (our documentation page about it is [here](configuring-playbook-bridge-mautrix-telegram.md)) requires the `matrix_mautrix_telegram_api_id` and `matrix_mautrix_telegram_api_hash` variables to be defined. Refer to each bridge's individual documentation page for details about enabling bridges. There are some additional things you may wish to configure about the bridge before you continue. Each bridge may have additional requirements besides `_enabled: true`. For example, the mautrix-telegram bridge (our documentation page about it is [here](configuring-playbook-bridge-mautrix-telegram.md)) requires the `matrix_mautrix_telegram_api_id` and `matrix_mautrix_telegram_api_hash` variables to be defined. Refer to each bridge's individual documentation page for details about enabling bridges.
@@ -41,7 +41,7 @@ See [this section](configuring-playbook-bridge-mautrix-bridges.md#set-up-double-
To enable the bridge, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file: To enable the bridge, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file:
```yaml ```yaml
matrix_mautrix_meta_messenger_enabled: true matrix_bridge_mautrix_meta_messenger_enabled: true
``` ```
Before proceeding to [re-running the playbook](./installing.md), you may wish to adjust the configuration further. See below. Before proceeding to [re-running the playbook](./installing.md), you may wish to adjust the configuration further. See below.
@@ -56,7 +56,7 @@ The bridge can pull your Messenger messages via 3 different methods:
- (`facebook-tor`) Facebook via `facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion` ([Tor](https://www.torproject.org/)) — does not currently proxy media downloads - (`facebook-tor`) Facebook via `facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion` ([Tor](https://www.torproject.org/)) — does not currently proxy media downloads
- (default) (`messenger`) Messenger via `messenger.com` — usable even without a Facebook account - (default) (`messenger`) Messenger via `messenger.com` — usable even without a Facebook account
You may switch the mode via the `matrix_mautrix_meta_messenger_meta_mode` variable. The playbook defaults to the `messenger` mode, because it's most universal (every Facebook user has a Messenger account, but the opposite is not true). You may switch the mode via the `matrix_bridge_mautrix_meta_messenger_meta_mode` variable. The playbook defaults to the `messenger` mode, because it's most universal (every Facebook user has a Messenger account, but the opposite is not true).
Note that switching the mode (especially between `facebook*` and `messenger`) will intentionally make the bridge use another database (`matrix_mautrix_meta_facebook` or `matrix_mautrix_meta_messenger`) to isolate the 2 instances. Switching between Tor and non-Tor may be possible without dataloss, but your mileage may vary. Before switching to a new mode, you may wish to de-configure the old one (send `help` to the bridge bot and unbridge your portals, etc.). Note that switching the mode (especially between `facebook*` and `messenger`) will intentionally make the bridge use another database (`matrix_mautrix_meta_facebook` or `matrix_mautrix_meta_messenger`) to isolate the 2 instances. Switching between Tor and non-Tor may be possible without dataloss, but your mileage may vary. Before switching to a new mode, you may wish to de-configure the old one (send `help` to the bridge bot and unbridge your portals, etc.).
@@ -99,5 +99,5 @@ The default logging level for this component is `warn`. If you want to increase
```yaml ```yaml
# This bridge uses zerolog, so valid levels are: panic, fatal, error, warn, info, debug, trace # This bridge uses zerolog, so valid levels are: panic, fatal, error, warn, info, debug, trace
matrix_mautrix_meta_messenger_logging_min_level: debug matrix_bridge_mautrix_meta_messenger_logging_min_level: debug
``` ```
+46 -46
View File
@@ -122,7 +122,7 @@ matrix_homeserver_container_extra_arguments_auto: |
+ +
(['--mount type=bind,src=' + matrix_mautrix_signal_config_path + '/registration.yaml,dst=/matrix-mautrix-signal-registration.yaml,ro'] if matrix_mautrix_signal_enabled else []) (['--mount type=bind,src=' + matrix_mautrix_signal_config_path + '/registration.yaml,dst=/matrix-mautrix-signal-registration.yaml,ro'] if matrix_mautrix_signal_enabled else [])
+ +
(['--mount type=bind,src=' + matrix_mautrix_meta_messenger_config_path + '/registration.yaml,dst=/matrix-mautrix-meta-messenger-registration.yaml,ro'] if matrix_mautrix_meta_messenger_enabled else []) (['--mount type=bind,src=' + matrix_bridge_mautrix_meta_messenger_config_path + '/registration.yaml,dst=/matrix-mautrix-meta-messenger-registration.yaml,ro'] if matrix_bridge_mautrix_meta_messenger_enabled else [])
+ +
(['--mount type=bind,src=' + matrix_bridge_mautrix_meta_instagram_config_path + '/registration.yaml,dst=/matrix-mautrix-meta-instagram-registration.yaml,ro'] if matrix_bridge_mautrix_meta_instagram_enabled else []) (['--mount type=bind,src=' + matrix_bridge_mautrix_meta_instagram_config_path + '/registration.yaml,dst=/matrix-mautrix-meta-instagram-registration.yaml,ro'] if matrix_bridge_mautrix_meta_instagram_enabled else [])
+ +
@@ -181,7 +181,7 @@ matrix_homeserver_app_service_config_files_auto: |
+ +
(['/matrix-mautrix-signal-registration.yaml'] if matrix_mautrix_signal_enabled else []) (['/matrix-mautrix-signal-registration.yaml'] if matrix_mautrix_signal_enabled else [])
+ +
(['/matrix-mautrix-meta-messenger-registration.yaml'] if matrix_mautrix_meta_messenger_enabled else []) (['/matrix-mautrix-meta-messenger-registration.yaml'] if matrix_bridge_mautrix_meta_messenger_enabled else [])
+ +
(['/matrix-mautrix-meta-instagram-registration.yaml'] if matrix_bridge_mautrix_meta_instagram_enabled else []) (['/matrix-mautrix-meta-instagram-registration.yaml'] if matrix_bridge_mautrix_meta_instagram_enabled else [])
+ +
@@ -455,11 +455,11 @@ devture_systemd_service_manager_services_list_auto: |
}] if matrix_mautrix_signal_enabled else []) }] if matrix_mautrix_signal_enabled else [])
+ +
([{ ([{
'name': (matrix_mautrix_meta_messenger_identifier + '.service'), 'name': (matrix_bridge_mautrix_meta_messenger_identifier + '.service'),
'priority': 2000, 'priority': 2000,
'restart_necessary': (matrix_mautrix_meta_messenger_restart_necessary | bool), 'restart_necessary': (matrix_bridge_mautrix_meta_messenger_restart_necessary | bool),
'groups': ['matrix', 'bridges', 'mautrix-meta', 'mautrix-meta-messenger'], 'groups': ['matrix', 'bridges', 'mautrix-meta', 'mautrix-meta-messenger'],
}] if matrix_mautrix_meta_messenger_enabled else []) }] if matrix_bridge_mautrix_meta_messenger_enabled else [])
+ +
([{ ([{
'name': (matrix_bridge_mautrix_meta_instagram_identifier + '.service'), 'name': (matrix_bridge_mautrix_meta_instagram_identifier + '.service'),
@@ -1808,74 +1808,74 @@ matrix_mautrix_signal_public_media_signing_key: "{{ (matrix_homeserver_generic_s
###################################################################### ######################################################################
# We don't enable bridges by default. # We don't enable bridges by default.
matrix_mautrix_meta_messenger_enabled: false matrix_bridge_mautrix_meta_messenger_enabled: false
matrix_mautrix_meta_messenger_systemd_required_services_list_auto: | matrix_bridge_mautrix_meta_messenger_systemd_required_services_list_auto: |
{{ {{
matrix_addons_homeserver_systemd_services_list matrix_addons_homeserver_systemd_services_list
+ +
([postgres_identifier ~ '.service'] if (postgres_enabled and matrix_mautrix_meta_messenger_database_hostname == postgres_connection_hostname) else []) ([postgres_identifier ~ '.service'] if (postgres_enabled and matrix_bridge_mautrix_meta_messenger_database_hostname == postgres_connection_hostname) else [])
}} }}
matrix_mautrix_meta_messenger_container_image_registry_prefix_upstream: "{{ matrix_container_global_registry_prefix_override if matrix_container_global_registry_prefix_override else matrix_mautrix_meta_messenger_container_image_registry_prefix_upstream_default }}" matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix_upstream: "{{ matrix_container_global_registry_prefix_override if matrix_container_global_registry_prefix_override else matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix_upstream_default }}"
matrix_mautrix_meta_messenger_container_image_self_build: "{{ matrix_architecture not in ['amd64', 'arm64'] }}" matrix_bridge_mautrix_meta_messenger_container_image_self_build: "{{ matrix_architecture not in ['amd64', 'arm64'] }}"
matrix_mautrix_meta_messenger_container_network: "{{ matrix_addons_container_network }}" matrix_bridge_mautrix_meta_messenger_container_network: "{{ matrix_addons_container_network }}"
matrix_mautrix_meta_messenger_container_additional_networks_auto: |- matrix_bridge_mautrix_meta_messenger_container_additional_networks_auto: |-
{{ {{
( (
([] if matrix_addons_homeserver_container_network == '' else [matrix_addons_homeserver_container_network]) ([] if matrix_addons_homeserver_container_network == '' else [matrix_addons_homeserver_container_network])
+ +
([postgres_container_network] if (postgres_enabled and matrix_mautrix_meta_messenger_database_hostname == postgres_connection_hostname and matrix_mautrix_meta_messenger_container_network != postgres_container_network) else []) ([postgres_container_network] if (postgres_enabled and matrix_bridge_mautrix_meta_messenger_database_hostname == postgres_connection_hostname and matrix_bridge_mautrix_meta_messenger_container_network != postgres_container_network) else [])
+ +
([matrix_playbook_reverse_proxyable_services_additional_network] if (matrix_playbook_reverse_proxyable_services_additional_network and matrix_mautrix_meta_messenger_container_labels_traefik_enabled) else []) ([matrix_playbook_reverse_proxyable_services_additional_network] if (matrix_playbook_reverse_proxyable_services_additional_network and matrix_bridge_mautrix_meta_messenger_container_labels_traefik_enabled) else [])
) | unique ) | unique
}} }}
matrix_mautrix_meta_messenger_container_labels_traefik_enabled: "{{ matrix_playbook_reverse_proxy_type in ['playbook-managed-traefik', 'other-traefik-container'] }}" matrix_bridge_mautrix_meta_messenger_container_labels_traefik_enabled: "{{ matrix_playbook_reverse_proxy_type in ['playbook-managed-traefik', 'other-traefik-container'] }}"
matrix_mautrix_meta_messenger_container_labels_traefik_docker_network: "{{ matrix_playbook_reverse_proxyable_services_additional_network }}" matrix_bridge_mautrix_meta_messenger_container_labels_traefik_docker_network: "{{ matrix_playbook_reverse_proxyable_services_additional_network }}"
matrix_mautrix_meta_messenger_container_labels_traefik_entrypoints: "{{ traefik_entrypoint_primary }}" matrix_bridge_mautrix_meta_messenger_container_labels_traefik_entrypoints: "{{ traefik_entrypoint_primary }}"
matrix_mautrix_meta_messenger_container_labels_traefik_tls_certResolver: "{{ traefik_certResolver_primary }}" matrix_bridge_mautrix_meta_messenger_container_labels_traefik_tls_certResolver: "{{ traefik_certResolver_primary }}"
matrix_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_enabled: "{{ matrix_metrics_exposure_http_basic_auth_enabled }}" matrix_bridge_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_enabled: "{{ matrix_metrics_exposure_http_basic_auth_enabled }}"
matrix_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_users: "{{ matrix_metrics_exposure_http_basic_auth_users }}" matrix_bridge_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_users: "{{ matrix_metrics_exposure_http_basic_auth_users }}"
matrix_mautrix_meta_messenger_appservice_token: "{{ (matrix_homeserver_generic_secret_key + ':mau.meta.fb.as') | hash('sha512') | to_uuid }}" matrix_bridge_mautrix_meta_messenger_appservice_token: "{{ (matrix_homeserver_generic_secret_key + ':mau.meta.fb.as') | hash('sha512') | to_uuid }}"
matrix_mautrix_meta_messenger_homeserver_address: "{{ matrix_addons_homeserver_client_api_url }}" matrix_bridge_mautrix_meta_messenger_homeserver_address: "{{ matrix_addons_homeserver_client_api_url }}"
matrix_mautrix_meta_messenger_homeserver_token: "{{ (matrix_homeserver_generic_secret_key + ':mau.meta.fb.hs') | hash('sha512') | to_uuid }}" matrix_bridge_mautrix_meta_messenger_homeserver_token: "{{ (matrix_homeserver_generic_secret_key + ':mau.meta.fb.hs') | hash('sha512') | to_uuid }}"
matrix_mautrix_meta_messenger_provisioning_shared_secret: "{{ (matrix_homeserver_generic_secret_key + ':mau.meta.fb.prov') | hash('sha512') | to_uuid }}" matrix_bridge_mautrix_meta_messenger_provisioning_shared_secret: "{{ (matrix_homeserver_generic_secret_key + ':mau.meta.fb.prov') | hash('sha512') | to_uuid }}"
matrix_mautrix_meta_messenger_homeserver_async_media: "{{ matrix_homeserver_implementation in ['synapse'] }}" matrix_bridge_mautrix_meta_messenger_homeserver_async_media: "{{ matrix_homeserver_implementation in ['synapse'] }}"
matrix_mautrix_meta_messenger_double_puppet_secrets_auto: |- matrix_bridge_mautrix_meta_messenger_double_puppet_secrets_auto: |-
{{ {{
{ {
matrix_mautrix_meta_messenger_homeserver_domain: ("as_token:" + matrix_appservice_double_puppet_registration_as_token) matrix_bridge_mautrix_meta_messenger_homeserver_domain: ("as_token:" + matrix_appservice_double_puppet_registration_as_token)
} }
if matrix_appservice_double_puppet_enabled if matrix_appservice_double_puppet_enabled
else {} else {}
}} }}
matrix_mautrix_meta_messenger_metrics_enabled: "{{ prometheus_enabled or matrix_metrics_exposure_enabled }}" matrix_bridge_mautrix_meta_messenger_metrics_enabled: "{{ prometheus_enabled or matrix_metrics_exposure_enabled }}"
matrix_mautrix_meta_messenger_metrics_proxying_enabled: "{{ matrix_mautrix_meta_messenger_metrics_enabled and matrix_metrics_exposure_enabled }}" matrix_bridge_mautrix_meta_messenger_metrics_proxying_enabled: "{{ matrix_bridge_mautrix_meta_messenger_metrics_enabled and matrix_metrics_exposure_enabled }}"
matrix_mautrix_meta_messenger_metrics_proxying_hostname: "{{ matrix_metrics_exposure_hostname }}" matrix_bridge_mautrix_meta_messenger_metrics_proxying_hostname: "{{ matrix_metrics_exposure_hostname }}"
matrix_mautrix_meta_messenger_metrics_proxying_path_prefix: "{{ matrix_metrics_exposure_path_prefix }}/mautrix-meta-messenger" matrix_bridge_mautrix_meta_messenger_metrics_proxying_path_prefix: "{{ matrix_metrics_exposure_path_prefix }}/mautrix-meta-messenger"
matrix_mautrix_meta_messenger_scheme: "{{ 'https' if matrix_playbook_ssl_enabled else 'http' }}" matrix_bridge_mautrix_meta_messenger_scheme: "{{ 'https' if matrix_playbook_ssl_enabled else 'http' }}"
matrix_mautrix_meta_messenger_exposure_enabled: "{{ matrix_bridges_exposure_enabled }}" matrix_bridge_mautrix_meta_messenger_exposure_enabled: "{{ matrix_bridges_exposure_enabled }}"
matrix_mautrix_meta_messenger_exposure_hostname: "{{ matrix_bridges_exposure_hostname }}" matrix_bridge_mautrix_meta_messenger_exposure_hostname: "{{ matrix_bridges_exposure_hostname }}"
matrix_mautrix_meta_messenger_exposure_path_prefix: "{{ matrix_bridges_exposure_path_prefix }}/meta-messenger" matrix_bridge_mautrix_meta_messenger_exposure_path_prefix: "{{ matrix_bridges_exposure_path_prefix }}/meta-messenger"
# We'd like to force-set people with external Postgres to SQLite, so the bridge role can complain # We'd like to force-set people with external Postgres to SQLite, so the bridge role can complain
# and point them to a migration path. # and point them to a migration path.
matrix_mautrix_meta_messenger_database_engine: "{{ 'postgres' if postgres_enabled else 'sqlite3-fk-wal' }}" matrix_bridge_mautrix_meta_messenger_database_engine: "{{ 'postgres' if postgres_enabled else 'sqlite3-fk-wal' }}"
matrix_mautrix_meta_messenger_database_hostname: "{{ postgres_connection_hostname if (postgres_enabled and matrix_mautrix_meta_messenger_database_engine == 'postgres') else '' }}" matrix_bridge_mautrix_meta_messenger_database_hostname: "{{ postgres_connection_hostname if (postgres_enabled and matrix_bridge_mautrix_meta_messenger_database_engine == 'postgres') else '' }}"
matrix_mautrix_meta_messenger_database_password: "{{ ((matrix_homeserver_generic_secret_key + ':mau.fb.db') | hash('sha512') | to_uuid) if (postgres_enabled and matrix_mautrix_meta_messenger_database_engine == 'postgres') else '' }}" matrix_bridge_mautrix_meta_messenger_database_password: "{{ ((matrix_homeserver_generic_secret_key + ':mau.fb.db') | hash('sha512') | to_uuid) if (postgres_enabled and matrix_bridge_mautrix_meta_messenger_database_engine == 'postgres') else '' }}"
###################################################################### ######################################################################
# #
@@ -4195,10 +4195,10 @@ postgres_managed_databases_auto: |
}] if (matrix_mautrix_signal_enabled and matrix_mautrix_signal_database_engine == 'postgres' and matrix_mautrix_signal_database_hostname == postgres_connection_hostname) else []) }] if (matrix_mautrix_signal_enabled and matrix_mautrix_signal_database_engine == 'postgres' and matrix_mautrix_signal_database_hostname == postgres_connection_hostname) else [])
+ +
([{ ([{
'name': matrix_mautrix_meta_messenger_database_name, 'name': matrix_bridge_mautrix_meta_messenger_database_name,
'username': matrix_mautrix_meta_messenger_database_username, 'username': matrix_bridge_mautrix_meta_messenger_database_username,
'password': matrix_mautrix_meta_messenger_database_password, 'password': matrix_bridge_mautrix_meta_messenger_database_password,
}] if (matrix_mautrix_meta_messenger_enabled and matrix_mautrix_meta_messenger_database_engine == 'postgres' and matrix_mautrix_meta_messenger_database_hostname == postgres_connection_hostname) else []) }] if (matrix_bridge_mautrix_meta_messenger_enabled and matrix_bridge_mautrix_meta_messenger_database_engine == 'postgres' and matrix_bridge_mautrix_meta_messenger_database_hostname == postgres_connection_hostname) else [])
+ +
([{ ([{
'name': matrix_bridge_mautrix_meta_instagram_database_name, 'name': matrix_bridge_mautrix_meta_instagram_database_name,
@@ -5156,9 +5156,9 @@ matrix_ketesa_config_asManagedUsers_auto: |
] if matrix_bridge_mautrix_meta_instagram_enabled else []) ] if matrix_bridge_mautrix_meta_instagram_enabled else [])
+ +
([ ([
'^@'+(matrix_mautrix_meta_messenger_appservice_username | default('') | regex_escape)+':'+(matrix_domain | regex_escape)+'$', '^@'+(matrix_bridge_mautrix_meta_messenger_appservice_username | default('') | regex_escape)+':'+(matrix_domain | regex_escape)+'$',
'^@'+(matrix_mautrix_meta_messenger_bridge_username_prefix | default('') | regex_escape)+'[a-zA-Z0-9]+:'+(matrix_domain | regex_escape)+'$', '^@'+(matrix_bridge_mautrix_meta_messenger_bridge_username_prefix | default('') | regex_escape)+'[a-zA-Z0-9]+:'+(matrix_domain | regex_escape)+'$',
] if matrix_mautrix_meta_messenger_enabled else []) ] if matrix_bridge_mautrix_meta_messenger_enabled else [])
+ +
([ ([
'^@'+(matrix_mautrix_signal_appservice_bot_username | default('') | regex_escape)+':'+(matrix_domain | regex_escape)+'$', '^@'+(matrix_mautrix_signal_appservice_bot_username | default('') | regex_escape)+':'+(matrix_domain | regex_escape)+'$',
@@ -6016,7 +6016,7 @@ matrix_static_files_file_matrix_mautrix_property_fi_mau_bridges_auto: |-
matrix_bridge_mautrix_gmessages_bridge_public_address if (matrix_bridge_mautrix_gmessages_enabled and matrix_bridge_mautrix_gmessages_container_labels_traefik_enabled and matrix_bridge_mautrix_gmessages_container_labels_exposure_enabled) else '', matrix_bridge_mautrix_gmessages_bridge_public_address if (matrix_bridge_mautrix_gmessages_enabled and matrix_bridge_mautrix_gmessages_container_labels_traefik_enabled and matrix_bridge_mautrix_gmessages_container_labels_exposure_enabled) else '',
matrix_bridge_mautrix_gvoice_bridge_public_address if (matrix_bridge_mautrix_gvoice_enabled and matrix_bridge_mautrix_gvoice_container_labels_traefik_enabled and matrix_bridge_mautrix_gvoice_container_labels_exposure_enabled) else '', matrix_bridge_mautrix_gvoice_bridge_public_address if (matrix_bridge_mautrix_gvoice_enabled and matrix_bridge_mautrix_gvoice_container_labels_traefik_enabled and matrix_bridge_mautrix_gvoice_container_labels_exposure_enabled) else '',
matrix_bridge_mautrix_meta_instagram_bridge_public_address if (matrix_bridge_mautrix_meta_instagram_enabled and matrix_bridge_mautrix_meta_instagram_container_labels_traefik_enabled and matrix_bridge_mautrix_meta_instagram_container_labels_exposure_enabled) else '', matrix_bridge_mautrix_meta_instagram_bridge_public_address if (matrix_bridge_mautrix_meta_instagram_enabled and matrix_bridge_mautrix_meta_instagram_container_labels_traefik_enabled and matrix_bridge_mautrix_meta_instagram_container_labels_exposure_enabled) else '',
matrix_mautrix_meta_messenger_bridge_public_address if (matrix_mautrix_meta_messenger_enabled and matrix_mautrix_meta_messenger_container_labels_traefik_enabled and matrix_mautrix_meta_messenger_container_labels_exposure_enabled) else '', matrix_bridge_mautrix_meta_messenger_bridge_public_address if (matrix_bridge_mautrix_meta_messenger_enabled and matrix_bridge_mautrix_meta_messenger_container_labels_traefik_enabled and matrix_bridge_mautrix_meta_messenger_container_labels_exposure_enabled) else '',
matrix_mautrix_signal_bridge_public_address if (matrix_mautrix_signal_enabled and matrix_mautrix_signal_container_labels_traefik_enabled and matrix_mautrix_signal_container_labels_exposure_enabled) else '', matrix_mautrix_signal_bridge_public_address if (matrix_mautrix_signal_enabled and matrix_mautrix_signal_container_labels_traefik_enabled and matrix_mautrix_signal_container_labels_exposure_enabled) else '',
matrix_mautrix_slack_bridge_public_address if (matrix_mautrix_slack_enabled and matrix_mautrix_slack_container_labels_traefik_enabled and matrix_mautrix_slack_container_labels_exposure_enabled) else '', matrix_mautrix_slack_bridge_public_address if (matrix_mautrix_slack_enabled and matrix_mautrix_slack_container_labels_traefik_enabled and matrix_mautrix_slack_container_labels_exposure_enabled) else '',
matrix_mautrix_telegram_bridge_public_address if (matrix_mautrix_telegram_enabled and matrix_mautrix_telegram_container_labels_traefik_enabled and matrix_mautrix_telegram_container_labels_exposure_enabled) else '', matrix_mautrix_telegram_bridge_public_address if (matrix_mautrix_telegram_enabled and matrix_mautrix_telegram_container_labels_traefik_enabled and matrix_mautrix_telegram_container_labels_exposure_enabled) else '',
@@ -15,164 +15,164 @@
# thanks to `just rebuild-mautrix-meta-instagram` (`bin/rebuild-mautrix-meta-instagram.sh`). # thanks to `just rebuild-mautrix-meta-instagram` (`bin/rebuild-mautrix-meta-instagram.sh`).
# If you'd like to make changes to the Instagram role, consider making your changes to the Messenger role instead. # If you'd like to make changes to the Instagram role, consider making your changes to the Messenger role instead.
matrix_mautrix_meta_messenger_enabled: true matrix_bridge_mautrix_meta_messenger_enabled: true
matrix_mautrix_meta_messenger_identifier: matrix-mautrix-meta-messenger matrix_bridge_mautrix_meta_messenger_identifier: matrix-mautrix-meta-messenger
# renovate: datasource=docker depName=dock.mau.dev/mautrix/meta # renovate: datasource=docker depName=dock.mau.dev/mautrix/meta
matrix_mautrix_meta_messenger_version: v0.2606.0 matrix_bridge_mautrix_meta_messenger_version: v0.2606.0
matrix_mautrix_meta_messenger_base_path: "{{ matrix_base_data_path }}/mautrix-meta-messenger" matrix_bridge_mautrix_meta_messenger_base_path: "{{ matrix_base_data_path }}/mautrix-meta-messenger"
matrix_mautrix_meta_messenger_config_path: "{{ matrix_mautrix_meta_messenger_base_path }}/config" matrix_bridge_mautrix_meta_messenger_config_path: "{{ matrix_bridge_mautrix_meta_messenger_base_path }}/config"
matrix_mautrix_meta_messenger_data_path: "{{ matrix_mautrix_meta_messenger_base_path }}/data" matrix_bridge_mautrix_meta_messenger_data_path: "{{ matrix_bridge_mautrix_meta_messenger_base_path }}/data"
matrix_mautrix_meta_messenger_container_src_files_path: "{{ matrix_mautrix_meta_messenger_base_path }}/container-src" matrix_bridge_mautrix_meta_messenger_container_src_files_path: "{{ matrix_bridge_mautrix_meta_messenger_base_path }}/container-src"
matrix_mautrix_meta_messenger_container_image_self_build: false matrix_bridge_mautrix_meta_messenger_container_image_self_build: false
matrix_mautrix_meta_messenger_container_image_self_build_repo: "https://github.com/mautrix/meta.git" matrix_bridge_mautrix_meta_messenger_container_image_self_build_repo: "https://github.com/mautrix/meta.git"
matrix_mautrix_meta_messenger_container_image: "{{ matrix_mautrix_meta_messenger_container_image_registry_prefix }}mautrix/meta:{{ matrix_mautrix_meta_messenger_container_image_tag }}" matrix_bridge_mautrix_meta_messenger_container_image: "{{ matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix }}mautrix/meta:{{ matrix_bridge_mautrix_meta_messenger_container_image_tag }}"
matrix_mautrix_meta_messenger_container_image_registry_prefix: "{{ 'localhost/' if matrix_mautrix_meta_messenger_container_image_self_build else matrix_mautrix_meta_messenger_container_image_registry_prefix_upstream }}" matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix: "{{ 'localhost/' if matrix_bridge_mautrix_meta_messenger_container_image_self_build else matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix_upstream }}"
matrix_mautrix_meta_messenger_container_image_registry_prefix_upstream: "{{ matrix_mautrix_meta_messenger_container_image_registry_prefix_upstream_default }}" matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix_upstream: "{{ matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix_upstream_default }}"
matrix_mautrix_meta_messenger_container_image_registry_prefix_upstream_default: "dock.mau.dev/" matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix_upstream_default: "dock.mau.dev/"
# Prebuilt container images for specific commit hashes are tagged with an architecture suffix (e.g. `HASH-amd64`). # Prebuilt container images for specific commit hashes are tagged with an architecture suffix (e.g. `HASH-amd64`).
matrix_mautrix_meta_messenger_container_image_tag: "{{ matrix_mautrix_meta_messenger_version }}{{ ('-' ~ matrix_architecture) if (matrix_mautrix_meta_messenger_version | length == 40) else '' }}" matrix_bridge_mautrix_meta_messenger_container_image_tag: "{{ matrix_bridge_mautrix_meta_messenger_version }}{{ ('-' ~ matrix_architecture) if (matrix_bridge_mautrix_meta_messenger_version | length == 40) else '' }}"
matrix_mautrix_meta_messenger_container_network: "" matrix_bridge_mautrix_meta_messenger_container_network: ""
matrix_mautrix_meta_messenger_container_additional_networks: "{{ matrix_mautrix_meta_messenger_container_additional_networks_auto + matrix_mautrix_meta_messenger_container_additional_networks_custom }}" matrix_bridge_mautrix_meta_messenger_container_additional_networks: "{{ matrix_bridge_mautrix_meta_messenger_container_additional_networks_auto + matrix_bridge_mautrix_meta_messenger_container_additional_networks_custom }}"
matrix_mautrix_meta_messenger_container_additional_networks_auto: [] matrix_bridge_mautrix_meta_messenger_container_additional_networks_auto: []
matrix_mautrix_meta_messenger_container_additional_networks_custom: [] matrix_bridge_mautrix_meta_messenger_container_additional_networks_custom: []
# matrix_mautrix_meta_messenger_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container. # matrix_bridge_mautrix_meta_messenger_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. # See `../templates/labels.j2` for details.
# #
# To inject your own other container labels, see `matrix_mautrix_meta_messenger_container_labels_additional_labels`. # To inject your own other container labels, see `matrix_bridge_mautrix_meta_messenger_container_labels_additional_labels`.
matrix_mautrix_meta_messenger_container_labels_traefik_enabled: true matrix_bridge_mautrix_meta_messenger_container_labels_traefik_enabled: true
matrix_mautrix_meta_messenger_container_labels_traefik_docker_network: "{{ matrix_mautrix_meta_messenger_container_network }}" matrix_bridge_mautrix_meta_messenger_container_labels_traefik_docker_network: "{{ matrix_bridge_mautrix_meta_messenger_container_network }}"
matrix_mautrix_meta_messenger_container_labels_traefik_entrypoints: web-secure matrix_bridge_mautrix_meta_messenger_container_labels_traefik_entrypoints: web-secure
matrix_mautrix_meta_messenger_container_labels_traefik_tls_certResolver: default # noqa var-naming matrix_bridge_mautrix_meta_messenger_container_labels_traefik_tls_certResolver: default # noqa var-naming
# Controls whether labels will be added that expose the bridge's metrics # Controls whether labels will be added that expose the bridge's metrics
matrix_mautrix_meta_messenger_container_labels_metrics_enabled: "{{ matrix_mautrix_meta_messenger_metrics_enabled and matrix_mautrix_meta_messenger_metrics_proxying_enabled }}" matrix_bridge_mautrix_meta_messenger_container_labels_metrics_enabled: "{{ matrix_bridge_mautrix_meta_messenger_metrics_enabled and matrix_bridge_mautrix_meta_messenger_metrics_proxying_enabled }}"
matrix_mautrix_meta_messenger_container_labels_metrics_traefik_rule: "Host(`{{ matrix_mautrix_meta_messenger_metrics_proxying_hostname }}`) && PathPrefix(`{{ matrix_mautrix_meta_messenger_metrics_proxying_path_prefix }}`)" matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_rule: "Host(`{{ matrix_bridge_mautrix_meta_messenger_metrics_proxying_hostname }}`) && PathPrefix(`{{ matrix_bridge_mautrix_meta_messenger_metrics_proxying_path_prefix }}`)"
matrix_mautrix_meta_messenger_container_labels_metrics_traefik_priority: 0 matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_priority: 0
matrix_mautrix_meta_messenger_container_labels_metrics_traefik_entrypoints: "{{ matrix_mautrix_meta_messenger_container_labels_traefik_entrypoints }}" matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_entrypoints: "{{ matrix_bridge_mautrix_meta_messenger_container_labels_traefik_entrypoints }}"
matrix_mautrix_meta_messenger_container_labels_metrics_traefik_tls: "{{ matrix_mautrix_meta_messenger_container_labels_metrics_traefik_entrypoints != 'web' }}" matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_tls: "{{ matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_entrypoints != 'web' }}"
matrix_mautrix_meta_messenger_container_labels_metrics_traefik_tls_certResolver: "{{ matrix_mautrix_meta_messenger_container_labels_traefik_tls_certResolver }}" # noqa var-naming matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_tls_certResolver: "{{ matrix_bridge_mautrix_meta_messenger_container_labels_traefik_tls_certResolver }}" # noqa var-naming
matrix_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_enabled: false matrix_bridge_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_enabled: false
# See: https://doc.traefik.io/traefik/middlewares/http/basicauth/#users # See: https://doc.traefik.io/traefik/middlewares/http/basicauth/#users
matrix_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_users: '' matrix_bridge_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_users: ''
# Controls whether labels will be added that expose mautrix-meta-messenger's HTTP API # Controls whether labels will be added that expose mautrix-meta-messenger's HTTP API
# (used by tools like mautrix-manager for bridge login) at `https://<hostname><path_prefix>`. # (used by tools like mautrix-manager for bridge login) at `https://<hostname><path_prefix>`.
matrix_mautrix_meta_messenger_container_labels_exposure_enabled: "{{ matrix_mautrix_meta_messenger_exposure_enabled }}" matrix_bridge_mautrix_meta_messenger_container_labels_exposure_enabled: "{{ matrix_bridge_mautrix_meta_messenger_exposure_enabled }}"
matrix_mautrix_meta_messenger_container_labels_exposure_traefik_rule: "Host(`{{ matrix_mautrix_meta_messenger_exposure_hostname }}`) && PathPrefix(`{{ matrix_mautrix_meta_messenger_exposure_path_prefix }}`)" matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_rule: "Host(`{{ matrix_bridge_mautrix_meta_messenger_exposure_hostname }}`) && PathPrefix(`{{ matrix_bridge_mautrix_meta_messenger_exposure_path_prefix }}`)"
matrix_mautrix_meta_messenger_container_labels_exposure_traefik_priority: 0 matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_priority: 0
matrix_mautrix_meta_messenger_container_labels_exposure_traefik_entrypoints: "{{ matrix_mautrix_meta_messenger_container_labels_traefik_entrypoints }}" matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_entrypoints: "{{ matrix_bridge_mautrix_meta_messenger_container_labels_traefik_entrypoints }}"
matrix_mautrix_meta_messenger_container_labels_exposure_traefik_tls: "{{ matrix_mautrix_meta_messenger_container_labels_exposure_traefik_entrypoints != 'web' }}" matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_tls: "{{ matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_entrypoints != 'web' }}"
matrix_mautrix_meta_messenger_container_labels_exposure_traefik_tls_certResolver: "{{ matrix_mautrix_meta_messenger_container_labels_traefik_tls_certResolver }}" # noqa var-naming matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_tls_certResolver: "{{ matrix_bridge_mautrix_meta_messenger_container_labels_traefik_tls_certResolver }}" # noqa var-naming
# matrix_mautrix_meta_messenger_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file. # matrix_bridge_mautrix_meta_messenger_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
# See `../templates/labels.j2` for details. # See `../templates/labels.j2` for details.
# #
# Example: # Example:
# matrix_mautrix_meta_messenger_container_labels_additional_labels: | # matrix_bridge_mautrix_meta_messenger_container_labels_additional_labels: |
# my.label=1 # my.label=1
# another.label="here" # another.label="here"
matrix_mautrix_meta_messenger_container_labels_additional_labels: '' matrix_bridge_mautrix_meta_messenger_container_labels_additional_labels: ''
# A list of extra arguments to pass to the container # A list of extra arguments to pass to the container
matrix_mautrix_meta_messenger_container_extra_arguments: [] matrix_bridge_mautrix_meta_messenger_container_extra_arguments: []
# List of systemd services that the systemd service depends on. # List of systemd services that the systemd service depends on.
matrix_mautrix_meta_messenger_systemd_required_services_list: "{{ matrix_mautrix_meta_messenger_systemd_required_services_list_default + matrix_mautrix_meta_messenger_systemd_required_services_list_auto + matrix_mautrix_meta_messenger_systemd_required_services_list_custom }}" matrix_bridge_mautrix_meta_messenger_systemd_required_services_list: "{{ matrix_bridge_mautrix_meta_messenger_systemd_required_services_list_default + matrix_bridge_mautrix_meta_messenger_systemd_required_services_list_auto + matrix_bridge_mautrix_meta_messenger_systemd_required_services_list_custom }}"
matrix_mautrix_meta_messenger_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}" matrix_bridge_mautrix_meta_messenger_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
matrix_mautrix_meta_messenger_systemd_required_services_list_auto: [] matrix_bridge_mautrix_meta_messenger_systemd_required_services_list_auto: []
matrix_mautrix_meta_messenger_systemd_required_services_list_custom: [] matrix_bridge_mautrix_meta_messenger_systemd_required_services_list_custom: []
# List of systemd services that the systemd service wants # List of systemd services that the systemd service wants
matrix_mautrix_meta_messenger_systemd_wanted_services_list: [] matrix_bridge_mautrix_meta_messenger_systemd_wanted_services_list: []
# Controls whether the bridge container exposes its HTTP port. # Controls whether the bridge container exposes its HTTP port.
# #
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:29319"), or empty string to not expose. # Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:29319"), or empty string to not expose.
matrix_mautrix_meta_messenger_container_http_host_bind_port: '' matrix_bridge_mautrix_meta_messenger_container_http_host_bind_port: ''
# Database-related configuration fields # Database-related configuration fields
matrix_mautrix_meta_messenger_database_engine: sqlite3-fk-wal matrix_bridge_mautrix_meta_messenger_database_engine: sqlite3-fk-wal
matrix_mautrix_meta_messenger_sqlite_database_path_local: "{{ matrix_mautrix_meta_messenger_data_path }}/mautrix-meta.db" matrix_bridge_mautrix_meta_messenger_sqlite_database_path_local: "{{ matrix_bridge_mautrix_meta_messenger_data_path }}/mautrix-meta.db"
matrix_mautrix_meta_messenger_sqlite_database_path_in_container: "/data/mautrix-meta.db" matrix_bridge_mautrix_meta_messenger_sqlite_database_path_in_container: "/data/mautrix-meta.db"
matrix_mautrix_meta_messenger_database_suffix: |- matrix_bridge_mautrix_meta_messenger_database_suffix: |-
{{ {{
({ ({
'facebook': '_facebook', 'facebook': '_facebook',
'facebook-tor': '_facebook', 'facebook-tor': '_facebook',
'messenger': '_messenger', 'messenger': '_messenger',
'instagram': '_instagram', 'instagram': '_instagram',
})[matrix_mautrix_meta_messenger_meta_mode] })[matrix_bridge_mautrix_meta_messenger_meta_mode]
}} }}
matrix_mautrix_meta_messenger_database_username: "matrix_mautrix_meta{{ matrix_mautrix_meta_messenger_database_suffix }}" matrix_bridge_mautrix_meta_messenger_database_username: "matrix_mautrix_meta{{ matrix_bridge_mautrix_meta_messenger_database_suffix }}"
matrix_mautrix_meta_messenger_database_password: '' matrix_bridge_mautrix_meta_messenger_database_password: ''
matrix_mautrix_meta_messenger_database_hostname: '' matrix_bridge_mautrix_meta_messenger_database_hostname: ''
matrix_mautrix_meta_messenger_database_port: 5432 matrix_bridge_mautrix_meta_messenger_database_port: 5432
matrix_mautrix_meta_messenger_database_name: "matrix_mautrix_meta{{ matrix_mautrix_meta_messenger_database_suffix }}" matrix_bridge_mautrix_meta_messenger_database_name: "matrix_mautrix_meta{{ matrix_bridge_mautrix_meta_messenger_database_suffix }}"
matrix_mautrix_meta_messenger_database_sslmode: disable matrix_bridge_mautrix_meta_messenger_database_sslmode: disable
matrix_mautrix_meta_messenger_database_connection_string: 'postgres://{{ matrix_mautrix_meta_messenger_database_username }}:{{ matrix_mautrix_meta_messenger_database_password }}@{{ matrix_mautrix_meta_messenger_database_hostname }}:{{ matrix_mautrix_meta_messenger_database_port }}/{{ matrix_mautrix_meta_messenger_database_name }}?sslmode={{ matrix_mautrix_meta_messenger_database_sslmode }}' matrix_bridge_mautrix_meta_messenger_database_connection_string: 'postgres://{{ matrix_bridge_mautrix_meta_messenger_database_username }}:{{ matrix_bridge_mautrix_meta_messenger_database_password }}@{{ matrix_bridge_mautrix_meta_messenger_database_hostname }}:{{ matrix_bridge_mautrix_meta_messenger_database_port }}/{{ matrix_bridge_mautrix_meta_messenger_database_name }}?sslmode={{ matrix_bridge_mautrix_meta_messenger_database_sslmode }}'
matrix_mautrix_meta_messenger_homeserver_address: "" matrix_bridge_mautrix_meta_messenger_homeserver_address: ""
matrix_mautrix_meta_messenger_homeserver_domain: '{{ matrix_domain }}' matrix_bridge_mautrix_meta_messenger_homeserver_domain: '{{ matrix_domain }}'
# Whether asynchronous uploads via MSC2246 should be enabled for media. # Whether asynchronous uploads via MSC2246 should be enabled for media.
# Requires a homeserver that supports MSC2246 (https://github.com/matrix-org/matrix-spec-proposals/pull/2246). # Requires a homeserver that supports MSC2246 (https://github.com/matrix-org/matrix-spec-proposals/pull/2246).
matrix_mautrix_meta_messenger_homeserver_async_media: false matrix_bridge_mautrix_meta_messenger_homeserver_async_media: false
matrix_mautrix_meta_messenger_homeserver_token: '' matrix_bridge_mautrix_meta_messenger_homeserver_token: ''
matrix_mautrix_meta_messenger_appservice_address: "http://{{ matrix_mautrix_meta_messenger_identifier }}:29319" matrix_bridge_mautrix_meta_messenger_appservice_address: "http://{{ matrix_bridge_mautrix_meta_messenger_identifier }}:29319"
# Scheme of the bridge's public address (see `matrix_mautrix_meta_messenger_bridge_public_address`). # Scheme of the bridge's public address (see `matrix_bridge_mautrix_meta_messenger_bridge_public_address`).
matrix_mautrix_meta_messenger_scheme: https matrix_bridge_mautrix_meta_messenger_scheme: https
# The public base URL at which this bridge's HTTP API is reachable from outside (when exposed). # The public base URL at which this bridge's HTTP API is reachable from outside (when exposed).
# Used for the provisioning API's external-server (OpenID) flow and for public media links. # Used for the provisioning API's external-server (OpenID) flow and for public media links.
matrix_mautrix_meta_messenger_bridge_public_address: "{{ (matrix_mautrix_meta_messenger_scheme + '://' + matrix_mautrix_meta_messenger_exposure_hostname + matrix_mautrix_meta_messenger_exposure_path_prefix) if matrix_mautrix_meta_messenger_exposure_enabled else '' }}" matrix_bridge_mautrix_meta_messenger_bridge_public_address: "{{ (matrix_bridge_mautrix_meta_messenger_scheme + '://' + matrix_bridge_mautrix_meta_messenger_exposure_hostname + matrix_bridge_mautrix_meta_messenger_exposure_path_prefix) if matrix_bridge_mautrix_meta_messenger_exposure_enabled else '' }}"
matrix_mautrix_meta_messenger_appservice_id: "{{ matrix_mautrix_meta_messenger_meta_mode }}" matrix_bridge_mautrix_meta_messenger_appservice_id: "{{ matrix_bridge_mautrix_meta_messenger_meta_mode }}"
matrix_mautrix_meta_messenger_msc4190_enabled: "{{ matrix_bridges_msc4190_enabled }}" matrix_bridge_mautrix_meta_messenger_msc4190_enabled: "{{ matrix_bridges_msc4190_enabled }}"
matrix_mautrix_meta_messenger_self_sign_enabled: "{{ matrix_bridges_self_sign_enabled }}" matrix_bridge_mautrix_meta_messenger_self_sign_enabled: "{{ matrix_bridges_self_sign_enabled }}"
# For Facebook/Messenger, we use the same `@messengerbot:example.com` username regardless of how bridging happens for multiple reasons: # For Facebook/Messenger, we use the same `@messengerbot:example.com` username regardless of how bridging happens for multiple reasons:
# - it's consistent - regardless of how bridging happens, the bridged service is actually Messenger # - it's consistent - regardless of how bridging happens, the bridged service is actually Messenger
# - it's easy for users - you may change the mode, but the bot is always at `@messengerbot:example.com` # - it's easy for users - you may change the mode, but the bot is always at `@messengerbot:example.com`
# - it doesn't conflict with mautrix-facebook which uses `@facebookbot:example.com` # - it doesn't conflict with mautrix-facebook which uses `@facebookbot:example.com`
# - `matrix_mautrix_meta_messenger_appservice_avatar` only has icons for Messenger and Instagram, not Facebook # - `matrix_bridge_mautrix_meta_messenger_appservice_avatar` only has icons for Messenger and Instagram, not Facebook
matrix_mautrix_meta_messenger_appservice_username_prefix: |- matrix_bridge_mautrix_meta_messenger_appservice_username_prefix: |-
{{ {{
({ ({
'facebook': 'messenger', 'facebook': 'messenger',
'facebook-tor': 'messenger', 'facebook-tor': 'messenger',
'messenger': 'messenger', 'messenger': 'messenger',
'instagram': 'instagram', 'instagram': 'instagram',
})[matrix_mautrix_meta_messenger_meta_mode] })[matrix_bridge_mautrix_meta_messenger_meta_mode]
}} }}
matrix_mautrix_meta_messenger_appservice_username: "{{ matrix_mautrix_meta_messenger_appservice_username_prefix }}bot" matrix_bridge_mautrix_meta_messenger_appservice_username: "{{ matrix_bridge_mautrix_meta_messenger_appservice_username_prefix }}bot"
matrix_mautrix_meta_messenger_appservice_displayname: "{{ matrix_mautrix_meta_messenger_meta_mode | capitalize }} bridge bot" matrix_bridge_mautrix_meta_messenger_appservice_displayname: "{{ matrix_bridge_mautrix_meta_messenger_meta_mode | capitalize }} bridge bot"
matrix_mautrix_meta_messenger_appservice_avatar: "{{ 'mxc://maunium.net/JxjlbZUlCPULEeHZSwleUXQv' if matrix_mautrix_meta_messenger_meta_mode == 'instagram' else 'mxc://maunium.net/ygtkteZsXnGJLJHRchUwYWak' }}" matrix_bridge_mautrix_meta_messenger_appservice_avatar: "{{ 'mxc://maunium.net/JxjlbZUlCPULEeHZSwleUXQv' if matrix_bridge_mautrix_meta_messenger_meta_mode == 'instagram' else 'mxc://maunium.net/ygtkteZsXnGJLJHRchUwYWak' }}"
matrix_mautrix_meta_messenger_appservice_database_type: "{{ matrix_mautrix_meta_messenger_database_engine }}" matrix_bridge_mautrix_meta_messenger_appservice_database_type: "{{ matrix_bridge_mautrix_meta_messenger_database_engine }}"
matrix_mautrix_meta_messenger_appservice_database_uri: |- matrix_bridge_mautrix_meta_messenger_appservice_database_uri: |-
{{ {{
{ {
'sqlite3-fk-wal': ('sqlite:///' + matrix_mautrix_meta_messenger_sqlite_database_path_in_container), 'sqlite3-fk-wal': ('sqlite:///' + matrix_bridge_mautrix_meta_messenger_sqlite_database_path_in_container),
'postgres': matrix_mautrix_meta_messenger_database_connection_string, 'postgres': matrix_bridge_mautrix_meta_messenger_database_connection_string,
}[matrix_mautrix_meta_messenger_database_engine] }[matrix_bridge_mautrix_meta_messenger_database_engine]
}} }}
matrix_mautrix_meta_messenger_appservice_token: '' matrix_bridge_mautrix_meta_messenger_appservice_token: ''
# Controls which service this bridge is for. # Controls which service this bridge is for.
# Valid options: # Valid options:
@@ -181,154 +181,154 @@ matrix_mautrix_meta_messenger_appservice_token: ''
# (note: does not currently proxy media downloads) # (note: does not currently proxy media downloads)
# * messenger - connect to FB Messenger via messenger.com (can be used with the facebook side deactivated) # * messenger - connect to FB Messenger via messenger.com (can be used with the facebook side deactivated)
# * instagram - connect to Instagram DMs via instagram.com # * instagram - connect to Instagram DMs via instagram.com
matrix_mautrix_meta_messenger_meta_mode: messenger matrix_bridge_mautrix_meta_messenger_meta_mode: messenger
# When in `instagram` mode (see `matrix_mautrix_meta_messenger_meta_mode`), should the bridge connect to WhatsApp servers for encrypted chats? # When in `instagram` mode (see `matrix_bridge_mautrix_meta_messenger_meta_mode`), should the bridge connect to WhatsApp servers for encrypted chats?
matrix_mautrix_meta_messenger_meta_ig_e2ee: false matrix_bridge_mautrix_meta_messenger_meta_ig_e2ee: false
matrix_mautrix_meta_messenger_provisioning_shared_secret: disable matrix_bridge_mautrix_meta_messenger_provisioning_shared_secret: disable
# Whether or not metrics endpoint should be enabled. # Whether or not metrics endpoint should be enabled.
# Enabling them is usually enough for a local (in-container) Prometheus to consume them. # 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_meta_messenger_metrics_proxying_enabled`. # If metrics need to be consumed by another (external) Prometheus server, consider exposing them via `matrix_bridge_mautrix_meta_messenger_metrics_proxying_enabled`.
matrix_mautrix_meta_messenger_metrics_enabled: false matrix_bridge_mautrix_meta_messenger_metrics_enabled: false
# Controls whether metrics should be exposed on a public URL. # Controls whether metrics should be exposed on a public URL.
matrix_mautrix_meta_messenger_metrics_proxying_enabled: false matrix_bridge_mautrix_meta_messenger_metrics_proxying_enabled: false
matrix_mautrix_meta_messenger_metrics_proxying_hostname: '' matrix_bridge_mautrix_meta_messenger_metrics_proxying_hostname: ''
matrix_mautrix_meta_messenger_metrics_proxying_path_prefix: '' matrix_bridge_mautrix_meta_messenger_metrics_proxying_path_prefix: ''
# Controls whether mautrix-meta-messenger's HTTP API is exposed publicly (used by tools like mautrix-manager for bridge login). # Controls whether mautrix-meta-messenger's HTTP API is exposed publicly (used by tools like mautrix-manager for bridge login).
matrix_mautrix_meta_messenger_exposure_enabled: false matrix_bridge_mautrix_meta_messenger_exposure_enabled: false
matrix_mautrix_meta_messenger_exposure_hostname: '' matrix_bridge_mautrix_meta_messenger_exposure_hostname: ''
matrix_mautrix_meta_messenger_exposure_path_prefix: '' matrix_bridge_mautrix_meta_messenger_exposure_path_prefix: ''
matrix_mautrix_meta_messenger_bridge_username_prefix: |- matrix_bridge_mautrix_meta_messenger_bridge_username_prefix: |-
{{ {{
({ ({
'facebook': 'facebook_', 'facebook': 'facebook_',
'facebook-tor': 'facebook_', 'facebook-tor': 'facebook_',
'messenger': 'messenger_', 'messenger': 'messenger_',
'instagram': 'instagram_', 'instagram': 'instagram_',
})[matrix_mautrix_meta_messenger_meta_mode] })[matrix_bridge_mautrix_meta_messenger_meta_mode]
}} }}
# Localpart template of MXIDs for FB/IG users. # Localpart template of MXIDs for FB/IG users.
# {{.}} is replaced with the internal ID of the FB/IG user. # {{.}} is replaced with the internal ID of the FB/IG user.
# Changing this may require that you change the regex in the appservice. # Changing this may require that you change the regex in the appservice.
matrix_mautrix_meta_messenger_bridge_username_template: "{{ matrix_mautrix_meta_messenger_bridge_username_prefix + '{{.}}' }}" matrix_bridge_mautrix_meta_messenger_bridge_username_template: "{{ matrix_bridge_mautrix_meta_messenger_bridge_username_prefix + '{{.}}' }}"
matrix_mautrix_meta_messenger_bridge_displayname_suffix: |- matrix_bridge_mautrix_meta_messenger_bridge_displayname_suffix: |-
{{ {{
({ ({
'facebook': '(FB)', 'facebook': '(FB)',
'facebook-tor': '(FB)', 'facebook-tor': '(FB)',
'messenger': '(FB)', 'messenger': '(FB)',
'instagram': '(IG)', 'instagram': '(IG)',
})[matrix_mautrix_meta_messenger_meta_mode] })[matrix_bridge_mautrix_meta_messenger_meta_mode]
}} }}
matrix_mautrix_meta_messenger_bridge_displayname_template: '{% raw %}{{or .DisplayName .Username "Unknown user"}}{% endraw %}{{ (" " ~ matrix_mautrix_meta_messenger_bridge_displayname_suffix) if matrix_mautrix_meta_messenger_bridge_displayname_suffix else "" }}' matrix_bridge_mautrix_meta_messenger_bridge_displayname_template: '{% raw %}{{or .DisplayName .Username "Unknown user"}}{% endraw %}{{ (" " ~ matrix_bridge_mautrix_meta_messenger_bridge_displayname_suffix) if matrix_bridge_mautrix_meta_messenger_bridge_displayname_suffix else "" }}'
# The prefix for commands. Only required in non-management rooms. # The prefix for commands. Only required in non-management rooms.
matrix_mautrix_meta_messenger_bridge_command_prefix: |- matrix_bridge_mautrix_meta_messenger_bridge_command_prefix: |-
{{ {{
({ ({
'facebook': '!fb', 'facebook': '!fb',
'facebook-tor': '!fb', 'facebook-tor': '!fb',
'messenger': '!fb', 'messenger': '!fb',
'instagram': '!ig', 'instagram': '!ig',
})[matrix_mautrix_meta_messenger_meta_mode] })[matrix_bridge_mautrix_meta_messenger_meta_mode]
}} }}
# Whether or not created rooms should have federation enabled. # Whether or not created rooms should have federation enabled.
# If false, created portal rooms will never be federated. # If false, created portal rooms will never be federated.
matrix_mautrix_meta_messenger_bridge_federate_rooms: true matrix_bridge_mautrix_meta_messenger_bridge_federate_rooms: true
# Should the bridge create a space for each logged-in user and add bridged rooms to it? # Should the bridge create a space for each logged-in user and add bridged rooms to it?
# Users who logged in before turning this on should run `!meta sync-space` to create and fill the space for the first time. # Users who logged in before turning this on should run `!meta sync-space` to create and fill the space for the first time.
matrix_mautrix_meta_messenger_bridge_personal_filtering_spaces: true matrix_bridge_mautrix_meta_messenger_bridge_personal_filtering_spaces: true
# Enable End-to-bridge encryption # Enable End-to-bridge encryption
matrix_mautrix_meta_messenger_bridge_encryption_allow: "{{ matrix_bridges_encryption_enabled }}" matrix_bridge_mautrix_meta_messenger_bridge_encryption_allow: "{{ matrix_bridges_encryption_enabled }}"
matrix_mautrix_meta_messenger_bridge_encryption_default: "{{ matrix_bridges_encryption_default }}" matrix_bridge_mautrix_meta_messenger_bridge_encryption_default: "{{ matrix_bridges_encryption_default }}"
matrix_mautrix_meta_messenger_bridge_encryption_allow_key_sharing: "{{ matrix_mautrix_meta_messenger_bridge_encryption_allow }}" matrix_bridge_mautrix_meta_messenger_bridge_encryption_allow_key_sharing: "{{ matrix_bridge_mautrix_meta_messenger_bridge_encryption_allow }}"
matrix_mautrix_meta_messenger_bridge_encryption_appservice: false matrix_bridge_mautrix_meta_messenger_bridge_encryption_appservice: false
matrix_mautrix_meta_messenger_bridge_encryption_require: false matrix_bridge_mautrix_meta_messenger_bridge_encryption_require: false
matrix_mautrix_meta_messenger_double_puppet_secrets: "{{ matrix_mautrix_meta_messenger_double_puppet_secrets_auto | combine(matrix_mautrix_meta_messenger_double_puppet_secrets_custom) }}" matrix_bridge_mautrix_meta_messenger_double_puppet_secrets: "{{ matrix_bridge_mautrix_meta_messenger_double_puppet_secrets_auto | combine(matrix_bridge_mautrix_meta_messenger_double_puppet_secrets_custom) }}"
matrix_mautrix_meta_messenger_double_puppet_secrets_auto: {} matrix_bridge_mautrix_meta_messenger_double_puppet_secrets_auto: {}
matrix_mautrix_meta_messenger_double_puppet_secrets_custom: {} matrix_bridge_mautrix_meta_messenger_double_puppet_secrets_custom: {}
matrix_mautrix_meta_messenger_bridge_permissions: "{{ matrix_mautrix_meta_messenger_bridge_permissions_default | combine(matrix_mautrix_meta_messenger_bridge_permissions_custom) }}" matrix_bridge_mautrix_meta_messenger_bridge_permissions: "{{ matrix_bridge_mautrix_meta_messenger_bridge_permissions_default | combine(matrix_bridge_mautrix_meta_messenger_bridge_permissions_custom) }}"
matrix_mautrix_meta_messenger_bridge_permissions_default: |- matrix_bridge_mautrix_meta_messenger_bridge_permissions_default: |-
{{ {{
{'*': 'relay', matrix_mautrix_meta_messenger_homeserver_domain: 'user'} {'*': 'relay', matrix_bridge_mautrix_meta_messenger_homeserver_domain: 'user'}
| combine({matrix_admin: 'admin'} if matrix_admin else {}) | combine({matrix_admin: 'admin'} if matrix_admin else {})
}} }}
matrix_mautrix_meta_messenger_bridge_permissions_custom: {} matrix_bridge_mautrix_meta_messenger_bridge_permissions_custom: {}
# Enable bridge relay bot functionality # Enable bridge relay bot functionality
matrix_mautrix_meta_messenger_bridge_relay_enabled: "{{ matrix_bridges_relay_enabled }}" matrix_bridge_mautrix_meta_messenger_bridge_relay_enabled: "{{ matrix_bridges_relay_enabled }}"
matrix_mautrix_meta_messenger_bridge_relay_admin_only: true matrix_bridge_mautrix_meta_messenger_bridge_relay_admin_only: true
matrix_mautrix_meta_messenger_bridge_relay_default_relays: [] matrix_bridge_mautrix_meta_messenger_bridge_relay_default_relays: []
matrix_mautrix_meta_messenger_backfill_enabled: true matrix_bridge_mautrix_meta_messenger_backfill_enabled: true
matrix_mautrix_meta_messenger_backfill_max_initial_messages: 50 matrix_bridge_mautrix_meta_messenger_backfill_max_initial_messages: 50
matrix_mautrix_meta_messenger_backfill_max_catchup_messages: 500 matrix_bridge_mautrix_meta_messenger_backfill_max_catchup_messages: 500
matrix_mautrix_meta_messenger_backfill_unread_hours_threshold: 720 matrix_bridge_mautrix_meta_messenger_backfill_unread_hours_threshold: 720
matrix_mautrix_meta_messenger_backfill_threads_max_initial_messages: 50 matrix_bridge_mautrix_meta_messenger_backfill_threads_max_initial_messages: 50
matrix_mautrix_meta_messenger_public_media_signing_key: '' matrix_bridge_mautrix_meta_messenger_public_media_signing_key: ''
# Specifies the default log level. # Specifies the default log level.
# This bridge uses zerolog, so valid levels are: panic, fatal, error, warn, info, debug, trace # This bridge uses zerolog, so valid levels are: panic, fatal, error, warn, info, debug, trace
matrix_mautrix_meta_messenger_logging_min_level: warn matrix_bridge_mautrix_meta_messenger_logging_min_level: warn
# Default configuration template which covers the generic use case. # Default configuration template which covers the generic use case.
# You can customize it by controlling the various variables inside it. # You can customize it by controlling the various variables inside it.
# #
# For a more advanced customization, you can extend the default (see `matrix_mautrix_meta_messenger_configuration_extension_yaml`) # For a more advanced customization, you can extend the default (see `matrix_bridge_mautrix_meta_messenger_configuration_extension_yaml`)
# or completely replace this variable with your own template. # or completely replace this variable with your own template.
matrix_mautrix_meta_messenger_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}" matrix_bridge_mautrix_meta_messenger_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
matrix_mautrix_meta_messenger_configuration_extension_yaml: | matrix_bridge_mautrix_meta_messenger_configuration_extension_yaml: |
# Your custom YAML configuration goes here. # Your custom YAML configuration goes here.
# This configuration extends the default starting configuration (`matrix_mautrix_meta_messenger_configuration_yaml`). # This configuration extends the default starting configuration (`matrix_bridge_mautrix_meta_messenger_configuration_yaml`).
# #
# You can override individual variables from the default configuration, or introduce new ones. # 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 # If you need something more special, you can take full control by
# completely redefining `matrix_mautrix_meta_messenger_configuration_yaml`. # completely redefining `matrix_bridge_mautrix_meta_messenger_configuration_yaml`.
matrix_mautrix_meta_messenger_configuration_extension: "{{ matrix_mautrix_meta_messenger_configuration_extension_yaml | from_yaml if matrix_mautrix_meta_messenger_configuration_extension_yaml | from_yaml is mapping else {} }}" matrix_bridge_mautrix_meta_messenger_configuration_extension: "{{ matrix_bridge_mautrix_meta_messenger_configuration_extension_yaml | from_yaml if matrix_bridge_mautrix_meta_messenger_configuration_extension_yaml | from_yaml is mapping else {} }}"
# Holds the final configuration (a combination of the default and its extension). # 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_meta_messenger_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_bridge_mautrix_meta_messenger_configuration_yaml`.
matrix_mautrix_meta_messenger_configuration: "{{ matrix_mautrix_meta_messenger_configuration_yaml | from_yaml | combine(matrix_mautrix_meta_messenger_configuration_extension, recursive=True) }}" matrix_bridge_mautrix_meta_messenger_configuration: "{{ matrix_bridge_mautrix_meta_messenger_configuration_yaml | from_yaml | combine(matrix_bridge_mautrix_meta_messenger_configuration_extension, recursive=True) }}"
matrix_mautrix_meta_messenger_registration_yaml: | matrix_bridge_mautrix_meta_messenger_registration_yaml: |
id: {{ matrix_mautrix_meta_messenger_appservice_id | to_json }} id: {{ matrix_bridge_mautrix_meta_messenger_appservice_id | to_json }}
as_token: {{ matrix_mautrix_meta_messenger_appservice_token | to_json }} as_token: {{ matrix_bridge_mautrix_meta_messenger_appservice_token | to_json }}
hs_token: {{ matrix_mautrix_meta_messenger_homeserver_token | to_json }} hs_token: {{ matrix_bridge_mautrix_meta_messenger_homeserver_token | to_json }}
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_meta_messenger_bridge_username_prefix | regex_escape }}.+:{{ matrix_mautrix_meta_messenger_homeserver_domain | regex_escape }}$' regex: '^@{{ matrix_bridge_mautrix_meta_messenger_bridge_username_prefix | regex_escape }}.+:{{ matrix_bridge_mautrix_meta_messenger_homeserver_domain | regex_escape }}$'
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_meta_messenger_appservice_username | regex_escape }}:{{ matrix_mautrix_meta_messenger_homeserver_domain | regex_escape }}$' regex: '^@{{ matrix_bridge_mautrix_meta_messenger_appservice_username | regex_escape }}:{{ matrix_bridge_mautrix_meta_messenger_homeserver_domain | regex_escape }}$'
url: {{ matrix_mautrix_meta_messenger_appservice_address }} url: {{ matrix_bridge_mautrix_meta_messenger_appservice_address }}
sender_localpart: _bot_{{ matrix_mautrix_meta_messenger_appservice_username }} sender_localpart: _bot_{{ matrix_bridge_mautrix_meta_messenger_appservice_username }}
rate_limited: false rate_limited: false
de.sorunome.msc2409.push_ephemeral: true de.sorunome.msc2409.push_ephemeral: true
receive_ephemeral: true receive_ephemeral: true
io.element.msc4190: {{ matrix_mautrix_meta_messenger_msc4190_enabled | to_json }} io.element.msc4190: {{ matrix_bridge_mautrix_meta_messenger_msc4190_enabled | to_json }}
matrix_mautrix_meta_messenger_registration: "{{ matrix_mautrix_meta_messenger_registration_yaml | from_yaml }}" matrix_bridge_mautrix_meta_messenger_registration: "{{ matrix_bridge_mautrix_meta_messenger_registration_yaml | from_yaml }}"
# matrix_mautrix_meta_messenger_restart_necessary controls whether the service # matrix_bridge_mautrix_meta_messenger_restart_necessary controls whether the service
# will be restarted (when true) or merely started (when false) by the # will be restarted (when true) or merely started (when false) by the
# systemd service manager role (when conditional restart is enabled). # systemd service manager role (when conditional restart is enabled).
# #
@@ -336,4 +336,4 @@ matrix_mautrix_meta_messenger_registration: "{{ matrix_mautrix_meta_messenger_re
# any configuration files, the systemd service file, or the container image changed. # 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 # 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). # installation tasks haven't run (e.g., due to --tags skipping them).
matrix_mautrix_meta_messenger_restart_necessary: false matrix_bridge_mautrix_meta_messenger_restart_necessary: false
@@ -6,41 +6,41 @@
--- ---
- ansible.builtin.set_fact: - ansible.builtin.set_fact:
matrix_mautrix_meta_messenger_migration_requires_restart: false matrix_bridge_mautrix_meta_messenger_migration_requires_restart: false
- when: "matrix_mautrix_meta_messenger_database_engine == 'postgres'" - when: "matrix_bridge_mautrix_meta_messenger_database_engine == 'postgres'"
block: block:
- name: Check if an SQLite database already exists - name: Check if an SQLite database already exists
ansible.builtin.stat: ansible.builtin.stat:
path: "{{ matrix_mautrix_meta_messenger_sqlite_database_path_local }}" path: "{{ matrix_bridge_mautrix_meta_messenger_sqlite_database_path_local }}"
register: matrix_mautrix_meta_messenger_sqlite_database_path_local_stat_result register: matrix_bridge_mautrix_meta_messenger_sqlite_database_path_local_stat_result
- when: "matrix_mautrix_meta_messenger_sqlite_database_path_local_stat_result.stat.exists | bool" - when: "matrix_bridge_mautrix_meta_messenger_sqlite_database_path_local_stat_result.stat.exists | bool"
block: block:
- ansible.builtin.include_role: - ansible.builtin.include_role:
name: galaxy/postgres name: galaxy/postgres
tasks_from: migrate_db_to_postgres tasks_from: migrate_db_to_postgres
vars: vars:
postgres_db_migration_request: postgres_db_migration_request:
src: "{{ matrix_mautrix_meta_messenger_sqlite_database_path_local }}" src: "{{ matrix_bridge_mautrix_meta_messenger_sqlite_database_path_local }}"
dst: "{{ matrix_mautrix_meta_messenger_database_connection_string }}" dst: "{{ matrix_bridge_mautrix_meta_messenger_database_connection_string }}"
caller: "{{ role_path | basename }}" caller: "{{ role_path | basename }}"
engine_variable_name: 'matrix_mautrix_meta_messenger_database_engine' engine_variable_name: 'matrix_bridge_mautrix_meta_messenger_database_engine'
engine_old: 'sqlite' engine_old: 'sqlite'
systemd_services_to_stop: "{{ [matrix_mautrix_meta_messenger_identifier + '.service'] }}" systemd_services_to_stop: "{{ [matrix_bridge_mautrix_meta_messenger_identifier + '.service'] }}"
- ansible.builtin.set_fact: - ansible.builtin.set_fact:
matrix_mautrix_meta_messenger_migration_requires_restart: true matrix_bridge_mautrix_meta_messenger_migration_requires_restart: true
- name: Ensure mautrix-meta-messenger container image is pulled - name: Ensure mautrix-meta-messenger container image is pulled
community.docker.docker_image_pull: community.docker.docker_image_pull:
name: "{{ matrix_mautrix_meta_messenger_container_image }}" name: "{{ matrix_bridge_mautrix_meta_messenger_container_image }}"
pull: always pull: always
when: not matrix_mautrix_meta_messenger_container_image_self_build when: not matrix_bridge_mautrix_meta_messenger_container_image_self_build
register: matrix_mautrix_meta_messenger_container_image_pull_result register: matrix_bridge_mautrix_meta_messenger_container_image_pull_result
retries: "{{ devture_playbook_help_container_retries_count }}" retries: "{{ devture_playbook_help_container_retries_count }}"
delay: "{{ devture_playbook_help_container_retries_delay }}" delay: "{{ devture_playbook_help_container_retries_delay }}"
until: matrix_mautrix_meta_messenger_container_image_pull_result is not failed until: matrix_bridge_mautrix_meta_messenger_container_image_pull_result is not failed
- name: Ensure mautrix-meta-messenger paths exist - name: Ensure mautrix-meta-messenger paths exist
ansible.builtin.file: ansible.builtin.file:
@@ -50,93 +50,93 @@
owner: "{{ matrix_user_name }}" owner: "{{ matrix_user_name }}"
group: "{{ matrix_group_name }}" group: "{{ matrix_group_name }}"
with_items: with_items:
- {path: "{{ matrix_mautrix_meta_messenger_base_path }}", when: true} - {path: "{{ matrix_bridge_mautrix_meta_messenger_base_path }}", when: true}
- {path: "{{ matrix_mautrix_meta_messenger_config_path }}", when: true} - {path: "{{ matrix_bridge_mautrix_meta_messenger_config_path }}", when: true}
- {path: "{{ matrix_mautrix_meta_messenger_data_path }}", when: true} - {path: "{{ matrix_bridge_mautrix_meta_messenger_data_path }}", when: true}
- {path: "{{ matrix_mautrix_meta_messenger_container_src_files_path }}", when: "{{ matrix_mautrix_meta_messenger_container_image_self_build }}"} - {path: "{{ matrix_bridge_mautrix_meta_messenger_container_src_files_path }}", when: "{{ matrix_bridge_mautrix_meta_messenger_container_image_self_build }}"}
when: item.when | bool when: item.when | bool
- when: matrix_mautrix_meta_messenger_container_image_self_build | bool - when: matrix_bridge_mautrix_meta_messenger_container_image_self_build | bool
block: block:
- name: Ensure mautrix-meta-messenger repository is present on self-build - name: Ensure mautrix-meta-messenger repository is present on self-build
ansible.builtin.git: ansible.builtin.git:
repo: "{{ matrix_mautrix_meta_messenger_container_image_self_build_repo }}" repo: "{{ matrix_bridge_mautrix_meta_messenger_container_image_self_build_repo }}"
dest: "{{ matrix_mautrix_meta_messenger_container_src_files_path }}" dest: "{{ matrix_bridge_mautrix_meta_messenger_container_src_files_path }}"
version: "{{ matrix_mautrix_meta_messenger_container_image.split(':')[1] }}" version: "{{ matrix_bridge_mautrix_meta_messenger_container_image.split(':')[1] }}"
force: "yes" force: "yes"
become: true become: true
become_user: "{{ matrix_user_name }}" become_user: "{{ matrix_user_name }}"
register: matrix_mautrix_meta_messenger_git_pull_results register: matrix_bridge_mautrix_meta_messenger_git_pull_results
- name: Ensure mautrix-meta-messenger container image is built - name: Ensure mautrix-meta-messenger container image is built
community.docker.docker_image_build: community.docker.docker_image_build:
name: "{{ matrix_mautrix_meta_messenger_container_image }}" name: "{{ matrix_bridge_mautrix_meta_messenger_container_image }}"
dockerfile: Dockerfile dockerfile: Dockerfile
path: "{{ matrix_mautrix_meta_messenger_container_src_files_path }}" path: "{{ matrix_bridge_mautrix_meta_messenger_container_src_files_path }}"
pull: true pull: true
rebuild: "{{ 'always' if matrix_mautrix_meta_messenger_git_pull_results.changed | bool else 'never' }}" rebuild: "{{ 'always' if matrix_bridge_mautrix_meta_messenger_git_pull_results.changed | bool else 'never' }}"
register: matrix_mautrix_meta_messenger_container_image_build_result register: matrix_bridge_mautrix_meta_messenger_container_image_build_result
- name: Ensure mautrix-meta-messenger config.yaml installed - name: Ensure mautrix-meta-messenger config.yaml installed
ansible.builtin.copy: ansible.builtin.copy:
content: "{{ matrix_mautrix_meta_messenger_configuration | to_nice_yaml(indent=2, width=999999) }}" content: "{{ matrix_bridge_mautrix_meta_messenger_configuration | to_nice_yaml(indent=2, width=999999) }}"
dest: "{{ matrix_mautrix_meta_messenger_config_path }}/config.yaml" dest: "{{ matrix_bridge_mautrix_meta_messenger_config_path }}/config.yaml"
mode: '0644' mode: '0644'
owner: "{{ matrix_user_name }}" owner: "{{ matrix_user_name }}"
group: "{{ matrix_group_name }}" group: "{{ matrix_group_name }}"
register: matrix_mautrix_meta_messenger_config_result register: matrix_bridge_mautrix_meta_messenger_config_result
- name: Ensure mautrix-meta-messenger registration.yaml installed - name: Ensure mautrix-meta-messenger registration.yaml installed
ansible.builtin.copy: ansible.builtin.copy:
content: "{{ matrix_mautrix_meta_messenger_registration | to_nice_yaml(indent=2, width=999999) }}" content: "{{ matrix_bridge_mautrix_meta_messenger_registration | to_nice_yaml(indent=2, width=999999) }}"
dest: "{{ matrix_mautrix_meta_messenger_config_path }}/registration.yaml" dest: "{{ matrix_bridge_mautrix_meta_messenger_config_path }}/registration.yaml"
mode: '0644' mode: '0644'
owner: "{{ matrix_user_name }}" owner: "{{ matrix_user_name }}"
group: "{{ matrix_group_name }}" group: "{{ matrix_group_name }}"
register: matrix_mautrix_meta_messenger_registration_result register: matrix_bridge_mautrix_meta_messenger_registration_result
- name: Ensure mautrix-meta-messenger support files installed - name: Ensure mautrix-meta-messenger support files installed
ansible.builtin.template: ansible.builtin.template:
src: "{{ role_path }}/templates/{{ item }}.j2" src: "{{ role_path }}/templates/{{ item }}.j2"
dest: "{{ matrix_mautrix_meta_messenger_base_path }}/{{ item }}" dest: "{{ matrix_bridge_mautrix_meta_messenger_base_path }}/{{ item }}"
mode: '0640' mode: '0640'
owner: "{{ matrix_user_name }}" owner: "{{ matrix_user_name }}"
group: "{{ matrix_group_name }}" group: "{{ matrix_group_name }}"
with_items: with_items:
- labels - labels
register: matrix_mautrix_meta_messenger_support_files_result register: matrix_bridge_mautrix_meta_messenger_support_files_result
- name: Ensure mautrix-meta-messenger container network is created - name: Ensure mautrix-meta-messenger container network is created
when: matrix_mautrix_meta_messenger_container_network != 'host' when: matrix_bridge_mautrix_meta_messenger_container_network != 'host'
community.general.docker_network: community.general.docker_network:
enable_ipv6: "{{ devture_systemd_docker_base_ipv6_enabled }}" enable_ipv6: "{{ devture_systemd_docker_base_ipv6_enabled }}"
name: "{{ matrix_mautrix_meta_messenger_container_network }}" name: "{{ matrix_bridge_mautrix_meta_messenger_container_network }}"
driver: bridge driver: bridge
driver_options: "{{ devture_systemd_docker_base_container_networks_driver_options }}" driver_options: "{{ devture_systemd_docker_base_container_networks_driver_options }}"
- name: Ensure mautrix-meta-messenger.service installed - name: Ensure mautrix-meta-messenger.service installed
ansible.builtin.template: ansible.builtin.template:
src: "{{ role_path }}/templates/systemd/matrix-mautrix-meta.service.j2" src: "{{ role_path }}/templates/systemd/matrix-mautrix-meta.service.j2"
dest: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_mautrix_meta_messenger_identifier }}.service" dest: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_bridge_mautrix_meta_messenger_identifier }}.service"
mode: '0644' mode: '0644'
register: matrix_mautrix_meta_messenger_systemd_service_result register: matrix_bridge_mautrix_meta_messenger_systemd_service_result
- name: Determine whether mautrix-meta-messenger needs a restart - name: Determine whether mautrix-meta-messenger needs a restart
ansible.builtin.set_fact: ansible.builtin.set_fact:
matrix_mautrix_meta_messenger_restart_necessary: >- matrix_bridge_mautrix_meta_messenger_restart_necessary: >-
{{ {{
matrix_mautrix_meta_messenger_migration_requires_restart | default(false) matrix_bridge_mautrix_meta_messenger_migration_requires_restart | default(false)
or matrix_mautrix_meta_messenger_config_result.changed | default(false) or matrix_bridge_mautrix_meta_messenger_config_result.changed | default(false)
or matrix_mautrix_meta_messenger_registration_result.changed | default(false) or matrix_bridge_mautrix_meta_messenger_registration_result.changed | default(false)
or matrix_mautrix_meta_messenger_support_files_result.changed | default(false) or matrix_bridge_mautrix_meta_messenger_support_files_result.changed | default(false)
or matrix_mautrix_meta_messenger_systemd_service_result.changed | default(false) or matrix_bridge_mautrix_meta_messenger_systemd_service_result.changed | default(false)
or matrix_mautrix_meta_messenger_container_image_pull_result.changed | default(false) or matrix_bridge_mautrix_meta_messenger_container_image_pull_result.changed | default(false)
or matrix_mautrix_meta_messenger_container_image_build_result.changed | default(false) or matrix_bridge_mautrix_meta_messenger_container_image_build_result.changed | default(false)
}} }}
- name: Ensure mautrix-meta-messenger.service restarted, if necessary - name: Ensure mautrix-meta-messenger.service restarted, if necessary
ansible.builtin.service: ansible.builtin.service:
name: "{{ matrix_mautrix_meta_messenger_identifier }}.service" name: "{{ matrix_bridge_mautrix_meta_messenger_identifier }}.service"
state: restarted state: restarted
daemon_reload: true daemon_reload: true
when: "matrix_mautrix_meta_messenger_migration_requires_restart | bool" when: "matrix_bridge_mautrix_meta_messenger_migration_requires_restart | bool"
@@ -10,15 +10,15 @@
- install-all - install-all
- install-mautrix-meta-messenger - install-mautrix-meta-messenger
block: block:
- when: matrix_mautrix_meta_messenger_enabled | bool - when: matrix_bridge_mautrix_meta_messenger_enabled | bool
ansible.builtin.include_tasks: "{{ role_path }}/tasks/validate_config.yml" ansible.builtin.include_tasks: "{{ role_path }}/tasks/validate_config.yml"
- when: matrix_mautrix_meta_messenger_enabled | bool - when: matrix_bridge_mautrix_meta_messenger_enabled | bool
ansible.builtin.include_tasks: "{{ role_path }}/tasks/install.yml" ansible.builtin.include_tasks: "{{ role_path }}/tasks/install.yml"
- tags: - tags:
- setup-all - setup-all
- setup-mautrix-meta-messenger - setup-mautrix-meta-messenger
block: block:
- when: not matrix_mautrix_meta_messenger_enabled | bool - when: not matrix_bridge_mautrix_meta_messenger_enabled | bool
ansible.builtin.include_tasks: "{{ role_path }}/tasks/uninstall.yml" ansible.builtin.include_tasks: "{{ role_path }}/tasks/uninstall.yml"
@@ -6,19 +6,19 @@
- name: Check existence of mautrix-meta-messenger service - name: Check existence of mautrix-meta-messenger service
ansible.builtin.stat: ansible.builtin.stat:
path: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_mautrix_meta_messenger_identifier }}.service" path: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_bridge_mautrix_meta_messenger_identifier }}.service"
register: matrix_mautrix_meta_messenger_service_stat register: matrix_bridge_mautrix_meta_messenger_service_stat
- when: matrix_mautrix_meta_messenger_service_stat.stat.exists | bool - when: matrix_bridge_mautrix_meta_messenger_service_stat.stat.exists | bool
block: block:
- name: Ensure mautrix-meta-messenger is stopped - name: Ensure mautrix-meta-messenger is stopped
ansible.builtin.service: ansible.builtin.service:
name: "{{ matrix_mautrix_meta_messenger_identifier }}" name: "{{ matrix_bridge_mautrix_meta_messenger_identifier }}"
state: stopped state: stopped
enabled: false enabled: false
daemon_reload: true daemon_reload: true
- name: Ensure mautrix-meta-messenger.service doesn't exist - name: Ensure mautrix-meta-messenger.service doesn't exist
ansible.builtin.file: ansible.builtin.file:
path: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_mautrix_meta_messenger_identifier }}.service" path: "{{ devture_systemd_docker_base_systemd_path }}/{{ matrix_bridge_mautrix_meta_messenger_identifier }}.service"
state: absent state: absent
@@ -11,14 +11,14 @@
You need to define a required configuration setting (`{{ item.name }}`). You need to define a required configuration setting (`{{ item.name }}`).
when: "item.when | bool and lookup('vars', item.name, default='') | string | length == 0" when: "item.when | bool and lookup('vars', item.name, default='') | string | length == 0"
with_items: with_items:
- {'name': 'matrix_mautrix_meta_messenger_metrics_proxying_hostname', when: "{{ matrix_mautrix_meta_messenger_metrics_proxying_enabled }}"} - {'name': 'matrix_bridge_mautrix_meta_messenger_metrics_proxying_hostname', when: "{{ matrix_bridge_mautrix_meta_messenger_metrics_proxying_enabled }}"}
- {'name': 'matrix_mautrix_meta_messenger_metrics_proxying_path_prefix', when: "{{ matrix_mautrix_meta_messenger_metrics_proxying_enabled }}"} - {'name': 'matrix_bridge_mautrix_meta_messenger_metrics_proxying_path_prefix', when: "{{ matrix_bridge_mautrix_meta_messenger_metrics_proxying_enabled }}"}
- {'name': 'matrix_mautrix_meta_messenger_appservice_token', when: true} - {'name': 'matrix_bridge_mautrix_meta_messenger_appservice_token', when: true}
- {'name': 'matrix_mautrix_meta_messenger_homeserver_token', when: true} - {'name': 'matrix_bridge_mautrix_meta_messenger_homeserver_token', when: true}
- {'name': 'matrix_mautrix_meta_messenger_container_network', when: true} - {'name': 'matrix_bridge_mautrix_meta_messenger_container_network', when: true}
- {'name': 'matrix_mautrix_meta_messenger_homeserver_address', when: true} - {'name': 'matrix_bridge_mautrix_meta_messenger_homeserver_address', when: true}
- {'name': 'matrix_mautrix_meta_messenger_database_hostname', when: "{{ matrix_mautrix_meta_messenger_database_engine == 'postgres' }}"} - {'name': 'matrix_bridge_mautrix_meta_messenger_database_hostname', when: "{{ matrix_bridge_mautrix_meta_messenger_database_engine == 'postgres' }}"}
- {'name': 'matrix_mautrix_meta_messenger_database_password', when: "{{ matrix_mautrix_meta_messenger_database_engine == 'postgres' }}"} - {'name': 'matrix_bridge_mautrix_meta_messenger_database_password', when: "{{ matrix_bridge_mautrix_meta_messenger_database_engine == 'postgres' }}"}
- name: (Deprecation) Catch and report renamed mautrix-meta-messenger variables - name: (Deprecation) Catch and report renamed mautrix-meta-messenger variables
ansible.builtin.fail: ansible.builtin.fail:
@@ -27,8 +27,8 @@
Please rename the variable (`{{ item.old }}` -> `{{ item.new }}`) on your configuration file (vars.yml). Please rename the variable (`{{ item.old }}` -> `{{ item.new }}`) on your configuration file (vars.yml).
when: "lookup('ansible.builtin.varnames', ('^' + item.old + '$'), wantlist=True) | length > 0" when: "lookup('ansible.builtin.varnames', ('^' + item.old + '$'), wantlist=True) | length > 0"
with_items: with_items:
- {'old': 'matrix_mautrix_meta_messenger_bridge_login_shared_secret', 'new': '<removed>'} - {'old': 'matrix_bridge_mautrix_meta_messenger_bridge_login_shared_secret', 'new': '<removed>'}
- {'old': 'matrix_mautrix_meta_messenger_bridge_login_shared_secret_map_custom', 'new': '<superseded by matrix_mautrix_meta_messenger_double_puppet_secrets_custom>'} - {'old': 'matrix_bridge_mautrix_meta_messenger_bridge_login_shared_secret_map_custom', 'new': '<superseded by matrix_bridge_mautrix_meta_messenger_double_puppet_secrets_custom>'}
- {'old': 'matrix_mautrix_meta_messenger_bridge_management_room_text_welcome', 'new': '<removed>'} - {'old': 'matrix_bridge_mautrix_meta_messenger_bridge_management_room_text_welcome', 'new': '<removed>'}
- {'old': 'matrix_mautrix_meta_messenger_container_image_name_prefix', 'new': 'matrix_mautrix_meta_messenger_container_image_registry_prefix'} - {'old': 'matrix_bridge_mautrix_meta_messenger_container_image_name_prefix', 'new': 'matrix_bridge_mautrix_meta_messenger_container_image_registry_prefix'}
- {'old': 'matrix_mautrix_meta_messenger_container_image_force_pull', 'new': '<removed> (the new community.docker.docker_image_pull module handles this natively)'} - {'old': 'matrix_bridge_mautrix_meta_messenger_container_image_force_pull', 'new': '<removed> (the new community.docker.docker_image_pull module handles this natively)'}
@@ -10,17 +10,17 @@ network:
# * instagram - connect to Instagram DMs via instagram.com # * instagram - connect to Instagram DMs via instagram.com
# #
# Remember to change the appservice ID, bot profile info, bridge username_template and management_room_text too. # Remember to change the appservice ID, bot profile info, bridge username_template and management_room_text too.
mode: {{ matrix_mautrix_meta_messenger_meta_mode | to_json }} mode: {{ matrix_bridge_mautrix_meta_messenger_meta_mode | to_json }}
# When in Instagram mode, should the bridge connect to WhatsApp servers for encrypted chats? # When in Instagram mode, should the bridge connect to WhatsApp servers for encrypted chats?
# In FB/Messenger mode encryption is always enabled, this option only affects Instagram mode. # In FB/Messenger mode encryption is always enabled, this option only affects Instagram mode.
ig_e2ee: {{ matrix_mautrix_meta_messenger_meta_ig_e2ee | to_json }} ig_e2ee: {{ matrix_bridge_mautrix_meta_messenger_meta_ig_e2ee | to_json }}
# Displayname template for FB/IG users. Available variables: # Displayname template for FB/IG users. Available variables:
# .DisplayName - The display name set by the user. # .DisplayName - The display name set by the user.
# .Username - The username set by the user. # .Username - The username set by the user.
# .ID - The internal user ID of the user. # .ID - The internal user ID of the user.
displayname_template: {{ matrix_mautrix_meta_messenger_bridge_displayname_template | to_json }} displayname_template: {{ matrix_bridge_mautrix_meta_messenger_bridge_displayname_template | to_json }}
# Static proxy address (HTTP or SOCKS5) for connecting to Meta. # Static proxy address (HTTP or SOCKS5) for connecting to Meta.
proxy: proxy:
@@ -40,9 +40,9 @@ network:
# Config options that affect the central bridge module. # Config options that affect the central bridge module.
bridge: bridge:
# The prefix for commands. Only required in non-management rooms. # The prefix for commands. Only required in non-management rooms.
command_prefix: {{ matrix_mautrix_meta_messenger_bridge_command_prefix | to_json }} command_prefix: {{ matrix_bridge_mautrix_meta_messenger_bridge_command_prefix | to_json }}
# Should the bridge create a space for each login containing the rooms that account is in? # Should the bridge create a space for each login containing the rooms that account is in?
personal_filtering_spaces: {{ matrix_mautrix_meta_messenger_bridge_personal_filtering_spaces | to_json }} personal_filtering_spaces: {{ matrix_bridge_mautrix_meta_messenger_bridge_personal_filtering_spaces | to_json }}
# Whether the bridge should set names and avatars explicitly for DM portals. # Whether the bridge should set names and avatars explicitly for DM portals.
# This is only necessary when using clients that don't support MSC4171. # This is only necessary when using clients that don't support MSC4171.
private_chat_portal_meta: false private_chat_portal_meta: false
@@ -97,12 +97,12 @@ bridge:
relay: relay:
# Whether relay mode should be allowed. If allowed, the set-relay command can be used to turn any # Whether relay mode should be allowed. If allowed, the set-relay command can be used to turn any
# authenticated user into a relaybot for that chat. # authenticated user into a relaybot for that chat.
enabled: {{ matrix_mautrix_meta_messenger_bridge_relay_enabled | to_json }} enabled: {{ matrix_bridge_mautrix_meta_messenger_bridge_relay_enabled | to_json }}
# Should only admins be allowed to set themselves as relay users? # Should only admins be allowed to set themselves as relay users?
# If true, non-admins can only set users listed in default_relays as relays in a room. # If true, non-admins can only set users listed in default_relays as relays in a room.
admin_only: {{ matrix_mautrix_meta_messenger_bridge_relay_admin_only | to_json }} admin_only: {{ matrix_bridge_mautrix_meta_messenger_bridge_relay_admin_only | to_json }}
# List of user login IDs which anyone can set as a relay, as long as the relay user is in the room. # List of user login IDs which anyone can set as a relay, as long as the relay user is in the room.
default_relays: {{ matrix_mautrix_meta_messenger_bridge_relay_default_relays | to_json }} default_relays: {{ matrix_bridge_mautrix_meta_messenger_bridge_relay_default_relays | to_json }}
# The formats to use when sending messages via the relaybot. # The formats to use when sending messages via the relaybot.
# Available variables: # Available variables:
# .Sender.UserID - The Matrix user ID of the sender. # .Sender.UserID - The Matrix user ID of the sender.
@@ -138,18 +138,18 @@ bridge:
# * - All Matrix users # * - All Matrix users
# domain - All users on that homeserver # domain - All users on that homeserver
# mxid - Specific user # mxid - Specific user
permissions: {{ matrix_mautrix_meta_messenger_bridge_permissions | to_json }} permissions: {{ matrix_bridge_mautrix_meta_messenger_bridge_permissions | to_json }}
# Config for the bridge's database. # Config for the bridge's database.
database: database:
# The database type. "sqlite3-fk-wal" and "postgres" are supported. # The database type. "sqlite3-fk-wal" and "postgres" are supported.
type: {{ matrix_mautrix_meta_messenger_appservice_database_type | to_json }} type: {{ matrix_bridge_mautrix_meta_messenger_appservice_database_type | to_json }}
# The database URI. # The database URI.
# SQLite: A raw file path is supported, but `file:<path>?_txlock=immediate` is recommended. # SQLite: A raw file path is supported, but `file:<path>?_txlock=immediate` is recommended.
# https://github.com/mattn/go-sqlite3#connection-string # https://github.com/mattn/go-sqlite3#connection-string
# Postgres: Connection string. For example, postgres://user:password@host/database?sslmode=disable # Postgres: Connection string. For example, postgres://user:password@host/database?sslmode=disable
# To connect via Unix socket, use something like postgres:///dbname?host=/var/run/postgresql # To connect via Unix socket, use something like postgres:///dbname?host=/var/run/postgresql
uri: {{ matrix_mautrix_meta_messenger_appservice_database_uri | to_json }} uri: {{ matrix_bridge_mautrix_meta_messenger_appservice_database_uri | to_json }}
# Maximum number of connections. # Maximum number of connections.
max_open_conns: 5 max_open_conns: 5
max_idle_conns: 1 max_idle_conns: 1
@@ -163,9 +163,9 @@ homeserver:
# The address that this appservice can use to connect to the homeserver. # The address that this appservice can use to connect to the homeserver.
# Local addresses without HTTPS are generally recommended when the bridge is running on the same machine, # Local addresses without HTTPS are generally recommended when the bridge is running on the same machine,
# but https also works if they run on different machines. # but https also works if they run on different machines.
address: {{ matrix_mautrix_meta_messenger_homeserver_address | to_json }} address: {{ matrix_bridge_mautrix_meta_messenger_homeserver_address | to_json }}
# The domain of the homeserver (also known as server_name, used for MXIDs, etc). # The domain of the homeserver (also known as server_name, used for MXIDs, etc).
domain: {{ matrix_mautrix_meta_messenger_homeserver_domain | to_json }} domain: {{ matrix_bridge_mautrix_meta_messenger_homeserver_domain | to_json }}
# What software is the homeserver running? # What software is the homeserver running?
# Standard Matrix homeservers like Synapse, Dendrite and Conduit should just use "standard" here. # Standard Matrix homeservers like Synapse, Dendrite and Conduit should just use "standard" here.
@@ -181,7 +181,7 @@ homeserver:
# The bridge will use the appservice as_token to authorize requests. # The bridge will use the appservice as_token to authorize requests.
message_send_checkpoint_endpoint: message_send_checkpoint_endpoint:
# Does the homeserver support https://github.com/matrix-org/matrix-spec-proposals/pull/2246? # Does the homeserver support https://github.com/matrix-org/matrix-spec-proposals/pull/2246?
async_media: {{ matrix_mautrix_meta_messenger_homeserver_async_media | to_json }} async_media: {{ matrix_bridge_mautrix_meta_messenger_homeserver_async_media | to_json }}
# Should the bridge use a websocket for connecting to the homeserver? # Should the bridge use a websocket for connecting to the homeserver?
# The server side is currently not documented anywhere and is only implemented by mautrix-wsproxy, # The server side is currently not documented anywhere and is only implemented by mautrix-wsproxy,
@@ -194,10 +194,10 @@ homeserver:
# Changing these values requires regeneration of the registration (except when noted otherwise) # Changing these values requires regeneration of the registration (except when noted otherwise)
appservice: appservice:
# The address that the homeserver can use to connect to this appservice. # The address that the homeserver can use to connect to this appservice.
address: {{ matrix_mautrix_meta_messenger_appservice_address | to_json }} address: {{ matrix_bridge_mautrix_meta_messenger_appservice_address | to_json }}
# A public address that external services can use to reach this appservice. # A public address that external services can use to reach this appservice.
# This value doesn't affect the registration file. # This value doesn't affect the registration file.
public_address: {{ matrix_mautrix_meta_messenger_bridge_public_address | to_json }} public_address: {{ matrix_bridge_mautrix_meta_messenger_bridge_public_address | to_json }}
# The hostname and port where this appservice should listen. # The hostname and port where this appservice should listen.
# For Docker, you generally have to change the hostname to 0.0.0.0. # For Docker, you generally have to change the hostname to 0.0.0.0.
@@ -205,15 +205,15 @@ appservice:
port: 29319 port: 29319
# The unique ID of this appservice. # The unique ID of this appservice.
id: {{ matrix_mautrix_meta_messenger_appservice_id | to_json }} id: {{ matrix_bridge_mautrix_meta_messenger_appservice_id | to_json }}
# Appservice bot details. # Appservice bot details.
bot: bot:
# Username of the appservice bot. # Username of the appservice bot.
username: {{ matrix_mautrix_meta_messenger_appservice_username | to_json }} username: {{ matrix_bridge_mautrix_meta_messenger_appservice_username | to_json }}
# Display name and avatar for bot. Set to "remove" to remove display name/avatar, leave empty # Display name and avatar for bot. Set to "remove" to remove display name/avatar, leave empty
# to leave display name/avatar as-is. # to leave display name/avatar as-is.
displayname: {{ matrix_mautrix_meta_messenger_appservice_displayname | to_json(ensure_ascii=False) }} displayname: {{ matrix_bridge_mautrix_meta_messenger_appservice_displayname | to_json(ensure_ascii=False) }}
avatar: {{ matrix_mautrix_meta_messenger_appservice_avatar | to_json }} avatar: {{ matrix_bridge_mautrix_meta_messenger_appservice_avatar | to_json }}
# Whether to receive ephemeral events via appservice transactions. # Whether to receive ephemeral events via appservice transactions.
ephemeral_events: true ephemeral_events: true
@@ -224,12 +224,12 @@ appservice:
async_transactions: false async_transactions: false
# Authentication tokens for AS <-> HS communication. Autogenerated; do not modify. # Authentication tokens for AS <-> HS communication. Autogenerated; do not modify.
as_token: {{ matrix_mautrix_meta_messenger_appservice_token | to_json }} as_token: {{ matrix_bridge_mautrix_meta_messenger_appservice_token | to_json }}
hs_token: {{ matrix_mautrix_meta_messenger_homeserver_token | to_json }} hs_token: {{ matrix_bridge_mautrix_meta_messenger_homeserver_token | to_json }}
# Localpart template of MXIDs for remote users. # Localpart template of MXIDs for remote users.
# {% raw %}{{.}}{% endraw %} is replaced with the internal ID of the user. # {% raw %}{{.}}{% endraw %} is replaced with the internal ID of the user.
username_template: {{ matrix_mautrix_meta_messenger_bridge_username_template | to_json }} username_template: {{ matrix_bridge_mautrix_meta_messenger_bridge_username_template | to_json }}
# Config options that affect the Matrix connector of the bridge. # Config options that affect the Matrix connector of the bridge.
matrix: matrix:
@@ -243,7 +243,7 @@ matrix:
sync_direct_chat_list: false sync_direct_chat_list: false
# Whether created rooms should have federation enabled. If false, created portal rooms # Whether created rooms should have federation enabled. If false, created portal rooms
# will never be federated. Changing this option requires recreating rooms. # will never be federated. Changing this option requires recreating rooms.
federate_rooms: {{ matrix_mautrix_meta_messenger_bridge_federate_rooms | to_json }} federate_rooms: {{ matrix_bridge_mautrix_meta_messenger_bridge_federate_rooms | to_json }}
# The threshold as bytes after which the bridge should roundtrip uploads via the disk # The threshold as bytes after which the bridge should roundtrip uploads via the disk
# rather than keeping the whole file in memory. # rather than keeping the whole file in memory.
upload_file_threshold: 5242880 upload_file_threshold: 5242880
@@ -263,7 +263,7 @@ provisioning:
prefix: /_matrix/provision prefix: /_matrix/provision
# Shared secret for authentication. If set to "generate" or null, a random secret will be generated, # Shared secret for authentication. If set to "generate" or null, a random secret will be generated,
# or if set to "disable", the provisioning API will be disabled. # or if set to "disable", the provisioning API will be disabled.
shared_secret: {{ matrix_mautrix_meta_messenger_provisioning_shared_secret | to_json }} shared_secret: {{ matrix_bridge_mautrix_meta_messenger_provisioning_shared_secret | to_json }}
# Whether to allow provisioning API requests to be authed using Matrix access tokens. # Whether to allow provisioning API requests to be authed using Matrix access tokens.
# This follows the same rules as double puppeting to determine which server to contact to check the token, # This follows the same rules as double puppeting to determine which server to contact to check the token,
# which means that by default, it only works for users on the same server as the bridge. # which means that by default, it only works for users on the same server as the bridge.
@@ -279,7 +279,7 @@ public_media:
enabled: false enabled: false
# A key for signing public media URLs. # A key for signing public media URLs.
# If set to "generate", a random key will be generated. # If set to "generate", a random key will be generated.
signing_key: {{ matrix_mautrix_meta_messenger_public_media_signing_key | to_json }} signing_key: {{ matrix_bridge_mautrix_meta_messenger_public_media_signing_key | to_json }}
# Number of seconds that public media URLs are valid for. # Number of seconds that public media URLs are valid for.
# If set to 0, URLs will never expire. # If set to 0, URLs will never expire.
expiry: 0 expiry: 0
@@ -313,18 +313,18 @@ direct_media:
# See https://docs.mau.fi/bridges/general/backfill.html for more details. # See https://docs.mau.fi/bridges/general/backfill.html for more details.
backfill: backfill:
# Whether to do backfilling at all. # Whether to do backfilling at all.
enabled: {{ matrix_mautrix_meta_messenger_backfill_enabled | to_json }} enabled: {{ matrix_bridge_mautrix_meta_messenger_backfill_enabled | to_json }}
# Maximum number of messages to backfill in empty rooms. # Maximum number of messages to backfill in empty rooms.
max_initial_messages: {{ matrix_mautrix_meta_messenger_backfill_max_initial_messages | to_json}} max_initial_messages: {{ matrix_bridge_mautrix_meta_messenger_backfill_max_initial_messages | to_json}}
# Maximum number of missed messages to backfill after bridge restarts. # Maximum number of missed messages to backfill after bridge restarts.
max_catchup_messages: {{ matrix_mautrix_meta_messenger_backfill_max_catchup_messages | to_json }} max_catchup_messages: {{ matrix_bridge_mautrix_meta_messenger_backfill_max_catchup_messages | to_json }}
# If a backfilled chat is older than this number of hours, # If a backfilled chat is older than this number of hours,
# mark it as read even if it's unread on the remote network. # mark it as read even if it's unread on the remote network.
unread_hours_threshold: {{ matrix_mautrix_meta_messenger_backfill_unread_hours_threshold | to_json }} unread_hours_threshold: {{ matrix_bridge_mautrix_meta_messenger_backfill_unread_hours_threshold | to_json }}
# Settings for backfilling threads within other backfills. # Settings for backfilling threads within other backfills.
threads: threads:
# Maximum number of messages to backfill in a new thread. # Maximum number of messages to backfill in a new thread.
max_initial_messages: {{ matrix_mautrix_meta_messenger_backfill_threads_max_initial_messages | to_json }} max_initial_messages: {{ matrix_bridge_mautrix_meta_messenger_backfill_threads_max_initial_messages | to_json }}
# Settings for the backwards backfill queue. This only applies when connecting to # Settings for the backwards backfill queue. This only applies when connecting to
# Beeper as standard Matrix servers don't support inserting messages into history. # Beeper as standard Matrix servers don't support inserting messages into history.
queue: queue:
@@ -352,32 +352,32 @@ double_puppet:
allow_discovery: false allow_discovery: false
# Shared secrets for automatic double puppeting. # Shared secrets for automatic double puppeting.
# See https://docs.mau.fi/bridges/general/double-puppeting.html for instructions. # See https://docs.mau.fi/bridges/general/double-puppeting.html for instructions.
secrets: {{ matrix_mautrix_meta_messenger_double_puppet_secrets | to_json }} secrets: {{ matrix_bridge_mautrix_meta_messenger_double_puppet_secrets | to_json }}
# End-to-bridge encryption support options. # End-to-bridge encryption support options.
# #
# See https://docs.mau.fi/bridges/general/end-to-bridge-encryption.html for more info. # See https://docs.mau.fi/bridges/general/end-to-bridge-encryption.html for more info.
encryption: encryption:
# Whether to enable encryption at all. If false, the bridge will not function in encrypted rooms. # Whether to enable encryption at all. If false, the bridge will not function in encrypted rooms.
allow: {{ matrix_mautrix_meta_messenger_bridge_encryption_allow | to_json }} allow: {{ matrix_bridge_mautrix_meta_messenger_bridge_encryption_allow | to_json }}
# Whether to force-enable encryption in all bridged rooms. # Whether to force-enable encryption in all bridged rooms.
default: {{ matrix_mautrix_meta_messenger_bridge_encryption_default | to_json }} default: {{ matrix_bridge_mautrix_meta_messenger_bridge_encryption_default | to_json }}
# Whether to require all messages to be encrypted and drop any unencrypted messages. # Whether to require all messages to be encrypted and drop any unencrypted messages.
require: {{ matrix_mautrix_meta_messenger_bridge_encryption_require | to_json }} require: {{ matrix_bridge_mautrix_meta_messenger_bridge_encryption_require | to_json }}
# Whether to use MSC2409/MSC3202 instead of /sync long polling for receiving encryption-related data. # Whether to use MSC2409/MSC3202 instead of /sync long polling for receiving encryption-related data.
# This option is not yet compatible with standard Matrix servers like Synapse and should not be used. # This option is not yet compatible with standard Matrix servers like Synapse and should not be used.
appservice: {{ matrix_mautrix_meta_messenger_bridge_encryption_appservice | to_json }} appservice: {{ matrix_bridge_mautrix_meta_messenger_bridge_encryption_appservice | to_json }}
# Whether to use MSC4190 instead of appservice login to create the bridge bot device. # Whether to use MSC4190 instead of appservice login to create the bridge bot device.
# Requires the homeserver to support MSC4190 and the device masquerading parts of MSC3202. # Requires the homeserver to support MSC4190 and the device masquerading parts of MSC3202.
# Only relevant when using end-to-bridge encryption, required when using encryption with next-gen auth (MSC3861). # Only relevant when using end-to-bridge encryption, required when using encryption with next-gen auth (MSC3861).
# Changing this option requires updating the appservice registration file. # Changing this option requires updating the appservice registration file.
msc4190: {{ matrix_mautrix_meta_messenger_msc4190_enabled | to_json }} msc4190: {{ matrix_bridge_mautrix_meta_messenger_msc4190_enabled | to_json }}
# Whether to enable self-signing for bridges (Only the bridge bot uses this for now) # Whether to enable self-signing for bridges (Only the bridge bot uses this for now)
# Requires msc4190 to replace keys on reset # Requires msc4190 to replace keys on reset
self_sign: {{ matrix_mautrix_meta_messenger_self_sign_enabled | to_json }} self_sign: {{ matrix_bridge_mautrix_meta_messenger_self_sign_enabled | to_json }}
# Enable key sharing? If enabled, key requests for rooms where users are in will be fulfilled. # Enable key sharing? If enabled, key requests for rooms where users are in will be fulfilled.
# You must use a client that supports requesting keys from other users to use this feature. # You must use a client that supports requesting keys from other users to use this feature.
allow_key_sharing: {{ matrix_mautrix_meta_messenger_bridge_encryption_allow_key_sharing | to_json }} allow_key_sharing: {{ matrix_bridge_mautrix_meta_messenger_bridge_encryption_allow_key_sharing | to_json }}
# Pickle key for encrypting encryption keys in the bridge database. # Pickle key for encrypting encryption keys in the bridge database.
# If set to generate, a random key will be generated. # If set to generate, a random key will be generated.
pickle_key: mautrix.bridge.e2ee pickle_key: mautrix.bridge.e2ee
@@ -439,7 +439,7 @@ encryption:
# Logging config. See https://github.com/tulir/zeroconfig for details. # Logging config. See https://github.com/tulir/zeroconfig for details.
logging: logging:
min_level: {{ matrix_mautrix_meta_messenger_logging_min_level | to_json }} min_level: {{ matrix_bridge_mautrix_meta_messenger_logging_min_level | to_json }}
writers: writers:
- type: stdout - type: stdout
format: pretty format: pretty
@@ -4,45 +4,45 @@ SPDX-FileCopyrightText: 2024 Slavi Pantaleev
SPDX-License-Identifier: AGPL-3.0-or-later SPDX-License-Identifier: AGPL-3.0-or-later
#} #}
{% if matrix_mautrix_meta_messenger_container_labels_traefik_enabled and (matrix_mautrix_meta_messenger_container_labels_metrics_enabled or matrix_mautrix_meta_messenger_container_labels_exposure_enabled) %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_traefik_enabled and (matrix_bridge_mautrix_meta_messenger_container_labels_metrics_enabled or matrix_bridge_mautrix_meta_messenger_container_labels_exposure_enabled) %}
traefik.enable=true traefik.enable=true
{% if matrix_mautrix_meta_messenger_container_labels_traefik_docker_network %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_traefik_docker_network %}
traefik.docker.network={{ matrix_mautrix_meta_messenger_container_labels_traefik_docker_network }} traefik.docker.network={{ matrix_bridge_mautrix_meta_messenger_container_labels_traefik_docker_network }}
{% endif %} {% endif %}
{% if matrix_mautrix_meta_messenger_container_labels_exposure_enabled %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_exposure_enabled %}
traefik.http.services.{{ matrix_mautrix_meta_messenger_identifier }}-appservice.loadbalancer.server.port=29319 traefik.http.services.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-appservice.loadbalancer.server.port=29319
{% endif %} {% endif %}
{% if matrix_mautrix_meta_messenger_container_labels_metrics_enabled %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_metrics_enabled %}
traefik.http.services.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.loadbalancer.server.port=8000 traefik.http.services.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics.loadbalancer.server.port=8000
{% endif %} {% endif %}
{% if matrix_mautrix_meta_messenger_container_labels_metrics_enabled %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_metrics_enabled %}
############################################################ ############################################################
# # # #
# Metrics # # Metrics #
# # # #
############################################################ ############################################################
{% if matrix_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_enabled %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_enabled %}
traefik.http.middlewares.{{ matrix_mautrix_meta_messenger_identifier }}-metrics-basic-auth.basicauth.users={{ matrix_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_users }} traefik.http.middlewares.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics-basic-auth.basicauth.users={{ matrix_bridge_mautrix_meta_messenger_container_labels_metrics_middleware_basic_auth_users }}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.middlewares={{ matrix_mautrix_meta_messenger_identifier }}-metrics-basic-auth traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics.middlewares={{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics-basic-auth
{% endif %} {% endif %}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.rule={{ matrix_mautrix_meta_messenger_container_labels_metrics_traefik_rule }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics.rule={{ matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_rule }}
{% if matrix_mautrix_meta_messenger_container_labels_metrics_traefik_priority | int > 0 %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_priority | int > 0 %}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.priority={{ matrix_mautrix_meta_messenger_container_labels_metrics_traefik_priority }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics.priority={{ matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_priority }}
{% endif %} {% endif %}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.service={{ matrix_mautrix_meta_messenger_identifier }}-metrics traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics.service={{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.entrypoints={{ matrix_mautrix_meta_messenger_container_labels_metrics_traefik_entrypoints }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics.entrypoints={{ matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_entrypoints }}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.tls={{ matrix_mautrix_meta_messenger_container_labels_metrics_traefik_tls | to_json }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics.tls={{ matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_tls | to_json }}
{% if matrix_mautrix_meta_messenger_container_labels_metrics_traefik_tls %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_tls %}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.tls.certResolver={{ matrix_mautrix_meta_messenger_container_labels_metrics_traefik_tls_certResolver }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-metrics.tls.certResolver={{ matrix_bridge_mautrix_meta_messenger_container_labels_metrics_traefik_tls_certResolver }}
{% endif %} {% endif %}
############################################################ ############################################################
@@ -52,28 +52,28 @@ traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-metrics.tls.
############################################################ ############################################################
{% endif %} {% endif %}
{% if matrix_mautrix_meta_messenger_container_labels_exposure_enabled %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_exposure_enabled %}
############################################################ ############################################################
# # # #
# Bridge API exposure # # Bridge API exposure #
# # # #
############################################################ ############################################################
traefik.http.middlewares.{{ matrix_mautrix_meta_messenger_identifier }}-exposure-strip-prefix.stripprefix.prefixes={{ matrix_mautrix_meta_messenger_exposure_path_prefix }} traefik.http.middlewares.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure-strip-prefix.stripprefix.prefixes={{ matrix_bridge_mautrix_meta_messenger_exposure_path_prefix }}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-exposure.middlewares={{ matrix_mautrix_meta_messenger_identifier }}-exposure-strip-prefix traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure.middlewares={{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure-strip-prefix
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-exposure.rule={{ matrix_mautrix_meta_messenger_container_labels_exposure_traefik_rule }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure.rule={{ matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_rule }}
{% if matrix_mautrix_meta_messenger_container_labels_exposure_traefik_priority | int > 0 %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_priority | int > 0 %}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-exposure.priority={{ matrix_mautrix_meta_messenger_container_labels_exposure_traefik_priority }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure.priority={{ matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_priority }}
{% endif %} {% endif %}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-exposure.service={{ matrix_mautrix_meta_messenger_identifier }}-appservice traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure.service={{ matrix_bridge_mautrix_meta_messenger_identifier }}-appservice
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-exposure.entrypoints={{ matrix_mautrix_meta_messenger_container_labels_exposure_traefik_entrypoints }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure.entrypoints={{ matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_entrypoints }}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-exposure.tls={{ matrix_mautrix_meta_messenger_container_labels_exposure_traefik_tls | to_json }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure.tls={{ matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_tls | to_json }}
{% if matrix_mautrix_meta_messenger_container_labels_exposure_traefik_tls %} {% if matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_tls %}
traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-exposure.tls.certResolver={{ matrix_mautrix_meta_messenger_container_labels_exposure_traefik_tls_certResolver }} traefik.http.routers.{{ matrix_bridge_mautrix_meta_messenger_identifier }}-exposure.tls.certResolver={{ matrix_bridge_mautrix_meta_messenger_container_labels_exposure_traefik_tls_certResolver }}
{% endif %} {% endif %}
############################################################ ############################################################
@@ -86,4 +86,4 @@ traefik.http.routers.{{ matrix_mautrix_meta_messenger_identifier }}-exposure.tls
{% endif %} {% endif %}
{{ matrix_mautrix_meta_messenger_container_labels_additional_labels }} {{ matrix_bridge_mautrix_meta_messenger_container_labels_additional_labels }}
@@ -1,11 +1,11 @@
#jinja2: lstrip_blocks: True #jinja2: lstrip_blocks: True
[Unit] [Unit]
Description=mautrix-meta bridge ({{ matrix_mautrix_meta_messenger_identifier }}) Description=mautrix-meta bridge ({{ matrix_bridge_mautrix_meta_messenger_identifier }})
{% for service in matrix_mautrix_meta_messenger_systemd_required_services_list %} {% for service in matrix_bridge_mautrix_meta_messenger_systemd_required_services_list %}
Requires={{ service }} Requires={{ service }}
After={{ service }} After={{ service }}
{% endfor %} {% endfor %}
{% for service in matrix_mautrix_meta_messenger_systemd_wanted_services_list %} {% for service in matrix_bridge_mautrix_meta_messenger_systemd_wanted_services_list %}
Wants={{ service }} Wants={{ service }}
{% endfor %} {% endfor %}
DefaultDependencies=no DefaultDependencies=no
@@ -13,41 +13,41 @@ DefaultDependencies=no
[Service] [Service]
Type=simple Type=simple
Environment="HOME={{ devture_systemd_docker_base_systemd_unit_home_path }}" 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 -t {{ devture_systemd_docker_base_container_stop_grace_time_seconds }} {{ matrix_mautrix_meta_messenger_identifier }} 2>/dev/null || true' ExecStartPre=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} stop -t {{ devture_systemd_docker_base_container_stop_grace_time_seconds }} {{ matrix_bridge_mautrix_meta_messenger_identifier }} 2>/dev/null || true'
ExecStartPre=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} rm {{ matrix_mautrix_meta_messenger_identifier }} 2>/dev/null || true' ExecStartPre=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} rm {{ matrix_bridge_mautrix_meta_messenger_identifier }} 2>/dev/null || true'
ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} create \ ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} create \
--rm \ --rm \
--name={{ matrix_mautrix_meta_messenger_identifier }} \ --name={{ matrix_bridge_mautrix_meta_messenger_identifier }} \
--log-driver=none \ --log-driver=none \
--user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \
--cap-drop=ALL \ --cap-drop=ALL \
--network={{ matrix_mautrix_meta_messenger_container_network }} \ --network={{ matrix_bridge_mautrix_meta_messenger_container_network }} \
{% if matrix_mautrix_meta_messenger_container_http_host_bind_port %} {% if matrix_bridge_mautrix_meta_messenger_container_http_host_bind_port %}
-p {{ matrix_mautrix_meta_messenger_container_http_host_bind_port }}:29319 \ -p {{ matrix_bridge_mautrix_meta_messenger_container_http_host_bind_port }}:29319 \
{% endif %} {% endif %}
--mount type=bind,src={{ matrix_mautrix_meta_messenger_config_path }},dst=/config,ro \ --mount type=bind,src={{ matrix_bridge_mautrix_meta_messenger_config_path }},dst=/config,ro \
--mount type=bind,src={{ matrix_mautrix_meta_messenger_data_path }},dst=/data \ --mount type=bind,src={{ matrix_bridge_mautrix_meta_messenger_data_path }},dst=/data \
--label-file={{ matrix_mautrix_meta_messenger_base_path }}/labels \ --label-file={{ matrix_bridge_mautrix_meta_messenger_base_path }}/labels \
{% for arg in matrix_mautrix_meta_messenger_container_extra_arguments %} {% for arg in matrix_bridge_mautrix_meta_messenger_container_extra_arguments %}
{{ arg }} \ {{ arg }} \
{% endfor %} {% endfor %}
{{ matrix_mautrix_meta_messenger_container_image }} \ {{ matrix_bridge_mautrix_meta_messenger_container_image }} \
/usr/bin/mautrix-meta -c /config/config.yaml -r /config/registration.yaml --no-update /usr/bin/mautrix-meta -c /config/config.yaml -r /config/registration.yaml --no-update
{% if matrix_mautrix_meta_messenger_container_network != 'host' %} {% if matrix_bridge_mautrix_meta_messenger_container_network != 'host' %}
{% for network in matrix_mautrix_meta_messenger_container_additional_networks %} {% for network in matrix_bridge_mautrix_meta_messenger_container_additional_networks %}
ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} network connect {{ network }} {{ matrix_mautrix_meta_messenger_identifier }} ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} network connect {{ network }} {{ matrix_bridge_mautrix_meta_messenger_identifier }}
{% endfor %} {% endfor %}
{% endif %} {% endif %}
ExecStart={{ devture_systemd_docker_base_host_command_docker }} start --attach {{ matrix_mautrix_meta_messenger_identifier }} ExecStart={{ devture_systemd_docker_base_host_command_docker }} start --attach {{ matrix_bridge_mautrix_meta_messenger_identifier }}
ExecStop=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} stop -t {{ devture_systemd_docker_base_container_stop_grace_time_seconds }} {{ matrix_mautrix_meta_messenger_identifier }} 2>/dev/null || true' ExecStop=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} stop -t {{ devture_systemd_docker_base_container_stop_grace_time_seconds }} {{ matrix_bridge_mautrix_meta_messenger_identifier }} 2>/dev/null || true'
ExecStop=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} rm {{ matrix_mautrix_meta_messenger_identifier }} 2>/dev/null || true' ExecStop=-{{ devture_systemd_docker_base_host_command_sh }} -c '{{ devture_systemd_docker_base_host_command_docker }} rm {{ matrix_bridge_mautrix_meta_messenger_identifier }} 2>/dev/null || true'
Restart=always Restart=always
RestartSec=30 RestartSec=30
SyslogIdentifier={{ matrix_mautrix_meta_messenger_identifier }} SyslogIdentifier={{ matrix_bridge_mautrix_meta_messenger_identifier }}
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target