mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2025-02-24 16:04:09 +01:00
As the future for the MX bridges in this playbook and by themselves seems uncertain, this commit adds license information in SPDX format to the files for those bridges, before the bridges would be deprecated and possibly get removed from the project. Please note that .license files are added for the files which would be broken if such information are added as header, following the REUSE's specification. Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
182 lines
10 KiB
YAML
182 lines
10 KiB
YAML
# SPDX-FileCopyrightText: 2020 Rodrigo Belem
|
|
# SPDX-FileCopyrightText: 2020 - 2021 MDAD project contributors
|
|
# SPDX-FileCopyrightText: 2020 - 2024 Slavi Pantaleev
|
|
# SPDX-FileCopyrightText: 2020 Hugues Morisset
|
|
# SPDX-FileCopyrightText: 2021 Ahmad Haghighi
|
|
# SPDX-FileCopyrightText: 2021 Marcel Ackermann
|
|
# SPDX-FileCopyrightText: 2022 Jim Myhrberg
|
|
# SPDX-FileCopyrightText: 2022 Marko Weltzer
|
|
# SPDX-FileCopyrightText: 2022 Nikita Chernyi
|
|
# SPDX-FileCopyrightText: 2022 Daniel Sonck
|
|
# SPDX-FileCopyrightText: 2023 Samuel Meenzen
|
|
# SPDX-FileCopyrightText: 2024 Suguru Hirahara
|
|
#
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
---
|
|
# Mx Puppet Slack is a Matrix <-> Slack bridge
|
|
# Project source code URL: https://gitlab.com/mx-puppet/slack/mx-puppet-slack
|
|
|
|
matrix_mx_puppet_slack_enabled: true
|
|
|
|
matrix_mx_puppet_slack_scheme: https
|
|
matrix_mx_puppet_slack_hostname: ''
|
|
matrix_mx_puppet_slack_path_prefix: /slack/oauth
|
|
|
|
matrix_mx_puppet_slack_oauth_client_id: ''
|
|
matrix_mx_puppet_slack_oauth_client_secret: ''
|
|
|
|
matrix_mx_puppet_slack_container_image_self_build: false
|
|
matrix_mx_puppet_slack_container_image_self_build_repo: "https://gitlab.com/mx-puppet/slack/mx-puppet-slack.git"
|
|
matrix_mx_puppet_slack_container_image_self_build_version: "{{ 'main' if matrix_mx_puppet_slack_version == 'latest' else matrix_mx_puppet_slack_version }}"
|
|
matrix_mx_puppet_slack_container_image_self_build_dockerfile_path: "Dockerfile"
|
|
|
|
# Controls whether the mx-puppet-slack container exposes its HTTP port (tcp/8432 in the container).
|
|
#
|
|
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:8432"), or empty string to not expose.
|
|
matrix_mx_puppet_slack_container_http_host_bind_port: ''
|
|
|
|
# renovate: datasource=docker depName=registry.gitlab.com/mx-puppet/slack/mx-puppet-slack
|
|
matrix_mx_puppet_slack_version: v0.1.2
|
|
matrix_mx_puppet_slack_docker_image: "{{ matrix_mx_puppet_slack_docker_image_name_prefix }}mx-puppet/slack/mx-puppet-slack:{{ matrix_mx_puppet_slack_version }}"
|
|
matrix_mx_puppet_slack_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_slack_container_image_self_build else 'registry.gitlab.com/' }}"
|
|
matrix_mx_puppet_slack_docker_image_force_pull: "{{ matrix_mx_puppet_slack_docker_image.endswith(':latest') }}"
|
|
|
|
matrix_mx_puppet_slack_base_path: "{{ matrix_base_data_path }}/mx-puppet-slack"
|
|
matrix_mx_puppet_slack_config_path: "{{ matrix_mx_puppet_slack_base_path }}/config"
|
|
matrix_mx_puppet_slack_data_path: "{{ matrix_mx_puppet_slack_base_path }}/data"
|
|
matrix_mx_puppet_slack_docker_src_files_path: "{{ matrix_mx_puppet_slack_base_path }}/docker-src"
|
|
|
|
matrix_mx_puppet_slack_appservice_port: "8432"
|
|
|
|
matrix_mx_puppet_slack_homeserver_address: ""
|
|
matrix_mx_puppet_slack_homeserver_domain: '{{ matrix_domain }}'
|
|
matrix_mx_puppet_slack_appservice_address: 'http://matrix-mx-puppet-slack:{{ matrix_mx_puppet_slack_appservice_port }}'
|
|
|
|
matrix_mx_puppet_slack_oauth_enabled: true
|
|
matrix_mx_puppet_slack_oauth_redirect_path: "{{ matrix_mx_puppet_slack_path_prefix }}"
|
|
matrix_mx_puppet_slack_oauth_redirect_uri: '{{ matrix_mx_puppet_slack_scheme }}://{{ matrix_mx_puppet_slack_hostname }}{{ matrix_mx_puppet_slack_oauth_redirect_path }}'
|
|
|
|
# "@alice:example.com" to allow a specific user
|
|
# "@.*:example.com" to allow users on a specific homeserver
|
|
# "@.*" to allow anyone
|
|
matrix_mx_puppet_slack_provisioning_whitelist:
|
|
- "@.*:{{ matrix_domain | regex_escape }}"
|
|
|
|
# Leave empty to disable blacklist
|
|
# "@bob:example.com" to disallow a specific user
|
|
# "@.*:example.com" to disallow users on a specific homeserver
|
|
matrix_mx_puppet_slack_provisioning_blacklist: []
|
|
|
|
matrix_mx_puppet_slack_container_network: ""
|
|
|
|
matrix_mx_puppet_slack_container_additional_networks: "{{ matrix_mx_puppet_slack_container_additional_networks_auto + matrix_mx_puppet_slack_container_additional_networks_custom }}"
|
|
matrix_mx_puppet_slack_container_additional_networks_auto: []
|
|
matrix_mx_puppet_slack_container_additional_networks_custom: []
|
|
|
|
# matrix_mx_puppet_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_mx_puppet_slack_container_labels_additional_labels`.
|
|
matrix_mx_puppet_slack_container_labels_traefik_enabled: true
|
|
matrix_mx_puppet_slack_container_labels_traefik_docker_network: "{{ matrix_mx_puppet_slack_container_network }}"
|
|
matrix_mx_puppet_slack_container_labels_traefik_entrypoints: web-secure
|
|
matrix_mx_puppet_slack_container_labels_traefik_tls_certResolver: default # noqa var-naming
|
|
|
|
# Controls whether labels will be added that expose mx-puppet-slack's public endpoint
|
|
matrix_mx_puppet_slack_container_labels_public_endpoint_enabled: true
|
|
matrix_mx_puppet_slack_container_labels_public_endpoint_hostname: "{{ matrix_mx_puppet_slack_hostname }}"
|
|
matrix_mx_puppet_slack_container_labels_public_endpoint_path_prefix: "{{ matrix_mx_puppet_slack_path_prefix }}"
|
|
matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_rule: "Host(`{{ matrix_mx_puppet_slack_container_labels_public_endpoint_hostname }}`) && PathPrefix(`{{ matrix_mx_puppet_slack_container_labels_public_endpoint_path_prefix }}`)"
|
|
matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_priority: 0
|
|
matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_entrypoints: "{{ matrix_mx_puppet_slack_container_labels_traefik_entrypoints }}"
|
|
matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_tls: "{{ matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_entrypoints != 'web' }}"
|
|
matrix_mx_puppet_slack_container_labels_public_endpoint_traefik_tls_certResolver: "{{ matrix_mx_puppet_slack_container_labels_traefik_tls_certResolver }}" # noqa var-naming
|
|
|
|
# matrix_mx_puppet_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_mx_puppet_slack_container_labels_additional_labels: |
|
|
# my.label=1
|
|
# another.label="here"
|
|
matrix_mx_puppet_slack_container_labels_additional_labels: ''
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_mx_puppet_slack_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-puppet-slack.service depends on.
|
|
matrix_mx_puppet_slack_systemd_required_services_list: "{{ matrix_mx_puppet_slack_systemd_required_services_list_default + matrix_mx_puppet_slack_systemd_required_services_list_auto + matrix_mx_puppet_slack_systemd_required_services_list_custom }}"
|
|
matrix_mx_puppet_slack_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
|
|
matrix_mx_puppet_slack_systemd_required_services_list_auto: []
|
|
matrix_mx_puppet_slack_systemd_required_services_list_custom: []
|
|
|
|
# List of systemd services that matrix-puppet-slack.service wants
|
|
matrix_mx_puppet_slack_systemd_wanted_services_list: []
|
|
|
|
matrix_mx_puppet_slack_appservice_token: ''
|
|
matrix_mx_puppet_slack_homeserver_token: ''
|
|
|
|
# Can be set to enable automatic double-puppeting via Shared Secret Auth (https://github.com/devture/matrix-synapse-shared-secret-auth).
|
|
matrix_mx_puppet_slack_login_shared_secret: ''
|
|
|
|
matrix_mx_puppet_slack_presence_enabled: true
|
|
matrix_mx_puppet_slack_presence_interval: 5000
|
|
|
|
# Database configuration, role uses 'sqlite' per default but playbook sets up Postgres by default
|
|
matrix_mx_puppet_slack_database_engine: sqlite
|
|
|
|
matrix_mx_puppet_slack_sqlite_database_path_local: "{{ matrix_mx_puppet_slack_data_path }}/database.db"
|
|
matrix_mx_puppet_slack_sqlite_database_path_in_container: "/data/database.db"
|
|
|
|
matrix_mx_puppet_slack_database_username: matrix_mx_puppet_slack
|
|
matrix_mx_puppet_slack_database_password: ~
|
|
matrix_mx_puppet_slack_database_hostname: ''
|
|
matrix_mx_puppet_slack_database_port: 5432
|
|
matrix_mx_puppet_slack_database_name: matrix_mx_puppet_slack
|
|
matrix_mx_puppet_slack_database_sslmode: disable
|
|
|
|
matrix_mx_puppet_slack_database_connection_string: 'postgresql://{{ matrix_mx_puppet_slack_database_username }}:{{ matrix_mx_puppet_slack_database_password }}@{{ matrix_mx_puppet_slack_database_hostname }}:{{ matrix_mx_puppet_slack_database_port }}/{{ matrix_mx_puppet_slack_database_name }}?sslmode={{ matrix_mx_puppet_slack_database_sslmode }}'
|
|
|
|
# Default configuration template which covers the generic use case.
|
|
# You can customize it by controlling the various variables inside it.
|
|
#
|
|
# For a more advanced customization, you can extend the default (see `matrix_mx_puppet_slack_configuration_extension_yaml`)
|
|
# or completely replace this variable with your own template.
|
|
matrix_mx_puppet_slack_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
|
|
|
|
matrix_mx_puppet_slack_configuration_extension_yaml: |
|
|
# Your custom YAML configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_mx_puppet_slack_configuration_yaml`).
|
|
#
|
|
# 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
|
|
# completely redefining `matrix_mx_puppet_slack_configuration_yaml`.
|
|
|
|
matrix_mx_puppet_slack_configuration_extension: "{{ matrix_mx_puppet_slack_configuration_extension_yaml | from_yaml if matrix_mx_puppet_slack_configuration_extension_yaml | from_yaml is mapping else {} }}"
|
|
|
|
# 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_mx_puppet_slack_configuration_yaml`.
|
|
matrix_mx_puppet_slack_configuration: "{{ matrix_mx_puppet_slack_configuration_yaml | from_yaml | combine(matrix_mx_puppet_slack_configuration_extension, recursive=True) }}"
|
|
|
|
matrix_mx_puppet_slack_registration_yaml: |
|
|
as_token: "{{ matrix_mx_puppet_slack_appservice_token }}"
|
|
hs_token: "{{ matrix_mx_puppet_slack_homeserver_token }}"
|
|
id: slack-puppet
|
|
namespaces:
|
|
users:
|
|
- exclusive: true
|
|
regex: '@_slackpuppet_.*:{{ matrix_mx_puppet_slack_homeserver_domain | regex_escape }}'
|
|
rooms: []
|
|
aliases:
|
|
- exclusive: true
|
|
regex: '#_slackpuppet_.*:{{ matrix_mx_puppet_slack_homeserver_domain | regex_escape }}'
|
|
protocols: []
|
|
rate_limited: false
|
|
sender_localpart: _slackpuppet_bot
|
|
url: {{ matrix_mx_puppet_slack_appservice_address }}
|
|
de.sorunome.msc2409.push_ephemeral: true
|
|
|
|
matrix_mx_puppet_slack_registration: "{{ matrix_mx_puppet_slack_registration_yaml | from_yaml }}"
|