2024-12-07 17:34:44 +01:00
# SPDX-FileCopyrightText: 2024 MDAD Team and contributors
#
# SPDX-License-Identifier: AGPL-3.0-or-later
2022-02-05 21:32:54 +01:00
---
2019-06-10 16:52:48 +02:00
# matrix-appservice-slack is a Matrix <-> Slack bridge
2022-07-16 22:59:21 +02:00
# Project source code URL: https://github.com/matrix-org/matrix-appservice-slack
2019-06-10 16:52:48 +02:00
matrix_appservice_slack_enabled : true
2024-01-07 11:22:51 +01:00
matrix_appservice_slack_scheme : https
matrix_appservice_slack_hostname : ''
matrix_appservice_slack_path_prefix : /appservice-slack
2022-01-07 11:18:45 +01:00
matrix_appservice_slack_container_image_self_build : false
2021-01-14 01:29:11 +01:00
matrix_appservice_slack_docker_repo : "https://github.com/matrix-org/matrix-appservice-slack.git"
2022-07-18 13:43:52 +02:00
matrix_appservice_slack_docker_repo_version : "{{ 'master' if matrix_appservice_slack_version == 'latest' else matrix_appservice_slack_version }}"
2021-01-14 01:29:11 +01:00
matrix_appservice_slack_docker_src_files_path : "{{ matrix_base_data_path }}/appservice-slack/docker-src"
2022-07-18 13:43:52 +02:00
# matrix_appservice_slack_version used to contain the full Docker image tag (e.g. `release-X.X.X`).
# It's a bare version number now. We try to somewhat retain compatibility below.
2023-10-06 14:14:03 +02:00
# renovate: datasource=docker depName=docker.io/matrixdotorg/matrix-appservice-slack
2023-07-31 17:40:29 +02:00
matrix_appservice_slack_version : 2.1 .2
2022-07-18 13:43:52 +02:00
matrix_appservice_slack_docker_image : "{{ matrix_container_global_registry_prefix }}matrixdotorg/matrix-appservice-slack:{{ matrix_appservice_slack_docker_image_tag }}"
matrix_appservice_slack_docker_image_tag : "{{ 'latest' if matrix_appservice_slack_version == 'latest' else ('release-' + matrix_appservice_slack_version) }}"
2019-08-28 13:00:34 +02:00
matrix_appservice_slack_docker_image_force_pull : "{{ matrix_appservice_slack_docker_image.endswith(':latest') }}"
2019-06-10 16:52:48 +02:00
matrix_appservice_slack_base_path : "{{ matrix_base_data_path }}/appservice-slack"
matrix_appservice_slack_config_path : "{{ matrix_appservice_slack_base_path }}/config"
matrix_appservice_slack_data_path : "{{ matrix_appservice_slack_base_path }}/data"
2024-01-07 11:22:51 +01:00
matrix_appservice_slack_public_endpoint : "{{ matrix_appservice_slack_path_prefix }}"
matrix_appservice_slack_inbound_uri_prefix : "{{ matrix_appservice_slack_scheme }}://{{ matrix_appservice_slack_hostname }}{{ matrix_appservice_slack_public_endpoint }}"
2019-06-10 16:52:48 +02:00
# Once you make a control room in Matrix, you can get its ID by typing any message and checking its source
matrix_appservice_slack_control_room_id : ''
matrix_appservice_slack_bot_name : 'slackbot'
matrix_appservice_slack_user_prefix : 'slack_'
# Controls the SLACK_PORT and MATRIX_PORT of the installation
matrix_appservice_slack_matrix_port : 9004
matrix_appservice_slack_slack_port : 9003
2019-07-27 20:22:34 +02:00
# Controls whether the appservice-slack container exposes its HTTP port (tcp/9003 in the container).
#
2019-06-10 16:52:48 +02:00
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:9999"), or empty string to not expose.
matrix_appservice_slack_container_http_host_bind_port : ''
2024-01-07 11:22:51 +01:00
matrix_appservice_slack_container_network : ""
matrix_appservice_slack_container_additional_networks : "{{ matrix_appservice_slack_container_additional_networks_auto + matrix_appservice_slack_container_additional_networks_custom }}"
matrix_appservice_slack_container_additional_networks_auto : [ ]
matrix_appservice_slack_container_additional_networks_custom : [ ]
# matrix_appservice_slack_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_appservice_slack_container_labels_additional_labels`.
matrix_appservice_slack_container_labels_traefik_enabled : true
matrix_appservice_slack_container_labels_traefik_docker_network : "{{ matrix_appservice_slack_container_network }}"
matrix_appservice_slack_container_labels_traefik_entrypoints : web-secure
matrix_appservice_slack_container_labels_traefik_tls_certResolver : default # noqa var-naming
2024-01-07 11:48:48 +01:00
# Controls whether labels will be added that expose matrix-appservice-slack's public endpoints
2024-01-07 11:22:51 +01:00
matrix_appservice_slack_container_labels_public_endpoint_enabled : true
matrix_appservice_slack_container_labels_public_endpoint_hostname : "{{ matrix_appservice_slack_hostname }}"
matrix_appservice_slack_container_labels_public_endpoint_prefix : "{{ matrix_appservice_slack_path_prefix }}"
matrix_appservice_slack_container_labels_public_endpoint_traefik_rule : "Host(`{{ matrix_appservice_slack_container_labels_public_endpoint_hostname }}`) && PathPrefix(`{{ matrix_appservice_slack_path_prefix }}`)"
matrix_appservice_slack_container_labels_public_endpoint_traefik_priority : 0
matrix_appservice_slack_container_labels_public_endpoint_traefik_entrypoints : "{{ matrix_appservice_slack_container_labels_traefik_entrypoints }}"
matrix_appservice_slack_container_labels_public_endpoint_traefik_tls : "{{ matrix_appservice_slack_container_labels_public_endpoint_traefik_entrypoints != 'web' }}"
matrix_appservice_slack_container_labels_public_endpoint_traefik_tls_certResolver : "{{ matrix_appservice_slack_container_labels_traefik_tls_certResolver }}" # noqa var-naming
# matrix_appservice_slack_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_appservice_slack_container_labels_additional_labels: |
# my.label=1
# another.label="here"
matrix_appservice_slack_container_labels_additional_labels : ''
2019-06-10 16:52:48 +02:00
# A list of extra arguments to pass to the container
matrix_appservice_slack_container_extra_arguments : [ ]
# List of systemd services that matrix-appservice-slack.service depends on.
2024-01-07 11:22:51 +01:00
matrix_appservice_slack_systemd_required_services_list : "{{ matrix_appservice_slack_systemd_required_services_list_default + matrix_appservice_slack_systemd_required_services_list_auto + matrix_appservice_slack_systemd_required_services_list_custom }}"
2024-06-04 12:14:34 +02:00
matrix_appservice_slack_systemd_required_services_list_default : "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
2024-01-07 11:22:51 +01:00
matrix_appservice_slack_systemd_required_services_list_auto : [ ]
matrix_appservice_slack_systemd_required_services_list_custom : [ ]
2019-06-10 16:52:48 +02:00
# List of systemd services that matrix-appservice-slack.service wants
matrix_appservice_slack_systemd_wanted_services_list : [ ]
2024-01-07 11:22:51 +01:00
matrix_appservice_slack_homeserver_media_url : "{{ matrix_server_fqn_matrix }}"
matrix_appservice_slack_homeserver_url : ""
matrix_appservice_slack_homeserver_domain : "{{ matrix_domain }}"
matrix_appservice_slack_appservice_url : 'http://matrix-appservice-slack'
2019-06-10 16:52:48 +02:00
matrix_appservice_slack_appservice_token : ''
matrix_appservice_slack_homeserver_token : ''
matrix_appservice_slack_id_token : ''
2020-12-14 14:02:51 +01:00
matrix_appservice_slack_database_engine : nedb
matrix_appservice_slack_database_username : matrix_appservice_slack
2022-11-27 08:16:18 +01:00
matrix_appservice_slack_database_password : 'some-passsword'
matrix_appservice_slack_database_hostname : ''
2020-12-14 14:02:51 +01:00
matrix_appservice_slack_database_port : 5432
matrix_appservice_slack_database_name : matrix_appservice_slack
2023-08-22 18:38:11 +02:00
matrix_appservice_slack_database_sslmode : disable
2020-12-22 18:56:52 +01:00
2024-05-14 16:12:11 +02:00
matrix_appservice_slack_puppeting_enabled : false
matrix_appservice_slack_puppeting_slackapp_client_id : ''
matrix_appservice_slack_puppeting_slackapp_client_secret : ''
matrix_appservice_slack_puppeting_onboard_users : true
matrix_appservice_slack_team_sync_enabled : false
matrix_appservice_slack_team_sync_alias_prefix : 'slack_'
2024-01-13 16:11:57 +01:00
# The name of the container network to use when importing a NeDB database into Postgres.
# For Postgres not working in a container, this can be left empty.
matrix_appservice_slack_database_container_network : ''
2020-12-22 18:56:52 +01:00
# This is just the Postgres connection string, if Postgres is used.
# Naming clashes with `matrix_appservice_slack_database_connectionString` somewhat.
2023-08-22 18:38:11 +02:00
matrix_appservice_slack_database_connection_string : 'postgresql://{{ matrix_appservice_slack_database_username }}:{{ matrix_appservice_slack_database_password }}@{{ matrix_appservice_slack_database_hostname }}:{{ matrix_appservice_slack_database_port }}/{{ matrix_appservice_slack_database_name }}?sslmode={{ matrix_appservice_slack_database_sslmode }}'
2020-12-22 18:56:52 +01:00
# This is what actually goes into `database.connectionString` for the bridge.
2022-07-18 15:43:12 +02:00
matrix_appservice_slack_database_connectionString : |- # noqa var-naming
{{
{
'nedb' : 'nedb:///data' ,
'postgres' : matrix_appservice_slack_database_connection_string,
}[ matrix_appservice_slack_database_engine]
}}
2020-12-14 14:02:51 +01:00
2020-06-03 08:33:28 +02:00
matrix_appservice_slack_configuration_yaml : "{{ lookup('template', 'templates/config.yaml.j2') }}"
2019-06-10 16:52:48 +02:00
matrix_appservice_slack_configuration_extension_yaml : |
#slack_hook_port: 9898
#inbound_uri_prefix: "https://my.server.here:9898/"
#bot_username: "slackbot"
#username_prefix: "slack_"
# Optional
#slack_master_token: "abc-123-def"
# Optional
2024-10-18 18:23:37 +02:00
#matrix_admin_room: "!qporfwt:example.com"
2019-06-10 16:52:48 +02:00
#homeserver:
2021-11-15 21:43:05 +01:00
# url: http://localhost:{{ matrix_synapse_container_client_api_port }}
2019-06-10 16:52:48 +02:00
# server_name: my.server
# Optional
#tls:
# key_file: /path/to/tls.key
# crt_file: /path/to/tls.crt
#logging:
# console: "info"
# files:
# - "./debug.log": "info"
#- "./error.log": "error"
2022-07-18 10:22:05 +02:00
matrix_appservice_slack_configuration_extension : "{{ matrix_appservice_slack_configuration_extension_yaml | from_yaml if matrix_appservice_slack_configuration_extension_yaml | from_yaml else {} }}"
2019-06-10 16:52:48 +02:00
2022-07-18 11:28:39 +02:00
matrix_appservice_slack_configuration : "{{ matrix_appservice_slack_configuration_yaml | from_yaml | combine(matrix_appservice_slack_configuration_extension, recursive=True) }}"
2019-06-10 16:52:48 +02:00
matrix_appservice_slack_registration_yaml : |
id : "{{ matrix_appservice_slack_id_token }}"
as_token : "{{ matrix_appservice_slack_appservice_token }}"
hs_token : "{{ matrix_appservice_slack_homeserver_token }}"
namespaces :
users :
- exclusive : true
regex : '@{{ matrix_appservice_slack_user_prefix }}.*'
aliases :
- exclusive : false
regex : '#{{ matrix_appservice_slack_user_prefix }}.*'
rooms : [ ]
2022-07-18 14:33:41 +02:00
url : "{{ matrix_appservice_slack_appservice_url }}:{{ matrix_appservice_slack_matrix_port }}"
2019-06-10 16:52:48 +02:00
sender_localpart : slackbot
rate_limited : true
protocols : null
2022-07-18 10:22:05 +02:00
matrix_appservice_slack_registration : "{{ matrix_appservice_slack_registration_yaml | from_yaml }}"