2022-02-05 20:32:54 +00:00
---
2021-05-12 12:24:39 +00:00
# heisenbridge is a bouncer-style Matrix IRC bridge
2022-07-16 20:59:21 +00:00
# Project source code URL: https://github.com/hifi/heisenbridge
2021-05-12 12:24:39 +00:00
matrix_heisenbridge_enabled : true
2024-08-10 03:22:59 +00:00
matrix_heisenbridge_scheme : https
matrix_heisenbridge_hostname : "{{ matrix_server_fqn_matrix }}"
matrix_heisenbridge_path_prefix : "/heisenbridge"
2023-10-06 12:14:03 +00:00
# renovate: datasource=docker depName=hif1/heisenbridge
2024-08-10 02:41:18 +00:00
matrix_heisenbridge_version : 1.15 .0
2021-05-12 12:24:39 +00:00
matrix_heisenbridge_docker_image : "{{ matrix_container_global_registry_prefix }}hif1/heisenbridge:{{ matrix_heisenbridge_version }}"
matrix_heisenbridge_docker_image_force_pull : "{{ matrix_heisenbridge_docker_image.endswith(':latest') }}"
# Set this to your Matrix ID if you want to enforce the owner, otherwise first _local_ user becomes one
matrix_heisenbridge_owner : ""
# Enabling identd will bind to host port 113/TCP
matrix_heisenbridge_identd_enabled : false
matrix_heisenbridge_base_path : "{{ matrix_base_data_path }}/heisenbridge"
2024-01-07 12:53:22 +00:00
matrix_heisenbridge_container_network : ""
matrix_heisenbridge_container_additional_networks : "{{ matrix_heisenbridge_container_additional_networks_auto + matrix_heisenbridge_container_additional_networks_custom }}"
matrix_heisenbridge_container_additional_networks_auto : [ ]
matrix_heisenbridge_container_additional_networks_custom : [ ]
2023-12-06 10:13:06 +00:00
# Controls how long to wait for the container to stop gracefully before killing it.
# We use a small value here, because this container does not seem to handle the SIGTERM signal.
matrix_heisenbridge_container_stop_grace_time_seconds : 1
2024-08-10 03:22:59 +00:00
# matrix_heisenbridge_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container.
# See `../templates/labels.j2` for details.
#
# To inject your own other container labels, see `matrix_heisenbridge_container_labels_additional_labels`.
matrix_heisenbridge_container_labels_traefik_enabled : true
matrix_heisenbridge_container_labels_traefik_docker_network : "{{ matrix_heisenbridge_container_network }}"
matrix_heisenbridge_container_labels_traefik_hostname : "{{ matrix_heisenbridge_hostname }}"
matrix_heisenbridge_container_labels_traefik_path_prefix : "{{ matrix_heisenbridge_path_prefix }}"
matrix_heisenbridge_container_labels_traefik_entrypoints : web-secure
matrix_heisenbridge_container_labels_traefik_tls_certResolver : default # noqa var-naming
# Controls if the media router is enabled
matrix_heisenbridge_container_labels_traefik_media_enabled : true
matrix_heisenbridge_container_labels_traefik_media_hostname : "{{ matrix_heisenbridge_container_labels_traefik_hostname }}"
# The path prefix must either be `/` or not end with a slash (e.g. `/heisenbridge`).
matrix_heisenbridge_container_labels_traefik_media_path_prefix : "{{ '/_heisenbridge/media' if matrix_heisenbridge_container_labels_traefik_path_prefix == '/' else (matrix_heisenbridge_container_labels_traefik_path_prefix + '/_heisenbridge/media') }}"
matrix_heisenbridge_container_labels_traefik_media_rule : "Host(`{{ matrix_heisenbridge_container_labels_traefik_media_hostname }}`){% if matrix_heisenbridge_container_labels_traefik_media_path_prefix != '/' %} && PathPrefix(`{{ matrix_heisenbridge_container_labels_traefik_media_path_prefix }}`){% endif %}"
matrix_heisenbridge_container_labels_traefik_media_priority : 0
matrix_heisenbridge_container_labels_traefik_media_entrypoints : "{{ matrix_heisenbridge_container_labels_traefik_entrypoints }}"
matrix_heisenbridge_container_labels_traefik_media_tls : "{{ matrix_heisenbridge_container_labels_traefik_media_entrypoints != 'web' }}"
2024-08-10 03:37:48 +00:00
matrix_heisenbridge_container_labels_traefik_media_tls_certResolver : "{{ matrix_heisenbridge_container_labels_traefik_tls_certResolver }}" # noqa var-naming
2024-08-10 03:22:59 +00:00
# matrix_heisenbridge_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
# See `../templates/labels.j2` for details.
#
# Example:
# matrix_heisenbridge_container_labels_additional_labels: |
# my.label=1
# another.label="here"
matrix_heisenbridge_container_labels_additional_labels : ''
2021-05-12 12:24:39 +00:00
# A list of extra arguments to pass to the container
matrix_heisenbridge_container_extra_arguments : [ ]
# List of systemd services that service depends on.
2024-01-07 12:53:22 +00:00
matrix_heisenbridge_systemd_required_services_list : "{{ matrix_heisenbridge_systemd_required_services_list_default + matrix_heisenbridge_systemd_required_services_list_auto + matrix_heisenbridge_systemd_required_services_list_custom }}"
2024-06-04 10:14:34 +00:00
matrix_heisenbridge_systemd_required_services_list_default : "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
2024-01-07 12:53:22 +00:00
matrix_heisenbridge_systemd_required_services_list_auto : [ ]
matrix_heisenbridge_systemd_required_services_list_custom : [ ]
2021-05-12 12:24:39 +00:00
# List of systemd services that service wants
matrix_heisenbridge_systemd_wanted_services_list : [ ]
2024-01-07 12:53:22 +00:00
matrix_heisenbridge_homeserver_url : ""
2021-05-12 12:24:39 +00:00
matrix_heisenbridge_appservice_token : ''
matrix_heisenbridge_homeserver_token : ''
2024-08-10 03:22:59 +00:00
# In light of Synapse sunsetting unauthenticated media, we'd like to move to Heisenbridge's media proxy,
# announced here: https://github.com/hifi/heisenbridge/releases/tag/v1.15.0
#
# It seems like the media proxy is not working as expected, so we're disabling it for now and falling back to our old media URL (pointing Heisenbridge to the homeserver URL).
# Right now, Heisenbridge is still generating URLs like `{media_url}/_matrix/media/v3/download/DOMAIN/FILE_ID/FILE_NAME`,
# so pointing `media_url` to the homeserver is a good fit.
# matrix_heisenbridge_config_media_url: "{{ matrix_heisenbridge_scheme }}://{{ matrix_heisenbridge_hostname }}{{ matrix_heisenbridge_path_prefix }}"
matrix_heisenbridge_config_media_url : "{{ matrix_heisenbridge_scheme }}://{{ matrix_heisenbridge_hostname }}"
matrix_heisenbridge_config_media_key : "{{ matrix_heisenbridge_homeserver_token }}"
2023-10-06 05:38:04 +00:00
matrix_heisenbridge_config_displayname : "Heisenbridge"
matrix_heisenbridge_registration_yaml_heisenbridge :
media_url : "{{ matrix_heisenbridge_config_media_url }}"
2024-08-10 03:22:59 +00:00
media_key : "{{ matrix_heisenbridge_config_media_key }}"
2023-10-06 05:38:04 +00:00
displayname : "{{ matrix_heisenbridge_config_displayname }}"
# Default registration file consumed by both the homeserver and Heisenbridge.
# Besides registration information, it contains configuration (see the heisenbridge key).
2021-05-12 12:24:39 +00:00
matrix_heisenbridge_registration_yaml :
id : heisenbridge
url : http://matrix-heisenbridge:9898
as_token : "{{ matrix_heisenbridge_appservice_token }}"
2022-02-05 20:32:54 +00:00
hs_token : "{{ matrix_heisenbridge_homeserver_token }}"
2021-05-12 12:24:39 +00:00
rate_limited : false
sender_localpart : heisenbridge
namespaces :
users :
2022-02-05 20:32:54 +00:00
- regex : '@hbirc_.*'
exclusive : true
2021-05-12 12:24:39 +00:00
aliases : [ ]
rooms : [ ]
2023-10-06 05:38:04 +00:00
heisenbridge : "{{ matrix_heisenbridge_registration_yaml_heisenbridge }}"
2021-05-12 12:24:39 +00:00
2022-07-18 08:22:05 +00:00
matrix_heisenbridge_registration : "{{ matrix_heisenbridge_registration_yaml | from_yaml }}"