Slavi Pantaleev d6bf789710 Remove matrix_container_global_registry_prefix variable
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
2025-02-23 10:15:41 +02:00

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 }}"