mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2026-08-29 12:03:14 +00:00
The third shape: a non-mautrix bridge. It confirms the scaffolding is not mautrix-specific, and it is laid out differently enough to be worth having - everything sits directly under the base path rather than in config/ and data/ subdirectories, the owner and homeserver URL are passed on the command line rather than through a config file, so the unit is where they can be checked, and identd optionally binds host port 113. matrix-base's matrix_server_fqn_* family moved into the shared context; 18 of the roles here read one of them. Three roles now, three shapes - HTTP receiver, mautrix bridge, non-mautrix bridge - and the scaffolding took no per-shape special-casing beyond each role's own variables. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
81 lines
3.3 KiB
YAML
81 lines
3.3 KiB
YAML
# SPDX-FileCopyrightText: 2026 Slavi Pantaleev
|
|
#
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
---
|
|
# The variables a role here reads from its surroundings rather than from its own
|
|
# defaults. In a real run `matrix-base` and `group_vars/matrix_servers` provide
|
|
# them; in a scenario they have to come from somewhere, and including
|
|
# `matrix-base` itself does far more than a role scenario needs.
|
|
#
|
|
# Include from a scenario's prepare.yml, converge.yml and verify.yml:
|
|
#
|
|
# vars_files:
|
|
# - "{{ lookup('env', 'MOLECULE_PROJECT_DIRECTORY') }}/../../../molecule-shared/playbook-context.yml"
|
|
#
|
|
# A scenario can override any of these in its own group_vars - that is the point
|
|
# of testing a role with values it would not have chosen for itself.
|
|
#
|
|
# Keep this to variables that come from OUTSIDE the role under test. Anything the
|
|
# role defines belongs in the scenario, not here.
|
|
|
|
# --- Identity and paths (matrix-base) --------------------------------------
|
|
|
|
matrix_base_data_path: /matrix
|
|
matrix_domain: molecule.local
|
|
|
|
matrix_user_name: matrix
|
|
matrix_group_name: matrix
|
|
|
|
# Deliberately not 1000: the base images already have a user there, so a distinct
|
|
# id is what proves a role used the one it was given rather than coinciding with
|
|
# the image's own.
|
|
matrix_user_uid: 1234
|
|
matrix_user_gid: 1234
|
|
|
|
# Empty in the playbook's own defaults too. Components that would invite an
|
|
# administrator into a room skip doing so when it is empty, which is what a
|
|
# scenario wants.
|
|
matrix_admin: ''
|
|
|
|
# --- Bridge-wide switches (matrix-base) ------------------------------------
|
|
#
|
|
# Every bridge role reads these, so they live here rather than in each bridge's
|
|
# scenario. The values match the playbook's own defaults: encryption off, no
|
|
# relay, no MSC4190. A bridge scenario that wants to prove one of these reaches
|
|
# the rendered configuration should override it in its own group_vars.
|
|
|
|
matrix_bridges_encryption_enabled: false
|
|
matrix_bridges_encryption_default: false
|
|
matrix_bridges_msc4190_enabled: false
|
|
matrix_bridges_self_sign_enabled: false
|
|
matrix_bridges_relay_enabled: false
|
|
|
|
matrix_bridges_exposure_enabled: true
|
|
matrix_bridges_exposure_hostname: molecule.local
|
|
matrix_bridges_exposure_path_prefix: /bridges
|
|
|
|
# --- Public hostnames (matrix-base) ----------------------------------------
|
|
#
|
|
# 18 of the roles here read one of these. Rendered against the scenario's
|
|
# matrix_domain rather than left as Jinja, so a scenario can read them in
|
|
# verify.yml without the role's defaults being in scope.
|
|
|
|
matrix_server_fqn_matrix: matrix.molecule.local
|
|
matrix_server_fqn_matrix_federation: matrix.molecule.local
|
|
matrix_server_fqn_element: element.molecule.local
|
|
matrix_server_fqn_hydrogen: hydrogen.molecule.local
|
|
matrix_server_fqn_cinny: cinny.molecule.local
|
|
matrix_server_fqn_sable: sable.molecule.local
|
|
matrix_server_fqn_schildichat: schildichat.molecule.local
|
|
matrix_server_fqn_fluffychat: fluffychat.molecule.local
|
|
matrix_server_fqn_buscarron: buscarron.molecule.local
|
|
matrix_server_fqn_etherpad: etherpad.molecule.local
|
|
matrix_server_fqn_jitsi: jitsi.molecule.local
|
|
matrix_server_fqn_grafana: stats.molecule.local
|
|
matrix_server_fqn_sygnal: sygnal.molecule.local
|
|
matrix_server_fqn_mautrix_wsproxy: wsproxy.molecule.local
|
|
matrix_server_fqn_ntfy: ntfy.molecule.local
|
|
matrix_server_fqn_rageshake: rageshake.molecule.local
|
|
matrix_server_fqn_matrixto: mt.molecule.local
|