mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2025-02-24 16:04:09 +01:00
This is done for a few reasons: - less globals and more indepdendence for each role is better. We rely on various externally-hosted roles and they don't rely on this global either. - `matrix_container_global_registry_prefix` could make people think they could just override this variable and have all their images pull from elsewhere. This is rarely the case, unless you've taken special care to mirror all the various components (from their respective registries) to your own. In such a case, you probably know what you're mirroring and can adjust individual variables. - nowadays, various components live on different registries. With Docker Inc tightening rate limits for Docker Hub, it's even more likely that we'll see increased diversity in where images are hosted
181 lines
9.9 KiB
YAML
181 lines
9.9 KiB
YAML
---
|
|
# matrix-appservice-slack is a Matrix <-> Slack bridge
|
|
# Project source code URL: https://github.com/matrix-org/matrix-appservice-slack
|
|
|
|
matrix_appservice_slack_enabled: true
|
|
|
|
matrix_appservice_slack_scheme: https
|
|
matrix_appservice_slack_hostname: ''
|
|
matrix_appservice_slack_path_prefix: /appservice-slack
|
|
|
|
matrix_appservice_slack_container_image_self_build: false
|
|
matrix_appservice_slack_docker_repo: "https://github.com/matrix-org/matrix-appservice-slack.git"
|
|
matrix_appservice_slack_docker_repo_version: "{{ 'master' if matrix_appservice_slack_version == 'latest' else matrix_appservice_slack_version }}"
|
|
matrix_appservice_slack_docker_src_files_path: "{{ matrix_base_data_path }}/appservice-slack/docker-src"
|
|
|
|
# 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.
|
|
# renovate: datasource=docker depName=docker.io/matrixdotorg/matrix-appservice-slack
|
|
matrix_appservice_slack_version: 2.1.2
|
|
matrix_appservice_slack_docker_image: "{{ matrix_appservice_slack_docker_image_registry_prefix }}matrixdotorg/matrix-appservice-slack:{{ matrix_appservice_slack_docker_image_tag }}"
|
|
matrix_appservice_slack_docker_image_registry_prefix: docker.io/
|
|
matrix_appservice_slack_docker_image_tag: "{{ 'latest' if matrix_appservice_slack_version == 'latest' else ('release-' + matrix_appservice_slack_version) }}"
|
|
matrix_appservice_slack_docker_image_force_pull: "{{ matrix_appservice_slack_docker_image.endswith(':latest') }}"
|
|
|
|
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"
|
|
|
|
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 }}"
|
|
|
|
# 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
|
|
|
|
# Controls whether the appservice-slack container exposes its HTTP port (tcp/9003 in the container).
|
|
#
|
|
# 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: ''
|
|
|
|
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
|
|
|
|
# Controls whether labels will be added that expose matrix-appservice-slack's public endpoints
|
|
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: ''
|
|
|
|
# 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.
|
|
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 }}"
|
|
matrix_appservice_slack_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
|
|
matrix_appservice_slack_systemd_required_services_list_auto: []
|
|
matrix_appservice_slack_systemd_required_services_list_custom: []
|
|
|
|
# List of systemd services that matrix-appservice-slack.service wants
|
|
matrix_appservice_slack_systemd_wanted_services_list: []
|
|
|
|
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'
|
|
|
|
matrix_appservice_slack_appservice_token: ''
|
|
matrix_appservice_slack_homeserver_token: ''
|
|
matrix_appservice_slack_id_token: ''
|
|
|
|
matrix_appservice_slack_database_engine: nedb
|
|
matrix_appservice_slack_database_username: matrix_appservice_slack
|
|
matrix_appservice_slack_database_password: 'some-passsword'
|
|
matrix_appservice_slack_database_hostname: ''
|
|
matrix_appservice_slack_database_port: 5432
|
|
matrix_appservice_slack_database_name: matrix_appservice_slack
|
|
matrix_appservice_slack_database_sslmode: disable
|
|
|
|
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_'
|
|
|
|
# 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: ''
|
|
|
|
# This is just the Postgres connection string, if Postgres is used.
|
|
# Naming clashes with `matrix_appservice_slack_database_connectionString` somewhat.
|
|
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 }}'
|
|
|
|
# This is what actually goes into `database.connectionString` for the bridge.
|
|
matrix_appservice_slack_database_connectionString: |- # noqa var-naming
|
|
{{
|
|
{
|
|
'nedb': 'nedb:///data',
|
|
'postgres': matrix_appservice_slack_database_connection_string,
|
|
}[matrix_appservice_slack_database_engine]
|
|
}}
|
|
|
|
|
|
matrix_appservice_slack_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
|
|
|
|
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
|
|
#matrix_admin_room: "!qporfwt:example.com"
|
|
#homeserver:
|
|
# url: http://localhost:{{ matrix_synapse_container_client_api_port }}
|
|
# 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"
|
|
|
|
matrix_appservice_slack_configuration_extension: "{{ matrix_appservice_slack_configuration_extension_yaml | from_yaml if matrix_appservice_slack_configuration_extension_yaml | from_yaml else {} }}"
|
|
|
|
matrix_appservice_slack_configuration: "{{ matrix_appservice_slack_configuration_yaml | from_yaml | combine(matrix_appservice_slack_configuration_extension, recursive=True) }}"
|
|
|
|
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: []
|
|
url: "{{ matrix_appservice_slack_appservice_url }}:{{ matrix_appservice_slack_matrix_port }}"
|
|
sender_localpart: slackbot
|
|
rate_limited: true
|
|
protocols: null
|
|
|
|
matrix_appservice_slack_registration: "{{ matrix_appservice_slack_registration_yaml | from_yaml }}"
|