More ansible-lint fixes

development
Slavi Pantaleev 2 years ago
parent 983bf819ef
commit d073c7ecb3

@ -22,16 +22,16 @@ matrix_identity_server_url: "{{ ('https://' + matrix_server_fqn_matrix) if matri
matrix_homeserver_container_url: |- matrix_homeserver_container_url: |-
{{ {{
'http://matrix-nginx-proxy:12080' if matrix_nginx_proxy_enabled else { 'http://matrix-nginx-proxy:12080' if matrix_nginx_proxy_enabled else {
'synapse': ('http://matrix-synapse:'+ matrix_synapse_container_client_api_port|string), 'synapse': ('http://matrix-synapse:'+ matrix_synapse_container_client_api_port | string),
'dendrite': ('http://matrix-dendrite:' + matrix_dendrite_http_bind_port|string), 'dendrite': ('http://matrix-dendrite:' + matrix_dendrite_http_bind_port | string),
}[matrix_homeserver_implementation] }[matrix_homeserver_implementation]
}} }}
matrix_homeserver_container_federation_url: |- matrix_homeserver_container_federation_url: |-
{{ {{
'http://matrix-nginx-proxy:12088' if matrix_nginx_proxy_enabled else { 'http://matrix-nginx-proxy:12088' if matrix_nginx_proxy_enabled else {
'synapse': ('http://matrix-synapse:'+ matrix_synapse_container_federation_api_plain_port|string), 'synapse': ('http://matrix-synapse:'+ matrix_synapse_container_federation_api_plain_port | string),
'dendrite': ('http://matrix-dendrite:' + matrix_dendrite_http_bind_port|string), 'dendrite': ('http://matrix-dendrite:' + matrix_dendrite_http_bind_port | string),
}[matrix_homeserver_implementation] }[matrix_homeserver_implementation]
}} }}
@ -1158,7 +1158,7 @@ matrix_backup_borg_postgresql_databases: |
'name': matrix_synapse_database_database 'name': matrix_synapse_database_database
}] if (matrix_synapse_enabled and matrix_synapse_database_database == matrix_postgres_db_name and matrix_synapse_database_host == 'matrix-postgres') else []) }] if (matrix_synapse_enabled and matrix_synapse_database_database == matrix_postgres_db_name and matrix_synapse_database_host == 'matrix-postgres') else [])
+ +
matrix_postgres_additional_databases)|map(attribute='name')|list matrix_postgres_additional_databases)|map(attribute='name') | list
}} }}
matrix_backup_borg_location_source_directories: matrix_backup_borg_location_source_directories:
- "{{ matrix_base_data_path }}" - "{{ matrix_base_data_path }}"
@ -1431,7 +1431,7 @@ matrix_ma1sd_container_image_self_build: "{{ matrix_architecture != 'amd64' }}"
# Normally, matrix-nginx-proxy is enabled and nginx can reach ma1sd over the container network. # Normally, matrix-nginx-proxy is enabled and nginx can reach ma1sd over the container network.
# If matrix-nginx-proxy is not enabled, or you otherwise have a need for it, you can expose # If matrix-nginx-proxy is not enabled, or you otherwise have a need for it, you can expose
# ma1sd's web-server port. # ma1sd's web-server port.
matrix_ma1sd_container_http_host_bind_port: "{{ '' if matrix_nginx_proxy_enabled else '127.0.0.1:' + matrix_ma1sd_container_port|string }}" matrix_ma1sd_container_http_host_bind_port: "{{ '' if matrix_nginx_proxy_enabled else '127.0.0.1:' + matrix_ma1sd_container_port | string }}"
# We enable Synapse integration via its Postgres database by default. # We enable Synapse integration via its Postgres database by default.
@ -1540,14 +1540,14 @@ matrix_nginx_proxy_proxy_matrix_federation_api_addr_sans_container: "127.0.0.1:1
matrix_nginx_proxy_proxy_synapse_enabled: "{{ matrix_synapse_enabled }}" matrix_nginx_proxy_proxy_synapse_enabled: "{{ matrix_synapse_enabled }}"
matrix_nginx_proxy_proxy_synapse_client_api_addr_with_container: "matrix-synapse:{{ matrix_synapse_container_client_api_port }}" matrix_nginx_proxy_proxy_synapse_client_api_addr_with_container: "matrix-synapse:{{ matrix_synapse_container_client_api_port }}"
matrix_nginx_proxy_proxy_synapse_client_api_addr_sans_container: "127.0.0.1:{{ matrix_synapse_container_client_api_port }}" matrix_nginx_proxy_proxy_synapse_client_api_addr_sans_container: "127.0.0.1:{{ matrix_synapse_container_client_api_port }}"
matrix_nginx_proxy_proxy_synapse_federation_api_addr_with_container: "matrix-synapse:{{matrix_synapse_container_federation_api_plain_port|string}}" matrix_nginx_proxy_proxy_synapse_federation_api_addr_with_container: "matrix-synapse:{{matrix_synapse_container_federation_api_plain_port | string}}"
matrix_nginx_proxy_proxy_synapse_federation_api_addr_sans_container: "127.0.0.1:{{matrix_synapse_container_federation_api_plain_port|string}}" matrix_nginx_proxy_proxy_synapse_federation_api_addr_sans_container: "127.0.0.1:{{matrix_synapse_container_federation_api_plain_port | string}}"
matrix_nginx_proxy_proxy_dendrite_enabled: "{{ matrix_dendrite_enabled }}" matrix_nginx_proxy_proxy_dendrite_enabled: "{{ matrix_dendrite_enabled }}"
matrix_nginx_proxy_proxy_dendrite_client_api_addr_with_container: "matrix-dendrite:{{ matrix_dendrite_http_bind_port|string }}" matrix_nginx_proxy_proxy_dendrite_client_api_addr_with_container: "matrix-dendrite:{{ matrix_dendrite_http_bind_port | string }}"
matrix_nginx_proxy_proxy_dendrite_client_api_addr_sans_container: "127.0.0.1:{{ matrix_dendrite_http_bind_port|string }}" matrix_nginx_proxy_proxy_dendrite_client_api_addr_sans_container: "127.0.0.1:{{ matrix_dendrite_http_bind_port | string }}"
matrix_nginx_proxy_proxy_dendrite_federation_api_addr_with_container: "matrix-dendrite:{{ matrix_dendrite_http_bind_port|string }}" matrix_nginx_proxy_proxy_dendrite_federation_api_addr_with_container: "matrix-dendrite:{{ matrix_dendrite_http_bind_port | string }}"
matrix_nginx_proxy_proxy_dendrite_federation_api_addr_sans_container: "127.0.0.1:{{ matrix_dendrite_http_bind_port|string }}" matrix_nginx_proxy_proxy_dendrite_federation_api_addr_sans_container: "127.0.0.1:{{ matrix_dendrite_http_bind_port | string }}"
# When matrix-nginx-proxy is disabled, the actual port number that the vhost uses may begin to matter. # When matrix-nginx-proxy is disabled, the actual port number that the vhost uses may begin to matter.
matrix_nginx_proxy_proxy_matrix_federation_port: "{{ matrix_federation_public_port }}" matrix_nginx_proxy_proxy_matrix_federation_port: "{{ matrix_federation_public_port }}"
@ -1885,14 +1885,14 @@ matrix_postgres_import_roles_to_ignore: |
{{ {{
[matrix_postgres_connection_username] [matrix_postgres_connection_username]
+ +
matrix_postgres_additional_databases|map(attribute='username')|list matrix_postgres_additional_databases|map(attribute='username') | list
}} }}
matrix_postgres_import_databases_to_ignore: | matrix_postgres_import_databases_to_ignore: |
{{ {{
[matrix_postgres_db_name] [matrix_postgres_db_name]
+ +
matrix_postgres_additional_databases|map(attribute='name')|list matrix_postgres_additional_databases|map(attribute='name') | list
}} }}
###################################################################### ######################################################################
@ -2058,18 +2058,18 @@ matrix_synapse_container_image_self_build: "{{ matrix_architecture not in ['arm6
# When ma1sd is enabled, we can use it to validate email addresses and phone numbers. # When ma1sd is enabled, we can use it to validate email addresses and phone numbers.
# Synapse can validate email addresses by itself as well, but it's probably not what we want by default when we have an identity server. # Synapse can validate email addresses by itself as well, but it's probably not what we want by default when we have an identity server.
matrix_synapse_account_threepid_delegates_email: "{{ 'http://matrix-ma1sd:' + matrix_ma1sd_container_port|string if matrix_ma1sd_enabled else '' }}" matrix_synapse_account_threepid_delegates_email: "{{ 'http://matrix-ma1sd:' + matrix_ma1sd_container_port | string if matrix_ma1sd_enabled else '' }}"
matrix_synapse_account_threepid_delegates_msisdn: "{{ 'http://matrix-ma1sd:' + matrix_ma1sd_container_port|string if matrix_ma1sd_enabled else '' }}" matrix_synapse_account_threepid_delegates_msisdn: "{{ 'http://matrix-ma1sd:' + matrix_ma1sd_container_port | string if matrix_ma1sd_enabled else '' }}"
# Normally, matrix-nginx-proxy is enabled and nginx can reach Synapse over the container network. # Normally, matrix-nginx-proxy is enabled and nginx can reach Synapse over the container network.
# If matrix-nginx-proxy is not enabled, or you otherwise have a need for it, # If matrix-nginx-proxy is not enabled, or you otherwise have a need for it,
# you can expose Synapse's ports to the host. # you can expose Synapse's ports to the host.
# #
# For exposing the Matrix Client API's port (plain HTTP) to the local host. # For exposing the Matrix Client API's port (plain HTTP) to the local host.
matrix_synapse_container_client_api_host_bind_port: "{{ '' if matrix_nginx_proxy_enabled else '127.0.0.1:' + matrix_synapse_container_client_api_port|string }}" matrix_synapse_container_client_api_host_bind_port: "{{ '' if matrix_nginx_proxy_enabled else '127.0.0.1:' + matrix_synapse_container_client_api_port | string }}"
# #
# For exposing the Matrix Federation API's plain port (plain HTTP) to the local host. # For exposing the Matrix Federation API's plain port (plain HTTP) to the local host.
matrix_synapse_container_federation_api_plain_host_bind_port: "{{ '' if matrix_nginx_proxy_enabled else '127.0.0.1:' + matrix_synapse_container_federation_api_plain_port|string }}" matrix_synapse_container_federation_api_plain_host_bind_port: "{{ '' if matrix_nginx_proxy_enabled else '127.0.0.1:' + matrix_synapse_container_federation_api_plain_port | string }}"
# #
# For exposing the Matrix Federation API's TLS port (HTTPS) to the internet on all network interfaces. # For exposing the Matrix Federation API's TLS port (HTTPS) to the internet on all network interfaces.
matrix_synapse_container_federation_api_tls_host_bind_port: "{{ matrix_federation_public_port if (matrix_synapse_federation_enabled and matrix_synapse_tls_federation_listener_enabled) else '' }}" matrix_synapse_container_federation_api_tls_host_bind_port: "{{ matrix_federation_public_port if (matrix_synapse_federation_enabled and matrix_synapse_tls_federation_listener_enabled) else '' }}"
@ -2213,10 +2213,10 @@ matrix_prometheus_scraper_node_enabled: "{{ matrix_prometheus_node_exporter_enab
matrix_prometheus_scraper_node_targets: "{{ ['matrix-prometheus-node-exporter:9100'] if matrix_prometheus_node_exporter_enabled else [] }}" matrix_prometheus_scraper_node_targets: "{{ ['matrix-prometheus-node-exporter:9100'] if matrix_prometheus_node_exporter_enabled else [] }}"
matrix_prometheus_scraper_postgres_enabled: "{{ matrix_prometheus_postgres_exporter_enabled }}" matrix_prometheus_scraper_postgres_enabled: "{{ matrix_prometheus_postgres_exporter_enabled }}"
matrix_prometheus_scraper_postgres_targets: "{{ ['matrix-prometheus-postgres-exporter:'+ matrix_prometheus_postgres_exporter_port|string] if matrix_prometheus_scraper_postgres_enabled else [] }}" matrix_prometheus_scraper_postgres_targets: "{{ ['matrix-prometheus-postgres-exporter:'+ matrix_prometheus_postgres_exporter_port | string] if matrix_prometheus_scraper_postgres_enabled else [] }}"
matrix_prometheus_scraper_hookshot_enabled: "{{ matrix_hookshot_metrics_enabled|default(false) }}" matrix_prometheus_scraper_hookshot_enabled: "{{ matrix_hookshot_metrics_enabled|default(false) }}"
matrix_prometheus_scraper_hookshot_targets: "{{ [matrix_hookshot_container_url|string +':'+ matrix_hookshot_metrics_port|string] if matrix_hookshot_metrics_enabled else [] }}" matrix_prometheus_scraper_hookshot_targets: "{{ [matrix_hookshot_container_url | string +':'+ matrix_hookshot_metrics_port | string] if matrix_hookshot_metrics_enabled else [] }}"
###################################################################### ######################################################################
# #
@ -2345,7 +2345,7 @@ matrix_postgres_backup_databases: |
'name': matrix_synapse_database_database 'name': matrix_synapse_database_database
}] if (matrix_synapse_enabled and matrix_synapse_database_database == matrix_postgres_db_name and matrix_synapse_database_host == 'matrix-postgres') else []) }] if (matrix_synapse_enabled and matrix_synapse_database_database == matrix_postgres_db_name and matrix_synapse_database_host == 'matrix-postgres') else [])
+ +
matrix_postgres_additional_databases)|map(attribute='name')|list matrix_postgres_additional_databases)|map(attribute='name') | list
}} }}
###################################################################### ######################################################################
@ -2367,10 +2367,10 @@ matrix_dendrite_enabled: "{{ matrix_homeserver_implementation == 'dendrite' }}"
# you can expose Dendrite's ports to the host. # you can expose Dendrite's ports to the host.
# #
# For exposing Dendrite's plain HTTP server to the local host. # For exposing Dendrite's plain HTTP server to the local host.
matrix_dendrite_container_http_host_bind_address: "{{ '' if matrix_nginx_proxy_enabled else ('127.0.0.1:' + matrix_dendrite_http_bind_port|string) }}" matrix_dendrite_container_http_host_bind_address: "{{ '' if matrix_nginx_proxy_enabled else ('127.0.0.1:' + matrix_dendrite_http_bind_port | string) }}"
# #
# For exposing Dendrite's HTTPS server to the local host. # For exposing Dendrite's HTTPS server to the local host.
matrix_dendrite_container_https_host_bind_address: "{{ '' if matrix_nginx_proxy_enabled or not matrix_dendrite_https_bind_port else ('127.0.0.1:' + matrix_dendrite_https_bind_port|string) }}" matrix_dendrite_container_https_host_bind_address: "{{ '' if matrix_nginx_proxy_enabled or not matrix_dendrite_https_bind_port else ('127.0.0.1:' + matrix_dendrite_https_bind_port | string) }}"
matrix_dendrite_sync_api_real_ip_header: "{{ 'X-Forwarded-For' if matrix_nginx_proxy_enabled else '' }}" matrix_dendrite_sync_api_real_ip_header: "{{ 'X-Forwarded-For' if matrix_nginx_proxy_enabled else '' }}"

@ -97,4 +97,4 @@ matrix_backup_borg_configuration_extension: "{{ matrix_backup_borg_configuration
# Holds the final borgmatic configuration (a combination of the default and its extension). # Holds the final borgmatic configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_backup_borg_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_backup_borg_configuration_yaml`.
matrix_backup_borg_configuration: "{{ matrix_backup_borg_configuration_yaml | from_yaml|combine(matrix_backup_borg_configuration_extension, recursive=True) }}" matrix_backup_borg_configuration: "{{ matrix_backup_borg_configuration_yaml | from_yaml | combine(matrix_backup_borg_configuration_extension, recursive=True) }}"

@ -134,8 +134,8 @@ matrix_host_command_openssl: "/usr/bin/env openssl"
matrix_host_command_systemctl: "/usr/bin/env systemctl" matrix_host_command_systemctl: "/usr/bin/env systemctl"
matrix_host_command_sh: "/usr/bin/env sh" matrix_host_command_sh: "/usr/bin/env sh"
matrix_ntpd_package: "{{ 'systemd-timesyncd' if (ansible_os_family == 'RedHat' and ansible_distribution_major_version|int > 7) or (ansible_distribution == 'Ubuntu' and ansible_distribution_major_version|int > 18) else ( 'systemd' if ansible_os_family == 'Suse' else 'ntp' ) }}" matrix_ntpd_package: "{{ 'systemd-timesyncd' if (ansible_os_family == 'RedHat' and ansible_distribution_major_version | int > 7) or (ansible_distribution == 'Ubuntu' and ansible_distribution_major_version | int > 18) else ( 'systemd' if ansible_os_family == 'Suse' else 'ntp' ) }}"
matrix_ntpd_service: "{{ 'systemd-timesyncd' if (ansible_os_family == 'RedHat' and ansible_distribution_major_version|int > 7) or (ansible_distribution == 'Ubuntu' and ansible_distribution_major_version|int > 18) or ansible_distribution == 'Archlinux' or ansible_os_family == 'Suse' else ('ntpd' if ansible_os_family == 'RedHat' else 'ntp') }}" matrix_ntpd_service: "{{ 'systemd-timesyncd' if (ansible_os_family == 'RedHat' and ansible_distribution_major_version | int > 7) or (ansible_distribution == 'Ubuntu' and ansible_distribution_major_version | int > 18) or ansible_distribution == 'Archlinux' or ansible_os_family == 'Suse' else ('ntpd' if ansible_os_family == 'RedHat' else 'ntp') }}"
matrix_homeserver_url: "https://{{ matrix_server_fqn_matrix }}" matrix_homeserver_url: "https://{{ matrix_server_fqn_matrix }}"
@ -202,11 +202,11 @@ matrix_well_known_matrix_client_configuration_default: "{{ lookup('template', 't
# } # }
matrix_well_known_matrix_client_configuration_extension_json: '{}' matrix_well_known_matrix_client_configuration_extension_json: '{}'
matrix_well_known_matrix_client_configuration_extension: "{{ matrix_well_known_matrix_client_configuration_extension_json|from_json if matrix_well_known_matrix_client_configuration_extension_json|from_json is mapping else {} }}" matrix_well_known_matrix_client_configuration_extension: "{{ matrix_well_known_matrix_client_configuration_extension_json | from_json if matrix_well_known_matrix_client_configuration_extension_json | from_json is mapping else {} }}"
# Holds the final `/.well-known/matrix/client` configuration (a combination of the default and its extension). # Holds the final `/.well-known/matrix/client` configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_well_known_matrix_client_configuration_default` and `matrix_well_known_matrix_client_configuration_extension_json`. # You most likely don't need to touch this variable. Instead, see `matrix_well_known_matrix_client_configuration_default` and `matrix_well_known_matrix_client_configuration_extension_json`.
matrix_well_known_matrix_client_configuration: "{{ matrix_well_known_matrix_client_configuration_default|combine(matrix_well_known_matrix_client_configuration_extension, recursive=True) }}" matrix_well_known_matrix_client_configuration: "{{ matrix_well_known_matrix_client_configuration_default | combine(matrix_well_known_matrix_client_configuration_extension, recursive=True) }}"
# Default `/.well-known/matrix/server` configuration - it covers the generic use case. # Default `/.well-known/matrix/server` configuration - it covers the generic use case.
# You can customize it by controlling the various variables inside the template file that it references. # You can customize it by controlling the various variables inside the template file that it references.
@ -234,11 +234,11 @@ matrix_well_known_matrix_server_configuration_default: "{{ lookup('template', 't
# } # }
matrix_well_known_matrix_server_configuration_extension_json: '{}' matrix_well_known_matrix_server_configuration_extension_json: '{}'
matrix_well_known_matrix_server_configuration_extension: "{{ matrix_well_known_matrix_server_configuration_extension_json|from_json if matrix_well_known_matrix_server_configuration_extension_json|from_json is mapping else {} }}" matrix_well_known_matrix_server_configuration_extension: "{{ matrix_well_known_matrix_server_configuration_extension_json | from_json if matrix_well_known_matrix_server_configuration_extension_json | from_json is mapping else {} }}"
# Holds the final `/.well-known/matrix/server` configuration (a combination of the default and its extension). # Holds the final `/.well-known/matrix/server` configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_well_known_matrix_server_configuration_default` and `matrix_well_known_matrix_server_configuration_extension_json`. # You most likely don't need to touch this variable. Instead, see `matrix_well_known_matrix_server_configuration_default` and `matrix_well_known_matrix_server_configuration_extension_json`.
matrix_well_known_matrix_server_configuration: "{{ matrix_well_known_matrix_server_configuration_default|combine(matrix_well_known_matrix_server_configuration_extension, recursive=True) }}" matrix_well_known_matrix_server_configuration: "{{ matrix_well_known_matrix_server_configuration_default | combine(matrix_well_known_matrix_server_configuration_extension, recursive=True) }}"
# The side-effect of this lookup is that Ansible would even parse the JSON for us, returning a dict. # The side-effect of this lookup is that Ansible would even parse the JSON for us, returning a dict.
# This is unlike what it does when looking up YAML template files (no automatic parsing there). # This is unlike what it does when looking up YAML template files (no automatic parsing there).

@ -64,7 +64,7 @@
- "{{ matrix_domain }}" - "{{ matrix_domain }}"
- "{{ matrix_server_fqn_matrix }}" - "{{ matrix_server_fqn_matrix }}"
- "{{ matrix_server_fqn_element }}" - "{{ matrix_server_fqn_element }}"
when: "item != item|lower" when: "item != item | lower"
- name: Fail if using python2 on Archlinux - name: Fail if using python2 on Archlinux
ansible.builtin.fail: ansible.builtin.fail:

@ -1,13 +1,13 @@
--- ---
- ansible.builtin.include_tasks: "{{ role_path }}/tasks/server_base/setup_redhat.yml" - ansible.builtin.include_tasks: "{{ role_path }}/tasks/server_base/setup_redhat.yml"
when: ansible_os_family == 'RedHat' and ansible_distribution_major_version|int < 8 when: ansible_os_family == 'RedHat' and ansible_distribution_major_version | int < 8
- ansible.builtin.include_tasks: "{{ role_path }}/tasks/server_base/setup_redhat8.yml" - ansible.builtin.include_tasks: "{{ role_path }}/tasks/server_base/setup_redhat8.yml"
when: ansible_os_family == 'RedHat' and ansible_distribution_major_version|int > 7 and ansible_distribution_major_version|int < 30 when: ansible_os_family == 'RedHat' and ansible_distribution_major_version | int > 7 and ansible_distribution_major_version | int < 30
- ansible.builtin.include_tasks: "{{ role_path }}/tasks/server_base/setup_fedora.yml" - ansible.builtin.include_tasks: "{{ role_path }}/tasks/server_base/setup_fedora.yml"
when: ansible_os_family == 'RedHat' and ansible_distribution_major_version|int > 30 when: ansible_os_family == 'RedHat' and ansible_distribution_major_version | int > 30
- block: - block:
# ansible_lsb is only available if lsb-release is installed. # ansible_lsb is only available if lsb-release is installed.
@ -20,7 +20,7 @@
register: lsb_release_installation_result register: lsb_release_installation_result
- name: Reread ansible_lsb facts if lsb-release got installed - name: Reread ansible_lsb facts if lsb-release got installed
setup: filter=ansible_lsb* ansible.builtin.setup: filter=ansible_lsb*
when: lsb_release_installation_result.changed when: lsb_release_installation_result.changed
- ansible.builtin.include_tasks: "{{ role_path }}/tasks/server_base/setup_debian.yml" - ansible.builtin.include_tasks: "{{ role_path }}/tasks/server_base/setup_debian.yml"

@ -10,8 +10,8 @@
update_cache: true update_cache: true
- name: Ensure Docker's APT key is trusted - name: Ensure Docker's APT key is trusted
apt_key: ansible.builtin.apt_key:
url: "https://download.docker.com/linux/{{ ansible_distribution|lower }}/gpg" url: "https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg"
id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88 id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
state: present state: present
register: add_repository_key register: add_repository_key
@ -19,8 +19,8 @@
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'
- name: Ensure Docker repository is enabled - name: Ensure Docker repository is enabled
apt_repository: ansible.builtin.apt_repository:
repo: "deb [arch={{ matrix_debian_arch }}] https://download.docker.com/linux/{{ ansible_distribution|lower }} {{ ansible_distribution_release }} stable" repo: "deb [arch={{ matrix_debian_arch }}] https://download.docker.com/linux/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} stable"
state: present state: present
update_cache: true update_cache: true
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'
@ -36,6 +36,6 @@
ansible.builtin.apt: ansible.builtin.apt:
name: name:
- "{{ matrix_docker_package_name }}" - "{{ matrix_docker_package_name }}"
- "python{{'3' if ansible_python.version.major == 3 else ''}}-docker" - "python{{ '3' if ansible_python.version.major == 3 else '' }}-docker"
state: latest state: latest
when: matrix_docker_installation_enabled | bool when: matrix_docker_installation_enabled | bool

@ -12,7 +12,7 @@
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'
- name: Ensure Docker's RPM key is trusted - name: Ensure Docker's RPM key is trusted
rpm_key: ansible.builtin.rpm_key:
state: present state: present
key: https://download.docker.com/linux/fedora/gpg key: https://download.docker.com/linux/fedora/gpg
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'
@ -33,7 +33,7 @@
when: matrix_docker_installation_enabled | bool when: matrix_docker_installation_enabled | bool
- name: Ensure Docker-Py is installed - name: Ensure Docker-Py is installed
pip: ansible.builtin.pip:
name: docker-py name: docker-py
state: latest state: latest
when: matrix_docker_installation_enabled | bool when: matrix_docker_installation_enabled | bool

@ -10,7 +10,7 @@
update_cache: true update_cache: true
- name: Ensure Docker's APT key is trusted - name: Ensure Docker's APT key is trusted
apt_key: ansible.builtin.apt_key:
url: https://download.docker.com/linux/raspbian/gpg url: https://download.docker.com/linux/raspbian/gpg
id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88 id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
state: present state: present
@ -19,7 +19,7 @@
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'
- name: Ensure Docker repository is enabled - name: Ensure Docker repository is enabled
apt_repository: ansible.builtin.apt_repository:
repo: "deb [arch={{ matrix_debian_arch }}] https://download.docker.com/linux/raspbian {{ ansible_distribution_release }} stable" repo: "deb [arch={{ matrix_debian_arch }}] https://download.docker.com/linux/raspbian {{ ansible_distribution_release }} stable"
state: present state: present
update_cache: true update_cache: true

@ -10,7 +10,7 @@
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'
- name: Ensure Docker's RPM key is trusted - name: Ensure Docker's RPM key is trusted
rpm_key: ansible.builtin.rpm_key:
state: present state: present
key: https://download.docker.com/linux/centos/gpg key: https://download.docker.com/linux/centos/gpg
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'

@ -10,7 +10,7 @@
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'
- name: Ensure Docker's RPM key is trusted - name: Ensure Docker's RPM key is trusted
rpm_key: ansible.builtin.rpm_key:
state: present state: present
key: https://download.docker.com/linux/centos/gpg key: https://download.docker.com/linux/centos/gpg
when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce' when: matrix_docker_installation_enabled | bool and matrix_docker_package_name == 'docker-ce'
@ -38,7 +38,7 @@
when: matrix_docker_installation_enabled | bool when: matrix_docker_installation_enabled | bool
- name: Ensure Docker-Py is installed - name: Ensure Docker-Py is installed
pip: ansible.builtin.pip:
name: docker-py name: docker-py
state: latest state: latest
when: matrix_docker_installation_enabled | bool when: matrix_docker_installation_enabled | bool

@ -228,4 +228,4 @@ matrix_bot_go_neb_configuration_extension: "{{ matrix_bot_go_neb_configuration_e
# Holds the final configuration (a combination of the default and its extension). # 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_bot_go_neb_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_bot_go_neb_configuration_yaml`.
matrix_bot_go_neb_configuration: "{{ matrix_bot_go_neb_configuration_yaml | from_yaml|combine(matrix_bot_go_neb_configuration_extension, recursive=True) }}" matrix_bot_go_neb_configuration: "{{ matrix_bot_go_neb_configuration_yaml | from_yaml | combine(matrix_bot_go_neb_configuration_extension, recursive=True) }}"

@ -97,4 +97,4 @@ matrix_bot_matrix_reminder_bot_configuration_extension: "{{ matrix_bot_matrix_re
# Holds the final configuration (a combination of the default and its extension). # 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_bot_matrix_reminder_bot_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_bot_matrix_reminder_bot_configuration_yaml`.
matrix_bot_matrix_reminder_bot_configuration: "{{ matrix_bot_matrix_reminder_bot_configuration_yaml | from_yaml|combine(matrix_bot_matrix_reminder_bot_configuration_extension, recursive=True) }}" matrix_bot_matrix_reminder_bot_configuration: "{{ matrix_bot_matrix_reminder_bot_configuration_yaml | from_yaml | combine(matrix_bot_matrix_reminder_bot_configuration_extension, recursive=True) }}"

@ -56,4 +56,4 @@ matrix_bot_mjolnir_configuration_extension: "{{ matrix_bot_mjolnir_configuration
# Holds the final configuration (a combination of the default and its extension). # 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_bot_mjolnir_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_bot_mjolnir_configuration_yaml`.
matrix_bot_mjolnir_configuration: "{{ matrix_bot_mjolnir_configuration_yaml | from_yaml|combine(matrix_bot_mjolnir_configuration_extension, recursive=True) }}" matrix_bot_mjolnir_configuration: "{{ matrix_bot_mjolnir_configuration_yaml | from_yaml | combine(matrix_bot_mjolnir_configuration_extension, recursive=True) }}"

@ -89,7 +89,7 @@ matrix_appservice_discord_configuration_extension_yaml: |
matrix_appservice_discord_configuration_extension: "{{ matrix_appservice_discord_configuration_extension_yaml | from_yaml if matrix_appservice_discord_configuration_extension_yaml | from_yaml is mapping else {} }}" matrix_appservice_discord_configuration_extension: "{{ matrix_appservice_discord_configuration_extension_yaml | from_yaml if matrix_appservice_discord_configuration_extension_yaml | from_yaml is mapping else {} }}"
matrix_appservice_discord_configuration: "{{ matrix_appservice_discord_configuration_yaml | from_yaml|combine(matrix_appservice_discord_configuration_extension, recursive=True) }}" matrix_appservice_discord_configuration: "{{ matrix_appservice_discord_configuration_yaml | from_yaml | combine(matrix_appservice_discord_configuration_extension, recursive=True) }}"
matrix_appservice_discord_registration_yaml: | matrix_appservice_discord_registration_yaml: |
#jinja2: lstrip_blocks: "True" #jinja2: lstrip_blocks: "True"
@ -99,10 +99,10 @@ matrix_appservice_discord_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '@_discord_.*:{{ matrix_appservice_discord_homeserver_domain|regex_escape }}' regex: '@_discord_.*:{{ matrix_appservice_discord_homeserver_domain | regex_escape }}'
aliases: aliases:
- exclusive: true - exclusive: true
regex: '#_discord_.*:{{ matrix_appservice_discord_homeserver_domain|regex_escape }}' regex: '#_discord_.*:{{ matrix_appservice_discord_homeserver_domain | regex_escape }}'
url: {{ matrix_appservice_discord_appservice_url }} url: {{ matrix_appservice_discord_appservice_url }}
sender_localpart: _discord_bot sender_localpart: _discord_bot
rate_limited: false rate_limited: false

@ -34,7 +34,7 @@ bridge:
determineCodeLanguage: false determineCodeLanguage: false
# Authentication configuration for the discord bot. # Authentication configuration for the discord bot.
auth: auth:
clientID: {{ matrix_appservice_discord_client_id|string|to_json }} clientID: {{ matrix_appservice_discord_client_id | string|to_json }}
botToken: {{ matrix_appservice_discord_bot_token|to_json }} botToken: {{ matrix_appservice_discord_bot_token|to_json }}
# You must enable "Privileged Gateway Intents" in your bot settings on discord.com (e.g. https://discord.com/developers/applications/12345/bot) # You must enable "Privileged Gateway Intents" in your bot settings on discord.com (e.g. https://discord.com/developers/applications/12345/bot)
# for this to work # for this to work

@ -384,7 +384,7 @@ matrix_appservice_irc_configuration_extension_yaml: |
matrix_appservice_irc_configuration_extension: "{{ matrix_appservice_irc_configuration_extension_yaml | from_yaml if matrix_appservice_irc_configuration_extension_yaml | from_yaml is mapping else {} }}" matrix_appservice_irc_configuration_extension: "{{ matrix_appservice_irc_configuration_extension_yaml | from_yaml if matrix_appservice_irc_configuration_extension_yaml | from_yaml is mapping else {} }}"
matrix_appservice_irc_configuration: "{{ matrix_appservice_irc_configuration_yaml | from_yaml|combine(matrix_appservice_irc_configuration_extension, recursive=True) }}" matrix_appservice_irc_configuration: "{{ matrix_appservice_irc_configuration_yaml | from_yaml | combine(matrix_appservice_irc_configuration_extension, recursive=True) }}"
# The original registration.yaml file generated by AppService IRC is merged with this config override, # The original registration.yaml file generated by AppService IRC is merged with this config override,
# to produce the final registration.yaml file ultimately used by both the bridge and the homeserver. # to produce the final registration.yaml file ultimately used by both the bridge and the homeserver.

@ -173,7 +173,7 @@
- name: Combine registration-template.yaml and own registration override config - name: Combine registration-template.yaml and own registration override config
ansible.builtin.set_fact: ansible.builtin.set_fact:
matrix_appservice_irc_registration: "{{ matrix_appservice_irc_registration_template|combine(matrix_appservice_irc_registration_override, recursive=True) }}" matrix_appservice_irc_registration: "{{ matrix_appservice_irc_registration_template | combine(matrix_appservice_irc_registration_override, recursive=True) }}"
- name: Ensure Appservice IRC registration.yaml installed - name: Ensure Appservice IRC registration.yaml installed
ansible.builtin.copy: ansible.builtin.copy:

@ -97,7 +97,7 @@ matrix_appservice_slack_configuration_extension_yaml: |
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_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_configuration: "{{ matrix_appservice_slack_configuration_yaml | from_yaml | combine(matrix_appservice_slack_configuration_extension, recursive=True) }}"
matrix_appservice_slack_registration_yaml: | matrix_appservice_slack_registration_yaml: |
id: "{{ matrix_appservice_slack_id_token }}" id: "{{ matrix_appservice_slack_id_token }}"

@ -63,7 +63,7 @@ matrix_appservice_webhooks_configuration_extension_yaml: |
matrix_appservice_webhooks_configuration_extension: "{{ matrix_appservice_webhooks_configuration_extension_yaml | from_yaml if matrix_appservice_webhooks_configuration_extension_yaml | from_yaml else {} }}" matrix_appservice_webhooks_configuration_extension: "{{ matrix_appservice_webhooks_configuration_extension_yaml | from_yaml if matrix_appservice_webhooks_configuration_extension_yaml | from_yaml else {} }}"
matrix_appservice_webhooks_configuration: "{{ matrix_appservice_webhooks_configuration_yaml | from_yaml|combine(matrix_appservice_webhooks_configuration_extension, recursive=True) }}" matrix_appservice_webhooks_configuration: "{{ matrix_appservice_webhooks_configuration_yaml | from_yaml | combine(matrix_appservice_webhooks_configuration_extension, recursive=True) }}"
matrix_appservice_webhooks_registration_yaml: | matrix_appservice_webhooks_registration_yaml: |
id: "{{ matrix_appservice_webhooks_id_token }}" id: "{{ matrix_appservice_webhooks_id_token }}"

@ -92,7 +92,7 @@ matrix_beeper_linkedin_configuration_extension: "{{ matrix_beeper_linkedin_confi
# Holds the final configuration (a combination of the default and its extension). # 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_beeper_linkedin_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_beeper_linkedin_configuration_yaml`.
matrix_beeper_linkedin_configuration: "{{ matrix_beeper_linkedin_configuration_yaml | from_yaml|combine(matrix_beeper_linkedin_configuration_extension, recursive=True) }}" matrix_beeper_linkedin_configuration: "{{ matrix_beeper_linkedin_configuration_yaml | from_yaml | combine(matrix_beeper_linkedin_configuration_extension, recursive=True) }}"
matrix_beeper_linkedin_registration_yaml: | matrix_beeper_linkedin_registration_yaml: |
id: linkedin id: linkedin
@ -104,10 +104,10 @@ matrix_beeper_linkedin_registration_yaml: |
rate_limited: false rate_limited: false
namespaces: namespaces:
users: users:
- regex: '^@linkedin_.+:{{ matrix_beeper_linkedin_homeserver_domain|regex_escape }}$' - regex: '^@linkedin_.+:{{ matrix_beeper_linkedin_homeserver_domain | regex_escape }}$'
exclusive: true exclusive: true
- exclusive: true - exclusive: true
regex: '^@{{ matrix_beeper_linkedin_appservice_bot_username|regex_escape }}:{{ matrix_beeper_linkedin_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_beeper_linkedin_appservice_bot_username | regex_escape }}:{{ matrix_beeper_linkedin_homeserver_domain | regex_escape }}$'
de.sorunome.msc2409.push_ephemeral: true de.sorunome.msc2409.push_ephemeral: true
matrix_beeper_linkedin_registration: "{{ matrix_beeper_linkedin_registration_yaml | from_yaml }}" matrix_beeper_linkedin_registration: "{{ matrix_beeper_linkedin_registration_yaml | from_yaml }}"

@ -105,7 +105,7 @@ matrix_go_skype_bridge_configuration_extension: "{{ matrix_go_skype_bridge_confi
# Holds the final configuration (a combination of the default and its extension). # 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_go_skype_bridge_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_go_skype_bridge_configuration_yaml`.
matrix_go_skype_bridge_configuration: "{{ matrix_go_skype_bridge_configuration_yaml | from_yaml|combine(matrix_go_skype_bridge_configuration_extension, recursive=True) }}" matrix_go_skype_bridge_configuration: "{{ matrix_go_skype_bridge_configuration_yaml | from_yaml | combine(matrix_go_skype_bridge_configuration_extension, recursive=True) }}"
matrix_go_skype_bridge_registration_yaml: | matrix_go_skype_bridge_registration_yaml: |
id: skype id: skype
@ -117,10 +117,10 @@ matrix_go_skype_bridge_registration_yaml: |
rate_limited: false rate_limited: false
namespaces: namespaces:
users: users:
- regex: '^@skype-(.*):{{ matrix_go_skype_bridge_homeserver_domain|regex_escape }}$' - regex: '^@skype-(.*):{{ matrix_go_skype_bridge_homeserver_domain | regex_escape }}$'
exclusive: true exclusive: true
- exclusive: true - exclusive: true
regex: '^@{{ matrix_go_skype_bridge_appservice_bot_username|regex_escape }}:{{ matrix_go_skype_bridge_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_go_skype_bridge_appservice_bot_username | regex_escape }}:{{ matrix_go_skype_bridge_homeserver_domain | regex_escape }}$'
de.sorunome.msc2409.push_ephemeral: true de.sorunome.msc2409.push_ephemeral: true
matrix_go_skype_bridge_registration: "{{ matrix_go_skype_bridge_registration_yaml | from_yaml }}" matrix_go_skype_bridge_registration: "{{ matrix_go_skype_bridge_registration_yaml | from_yaml }}"

@ -237,7 +237,7 @@ matrix_hookshot_configuration_extension: "{{ matrix_hookshot_configuration_exten
# Holds the final configuration (a combination of the default and its extension). # 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_hookshot_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_hookshot_configuration_yaml`.
matrix_hookshot_configuration: "{{ matrix_hookshot_configuration_yaml | from_yaml|combine(matrix_hookshot_configuration_extension, recursive=True) }}" matrix_hookshot_configuration: "{{ matrix_hookshot_configuration_yaml | from_yaml | combine(matrix_hookshot_configuration_extension, recursive=True) }}"
# Default registration template which covers the generic use case. # Default registration template which covers the generic use case.
# You can customize it by controlling the various variables inside it. # You can customize it by controlling the various variables inside it.
@ -259,4 +259,4 @@ matrix_hookshot_registration_extension: "{{ matrix_hookshot_registration_extensi
# Holds the final registration (a combination of the default and its extension). # Holds the final registration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_hookshot_registration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_hookshot_registration_yaml`.
matrix_hookshot_registration: "{{ matrix_hookshot_registration_yaml | from_yaml|combine(matrix_hookshot_registration_extension, recursive=True) }}" matrix_hookshot_registration: "{{ matrix_hookshot_registration_yaml | from_yaml | combine(matrix_hookshot_registration_extension, recursive=True) }}"

@ -114,7 +114,7 @@ matrix_mautrix_facebook_configuration_extension: "{{ matrix_mautrix_facebook_con
# Holds the final configuration (a combination of the default and its extension). # 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_mautrix_facebook_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mautrix_facebook_configuration_yaml`.
matrix_mautrix_facebook_configuration: "{{ matrix_mautrix_facebook_configuration_yaml | from_yaml|combine(matrix_mautrix_facebook_configuration_extension, recursive=True) }}" matrix_mautrix_facebook_configuration: "{{ matrix_mautrix_facebook_configuration_yaml | from_yaml | combine(matrix_mautrix_facebook_configuration_extension, recursive=True) }}"
matrix_mautrix_facebook_registration_yaml: | matrix_mautrix_facebook_registration_yaml: |
id: facebook id: facebook
@ -123,9 +123,9 @@ matrix_mautrix_facebook_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@facebook_.+:{{ matrix_mautrix_facebook_homeserver_domain|regex_escape }}$' regex: '^@facebook_.+:{{ matrix_mautrix_facebook_homeserver_domain | regex_escape }}$'
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_facebook_appservice_bot_username|regex_escape }}:{{ matrix_mautrix_facebook_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_mautrix_facebook_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_facebook_homeserver_domain | regex_escape }}$'
url: {{ matrix_mautrix_facebook_appservice_address }} url: {{ matrix_mautrix_facebook_appservice_address }}
# See https://github.com/mautrix/signal/issues/43 # See https://github.com/mautrix/signal/issues/43
sender_localpart: _bot_{{ matrix_mautrix_facebook_appservice_bot_username }} sender_localpart: _bot_{{ matrix_mautrix_facebook_appservice_bot_username }}

@ -103,7 +103,7 @@ matrix_mautrix_googlechat_configuration_extension: "{{ matrix_mautrix_googlechat
# Holds the final configuration (a combination of the default and its extension). # 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_mautrix_googlechat_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mautrix_googlechat_configuration_yaml`.
matrix_mautrix_googlechat_configuration: "{{ matrix_mautrix_googlechat_configuration_yaml | from_yaml|combine(matrix_mautrix_googlechat_configuration_extension, recursive=True) }}" matrix_mautrix_googlechat_configuration: "{{ matrix_mautrix_googlechat_configuration_yaml | from_yaml | combine(matrix_mautrix_googlechat_configuration_extension, recursive=True) }}"
matrix_mautrix_googlechat_registration_yaml: | matrix_mautrix_googlechat_registration_yaml: |
id: googlechat id: googlechat
@ -112,9 +112,9 @@ matrix_mautrix_googlechat_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@googlechat_.+:{{ matrix_mautrix_googlechat_homeserver_domain|regex_escape }}$' regex: '^@googlechat_.+:{{ matrix_mautrix_googlechat_homeserver_domain | regex_escape }}$'
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_googlechat_appservice_bot_username|regex_escape }}:{{ matrix_mautrix_googlechat_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_mautrix_googlechat_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_googlechat_homeserver_domain | regex_escape }}$'
url: {{ matrix_mautrix_googlechat_appservice_address }} url: {{ matrix_mautrix_googlechat_appservice_address }}
# See https://github.com/mautrix/signal/issues/43 # See https://github.com/mautrix/signal/issues/43
sender_localpart: _bot_{{ matrix_mautrix_googlechat_appservice_bot_username }} sender_localpart: _bot_{{ matrix_mautrix_googlechat_appservice_bot_username }}

@ -100,7 +100,7 @@ matrix_mautrix_hangouts_configuration_extension: "{{ matrix_mautrix_hangouts_con
# Holds the final configuration (a combination of the default and its extension). # 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_mautrix_hangouts_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mautrix_hangouts_configuration_yaml`.
matrix_mautrix_hangouts_configuration: "{{ matrix_mautrix_hangouts_configuration_yaml | from_yaml|combine(matrix_mautrix_hangouts_configuration_extension, recursive=True) }}" matrix_mautrix_hangouts_configuration: "{{ matrix_mautrix_hangouts_configuration_yaml | from_yaml | combine(matrix_mautrix_hangouts_configuration_extension, recursive=True) }}"
matrix_mautrix_hangouts_registration_yaml: | matrix_mautrix_hangouts_registration_yaml: |
id: hangouts id: hangouts
@ -109,9 +109,9 @@ matrix_mautrix_hangouts_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@hangouts_.+:{{ matrix_mautrix_hangouts_homeserver_domain|regex_escape }}$' regex: '^@hangouts_.+:{{ matrix_mautrix_hangouts_homeserver_domain | regex_escape }}$'
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_hangouts_appservice_bot_username|regex_escape }}:{{ matrix_mautrix_hangouts_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_mautrix_hangouts_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_hangouts_homeserver_domain | regex_escape }}$'
url: {{ matrix_mautrix_hangouts_appservice_address }} url: {{ matrix_mautrix_hangouts_appservice_address }}
# See https://github.com/mautrix/signal/issues/43 # See https://github.com/mautrix/signal/issues/43
sender_localpart: _bot_{{ matrix_mautrix_hangouts_appservice_bot_username }} sender_localpart: _bot_{{ matrix_mautrix_hangouts_appservice_bot_username }}

@ -93,7 +93,7 @@ matrix_mautrix_instagram_configuration_extension: "{{ matrix_mautrix_instagram_c
# Holds the final configuration (a combination of the default and its extension). # 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_mautrix_instagram_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mautrix_instagram_configuration_yaml`.
matrix_mautrix_instagram_configuration: "{{ matrix_mautrix_instagram_configuration_yaml | from_yaml|combine(matrix_mautrix_instagram_configuration_extension, recursive=True) }}" matrix_mautrix_instagram_configuration: "{{ matrix_mautrix_instagram_configuration_yaml | from_yaml | combine(matrix_mautrix_instagram_configuration_extension, recursive=True) }}"
matrix_mautrix_instagram_registration_yaml: | matrix_mautrix_instagram_registration_yaml: |
id: instagram id: instagram
@ -102,9 +102,9 @@ matrix_mautrix_instagram_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@instagram_.+:{{ matrix_mautrix_instagram_homeserver_domain|regex_escape }}$' regex: '^@instagram_.+:{{ matrix_mautrix_instagram_homeserver_domain | regex_escape }}$'
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_instagram_appservice_bot_username|regex_escape }}:{{ matrix_mautrix_instagram_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_mautrix_instagram_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_instagram_homeserver_domain | regex_escape }}$'
url: {{ matrix_mautrix_instagram_appservice_address }} url: {{ matrix_mautrix_instagram_appservice_address }}
# See https://github.com/mautrix/signal/issues/43 # See https://github.com/mautrix/signal/issues/43
sender_localpart: _bot_{{ matrix_mautrix_instagram_appservice_bot_username }} sender_localpart: _bot_{{ matrix_mautrix_instagram_appservice_bot_username }}

@ -128,7 +128,7 @@ matrix_mautrix_signal_configuration_extension: "{{ matrix_mautrix_signal_configu
# Holds the final configuration (a combination of the default and its extension). # 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_mautrix_signal_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mautrix_signal_configuration_yaml`.
matrix_mautrix_signal_configuration: "{{ matrix_mautrix_signal_configuration_yaml | from_yaml|combine(matrix_mautrix_signal_configuration_extension, recursive=True) }}" matrix_mautrix_signal_configuration: "{{ matrix_mautrix_signal_configuration_yaml | from_yaml | combine(matrix_mautrix_signal_configuration_extension, recursive=True) }}"
matrix_mautrix_signal_registration_yaml: "{{ lookup('template', 'templates/registration.yaml.j2') }}" matrix_mautrix_signal_registration_yaml: "{{ lookup('template', 'templates/registration.yaml.j2') }}"

@ -5,12 +5,12 @@ hs_token: "{{ matrix_mautrix_signal_homeserver_token }}"
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@signal_.+:{{ matrix_mautrix_signal_homeserver_domain|regex_escape }}$' regex: '^@signal_.+:{{ matrix_mautrix_signal_homeserver_domain | regex_escape }}$'
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_signal_appservice_bot_username|regex_escape }}:{{ matrix_mautrix_signal_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_mautrix_signal_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_signal_homeserver_domain | regex_escape }}$'
aliases: aliases:
- exclusive: true - exclusive: true
regex: '^#signal_.+:{{ matrix_mautrix_signal_homeserver_domain|regex_escape }}$' regex: '^#signal_.+:{{ matrix_mautrix_signal_homeserver_domain | regex_escape }}$'
url: {{ matrix_mautrix_signal_appservice_address }} url: {{ matrix_mautrix_signal_appservice_address }}
# See https://github.com/mautrix/signal/issues/43 # See https://github.com/mautrix/signal/issues/43
sender_localpart: _bot_{{ matrix_mautrix_signal_appservice_bot_username }} sender_localpart: _bot_{{ matrix_mautrix_signal_appservice_bot_username }}

@ -121,7 +121,7 @@ matrix_mautrix_telegram_configuration_extension: "{{ matrix_mautrix_telegram_con
# Holds the final configuration (a combination of the default and its extension). # 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_mautrix_telegram_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mautrix_telegram_configuration_yaml`.
matrix_mautrix_telegram_configuration: "{{ matrix_mautrix_telegram_configuration_yaml | from_yaml|combine(matrix_mautrix_telegram_configuration_extension, recursive=True) }}" matrix_mautrix_telegram_configuration: "{{ matrix_mautrix_telegram_configuration_yaml | from_yaml | combine(matrix_mautrix_telegram_configuration_extension, recursive=True) }}"
matrix_mautrix_telegram_registration_yaml: | matrix_mautrix_telegram_registration_yaml: |
id: telegram id: telegram
@ -130,12 +130,12 @@ matrix_mautrix_telegram_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@telegram_.+:{{ matrix_mautrix_telegram_homeserver_domain|regex_escape }}$' regex: '^@telegram_.+:{{ matrix_mautrix_telegram_homeserver_domain | regex_escape }}$'
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_telegram_appservice_bot_username|regex_escape }}:{{ matrix_mautrix_telegram_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_mautrix_telegram_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_telegram_homeserver_domain | regex_escape }}$'
aliases: aliases:
- exclusive: true - exclusive: true
regex: '^#telegram_.+:{{ matrix_mautrix_telegram_homeserver_domain|regex_escape }}$' regex: '^#telegram_.+:{{ matrix_mautrix_telegram_homeserver_domain | regex_escape }}$'
# See https://github.com/mautrix/signal/issues/43 # See https://github.com/mautrix/signal/issues/43
sender_localpart: _bot_{{ matrix_mautrix_telegram_appservice_bot_username }} sender_localpart: _bot_{{ matrix_mautrix_telegram_appservice_bot_username }}
url: {{ matrix_mautrix_telegram_appservice_address }} url: {{ matrix_mautrix_telegram_appservice_address }}

@ -91,7 +91,7 @@ matrix_mautrix_twitter_configuration_extension: "{{ matrix_mautrix_twitter_confi
# Holds the final configuration (a combination of the default and its extension). # 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_mautrix_twitter_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mautrix_twitter_configuration_yaml`.
matrix_mautrix_twitter_configuration: "{{ matrix_mautrix_twitter_configuration_yaml | from_yaml|combine(matrix_mautrix_twitter_configuration_extension, recursive=True) }}" matrix_mautrix_twitter_configuration: "{{ matrix_mautrix_twitter_configuration_yaml | from_yaml | combine(matrix_mautrix_twitter_configuration_extension, recursive=True) }}"
matrix_mautrix_twitter_registration_yaml: | matrix_mautrix_twitter_registration_yaml: |
id: twitter id: twitter
@ -100,9 +100,9 @@ matrix_mautrix_twitter_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@twitter_.+:{{ matrix_mautrix_twitter_homeserver_domain|regex_escape }}$' regex: '^@twitter_.+:{{ matrix_mautrix_twitter_homeserver_domain | regex_escape }}$'
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_twitter_appservice_bot_username|regex_escape }}:{{ matrix_mautrix_twitter_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_mautrix_twitter_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_twitter_homeserver_domain | regex_escape }}$'
url: {{ matrix_mautrix_twitter_appservice_address }} url: {{ matrix_mautrix_twitter_appservice_address }}
# See https://github.com/tulir/mautrix-signal/issues/43 # See https://github.com/tulir/mautrix-signal/issues/43
sender_localpart: _bot_{{ matrix_mautrix_twitter_appservice_bot_username }} sender_localpart: _bot_{{ matrix_mautrix_twitter_appservice_bot_username }}

@ -110,7 +110,7 @@ matrix_mautrix_whatsapp_configuration_extension: "{{ matrix_mautrix_whatsapp_con
# Holds the final configuration (a combination of the default and its extension). # 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_mautrix_whatsapp_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mautrix_whatsapp_configuration_yaml`.
matrix_mautrix_whatsapp_configuration: "{{ matrix_mautrix_whatsapp_configuration_yaml | from_yaml|combine(matrix_mautrix_whatsapp_configuration_extension, recursive=True) }}" matrix_mautrix_whatsapp_configuration: "{{ matrix_mautrix_whatsapp_configuration_yaml | from_yaml | combine(matrix_mautrix_whatsapp_configuration_extension, recursive=True) }}"
matrix_mautrix_whatsapp_registration_yaml: | matrix_mautrix_whatsapp_registration_yaml: |
id: whatsapp id: whatsapp
@ -122,10 +122,10 @@ matrix_mautrix_whatsapp_registration_yaml: |
rate_limited: false rate_limited: false
namespaces: namespaces:
users: users:
- regex: '^@whatsapp_[0-9]+:{{ matrix_mautrix_whatsapp_homeserver_domain|regex_escape }}$' - regex: '^@whatsapp_[0-9]+:{{ matrix_mautrix_whatsapp_homeserver_domain | regex_escape }}$'
exclusive: true exclusive: true
- exclusive: true - exclusive: true
regex: '^@{{ matrix_mautrix_whatsapp_appservice_bot_username|regex_escape }}:{{ matrix_mautrix_whatsapp_homeserver_domain|regex_escape }}$' regex: '^@{{ matrix_mautrix_whatsapp_appservice_bot_username | regex_escape }}:{{ matrix_mautrix_whatsapp_homeserver_domain | regex_escape }}$'
de.sorunome.msc2409.push_ephemeral: true de.sorunome.msc2409.push_ephemeral: true
matrix_mautrix_whatsapp_registration: "{{ matrix_mautrix_whatsapp_registration_yaml | from_yaml }}" matrix_mautrix_whatsapp_registration: "{{ matrix_mautrix_whatsapp_registration_yaml | from_yaml }}"

@ -36,7 +36,7 @@ matrix_mx_puppet_discord_bridge_mediaUrl: "https://{{ matrix_server_fqn_matrix }
# "@.*:yourserver.com" to allow users on a specific homeserver # "@.*:yourserver.com" to allow users on a specific homeserver
# "@.*" to allow anyone # "@.*" to allow anyone
matrix_mx_puppet_discord_provisioning_whitelist: matrix_mx_puppet_discord_provisioning_whitelist:
- "@.*:{{ matrix_domain|regex_escape }}" - "@.*:{{ matrix_domain | regex_escape }}"
# Leave empty to disable blacklist # Leave empty to disable blacklist
# "@user:server.com" disallow a specific user # "@user:server.com" disallow a specific user
@ -92,7 +92,7 @@ matrix_mx_puppet_discord_configuration_extension: "{{ matrix_mx_puppet_discord_c
# Holds the final configuration (a combination of the default and its extension). # 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_discord_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mx_puppet_discord_configuration_yaml`.
matrix_mx_puppet_discord_configuration: "{{ matrix_mx_puppet_discord_configuration_yaml | from_yaml|combine(matrix_mx_puppet_discord_configuration_extension, recursive=True) }}" matrix_mx_puppet_discord_configuration: "{{ matrix_mx_puppet_discord_configuration_yaml | from_yaml | combine(matrix_mx_puppet_discord_configuration_extension, recursive=True) }}"
matrix_mx_puppet_discord_registration_yaml: | matrix_mx_puppet_discord_registration_yaml: |
as_token: "{{ matrix_mx_puppet_discord_appservice_token }}" as_token: "{{ matrix_mx_puppet_discord_appservice_token }}"
@ -101,11 +101,11 @@ matrix_mx_puppet_discord_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '@_discordpuppet_.*:{{ matrix_mx_puppet_discord_homeserver_domain|regex_escape }}' regex: '@_discordpuppet_.*:{{ matrix_mx_puppet_discord_homeserver_domain | regex_escape }}'
rooms: [] rooms: []
aliases: aliases:
- exclusive: true - exclusive: true
regex: '#_discordpuppet_.*:{{ matrix_mx_puppet_discord_homeserver_domain|regex_escape }}' regex: '#_discordpuppet_.*:{{ matrix_mx_puppet_discord_homeserver_domain | regex_escape }}'
protocols: [] protocols: []
rate_limited: false rate_limited: false
sender_localpart: _discordpuppet_bot sender_localpart: _discordpuppet_bot

@ -32,7 +32,7 @@ matrix_mx_puppet_groupme_appservice_address: 'http://matrix-mx-puppet-groupme:{{
# "@.*:yourserver.com" to allow users on a specific homeserver # "@.*:yourserver.com" to allow users on a specific homeserver
# "@.*" to allow anyone # "@.*" to allow anyone
matrix_mx_puppet_groupme_provisioning_whitelist: matrix_mx_puppet_groupme_provisioning_whitelist:
- "@.*:{{ matrix_domain|regex_escape }}" - "@.*:{{ matrix_domain | regex_escape }}"
# Leave empty to disable blacklist # Leave empty to disable blacklist
# "@user:server.com" disallow a specific user # "@user:server.com" disallow a specific user
@ -87,7 +87,7 @@ matrix_mx_puppet_groupme_configuration_extension: "{{ matrix_mx_puppet_groupme_c
# Holds the final configuration (a combination of the default and its extension). # 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_groupme_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mx_puppet_groupme_configuration_yaml`.
matrix_mx_puppet_groupme_configuration: "{{ matrix_mx_puppet_groupme_configuration_yaml | from_yaml|combine(matrix_mx_puppet_groupme_configuration_extension, recursive=True) }}" matrix_mx_puppet_groupme_configuration: "{{ matrix_mx_puppet_groupme_configuration_yaml | from_yaml | combine(matrix_mx_puppet_groupme_configuration_extension, recursive=True) }}"
matrix_mx_puppet_groupme_registration_yaml: | matrix_mx_puppet_groupme_registration_yaml: |
as_token: "{{ matrix_mx_puppet_groupme_appservice_token }}" as_token: "{{ matrix_mx_puppet_groupme_appservice_token }}"
@ -96,11 +96,11 @@ matrix_mx_puppet_groupme_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '@_groupmepuppet_.*:{{ matrix_mx_puppet_groupme_homeserver_domain|regex_escape }}' regex: '@_groupmepuppet_.*:{{ matrix_mx_puppet_groupme_homeserver_domain | regex_escape }}'
rooms: [] rooms: []
aliases: aliases:
- exclusive: true - exclusive: true
regex: '#_groupmepuppet_.*:{{ matrix_mx_puppet_groupme_homeserver_domain|regex_escape }}' regex: '#_groupmepuppet_.*:{{ matrix_mx_puppet_groupme_homeserver_domain | regex_escape }}'
protocols: [] protocols: []
rate_limited: false rate_limited: false
sender_localpart: _groupmepuppet_bot sender_localpart: _groupmepuppet_bot

@ -26,7 +26,7 @@ matrix_mx_puppet_instagram_appservice_address: 'http://matrix-mx-puppet-instagra
# "@.*:yourserver.com" to allow users on a specific homeserver # "@.*:yourserver.com" to allow users on a specific homeserver
# "@.*" to allow anyone # "@.*" to allow anyone
matrix_mx_puppet_instagram_provisioning_whitelist: matrix_mx_puppet_instagram_provisioning_whitelist:
- "@.*:{{ matrix_domain|regex_escape }}" - "@.*:{{ matrix_domain | regex_escape }}"
# Leave empty to disable blacklist # Leave empty to disable blacklist
# "@user:server.com" disallow a specific user # "@user:server.com" disallow a specific user
@ -81,7 +81,7 @@ matrix_mx_puppet_instagram_configuration_extension: "{{ matrix_mx_puppet_instagr
# Holds the final configuration (a combination of the default and its extension). # 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_instagram_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mx_puppet_instagram_configuration_yaml`.
matrix_mx_puppet_instagram_configuration: "{{ matrix_mx_puppet_instagram_configuration_yaml | from_yaml|combine(matrix_mx_puppet_instagram_configuration_extension, recursive=True) }}" matrix_mx_puppet_instagram_configuration: "{{ matrix_mx_puppet_instagram_configuration_yaml | from_yaml | combine(matrix_mx_puppet_instagram_configuration_extension, recursive=True) }}"
matrix_mx_puppet_instagram_registration_yaml: | matrix_mx_puppet_instagram_registration_yaml: |
as_token: "{{ matrix_mx_puppet_instagram_appservice_token }}" as_token: "{{ matrix_mx_puppet_instagram_appservice_token }}"
@ -90,11 +90,11 @@ matrix_mx_puppet_instagram_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '@_instagrampuppet_.*:{{ matrix_mx_puppet_instagram_homeserver_domain|regex_escape }}' regex: '@_instagrampuppet_.*:{{ matrix_mx_puppet_instagram_homeserver_domain | regex_escape }}'
rooms: [] rooms: []
aliases: aliases:
- exclusive: true - exclusive: true
regex: '#_instagrampuppet_.*:{{ matrix_mx_puppet_instagram_homeserver_domain|regex_escape }}' regex: '#_instagrampuppet_.*:{{ matrix_mx_puppet_instagram_homeserver_domain | regex_escape }}'
protocols: [] protocols: []
rate_limited: false rate_limited: false
sender_localpart: _instagrampuppet_bot sender_localpart: _instagrampuppet_bot

@ -40,7 +40,7 @@ matrix_mx_puppet_slack_redirect_uri: 'https://{{ matrix_server_fqn_matrix }}{{ m
# "@.*:yourserver.com" to allow users on a specific homeserver # "@.*:yourserver.com" to allow users on a specific homeserver
# "@.*" to allow anyone # "@.*" to allow anyone
matrix_mx_puppet_slack_provisioning_whitelist: matrix_mx_puppet_slack_provisioning_whitelist:
- "@.*:{{ matrix_domain|regex_escape }}" - "@.*:{{ matrix_domain | regex_escape }}"
# Leave empty to disable blacklist # Leave empty to disable blacklist
# "@user:server.com" disallow a specific user # "@user:server.com" disallow a specific user
@ -96,7 +96,7 @@ matrix_mx_puppet_slack_configuration_extension: "{{ matrix_mx_puppet_slack_confi
# Holds the final configuration (a combination of the default and its extension). # 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`. # 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_configuration: "{{ matrix_mx_puppet_slack_configuration_yaml | from_yaml | combine(matrix_mx_puppet_slack_configuration_extension, recursive=True) }}"
matrix_mx_puppet_slack_registration_yaml: | matrix_mx_puppet_slack_registration_yaml: |
as_token: "{{ matrix_mx_puppet_slack_appservice_token }}" as_token: "{{ matrix_mx_puppet_slack_appservice_token }}"
@ -105,11 +105,11 @@ matrix_mx_puppet_slack_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '@_slackpuppet_.*:{{ matrix_mx_puppet_slack_homeserver_domain|regex_escape }}' regex: '@_slackpuppet_.*:{{ matrix_mx_puppet_slack_homeserver_domain | regex_escape }}'
rooms: [] rooms: []
aliases: aliases:
- exclusive: true - exclusive: true
regex: '#_slackpuppet_.*:{{ matrix_mx_puppet_slack_homeserver_domain|regex_escape }}' regex: '#_slackpuppet_.*:{{ matrix_mx_puppet_slack_homeserver_domain | regex_escape }}'
protocols: [] protocols: []
rate_limited: false rate_limited: false
sender_localpart: _slackpuppet_bot sender_localpart: _slackpuppet_bot

@ -32,7 +32,7 @@ matrix_mx_puppet_steam_appservice_address: 'http://matrix-mx-puppet-steam:{{ mat
# "@.*:yourserver.com" to allow users on a specific homeserver # "@.*:yourserver.com" to allow users on a specific homeserver
# "@.*" to allow anyone # "@.*" to allow anyone
matrix_mx_puppet_steam_provisioning_whitelist: matrix_mx_puppet_steam_provisioning_whitelist:
- "@.*:{{ matrix_domain|regex_escape }}" - "@.*:{{ matrix_domain | regex_escape }}"
# Leave empty to disable blacklist # Leave empty to disable blacklist
# "@user:server.com" disallow a specific user # "@user:server.com" disallow a specific user
@ -87,7 +87,7 @@ matrix_mx_puppet_steam_configuration_extension: "{{ matrix_mx_puppet_steam_confi
# Holds the final configuration (a combination of the default and its extension). # 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_steam_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mx_puppet_steam_configuration_yaml`.
matrix_mx_puppet_steam_configuration: "{{ matrix_mx_puppet_steam_configuration_yaml | from_yaml|combine(matrix_mx_puppet_steam_configuration_extension, recursive=True) }}" matrix_mx_puppet_steam_configuration: "{{ matrix_mx_puppet_steam_configuration_yaml | from_yaml | combine(matrix_mx_puppet_steam_configuration_extension, recursive=True) }}"
matrix_mx_puppet_steam_registration_yaml: | matrix_mx_puppet_steam_registration_yaml: |
as_token: "{{ matrix_mx_puppet_steam_appservice_token }}" as_token: "{{ matrix_mx_puppet_steam_appservice_token }}"
@ -96,11 +96,11 @@ matrix_mx_puppet_steam_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '@_steampuppet_.*:{{ matrix_mx_puppet_steam_homeserver_domain|regex_escape }}' regex: '@_steampuppet_.*:{{ matrix_mx_puppet_steam_homeserver_domain | regex_escape }}'
rooms: [] rooms: []
aliases: aliases:
- exclusive: true - exclusive: true
regex: '#_steampuppet_.*:{{ matrix_mx_puppet_steam_homeserver_domain|regex_escape }}' regex: '#_steampuppet_.*:{{ matrix_mx_puppet_steam_homeserver_domain | regex_escape }}'
protocols: [] protocols: []
rate_limited: false rate_limited: false
sender_localpart: _steampuppet_bot sender_localpart: _steampuppet_bot

@ -41,7 +41,7 @@ matrix_mx_puppet_twitter_webhook_url: 'https://{{ matrix_server_fqn_matrix }}{{
# "@.*:yourserver.com" to allow users on a specific homeserver # "@.*:yourserver.com" to allow users on a specific homeserver
# "@.*" to allow anyone # "@.*" to allow anyone
matrix_mx_puppet_twitter_provisioning_whitelist: matrix_mx_puppet_twitter_provisioning_whitelist:
- "@.*:{{ matrix_domain|regex_escape }}" - "@.*:{{ matrix_domain | regex_escape }}"
# Leave empty to disable blacklist # Leave empty to disable blacklist
# "@user:server.com" disallow a specific user # "@user:server.com" disallow a specific user
@ -97,7 +97,7 @@ matrix_mx_puppet_twitter_configuration_extension: "{{ matrix_mx_puppet_twitter_c
# Holds the final configuration (a combination of the default and its extension). # 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_twitter_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_mx_puppet_twitter_configuration_yaml`.
matrix_mx_puppet_twitter_configuration: "{{ matrix_mx_puppet_twitter_configuration_yaml | from_yaml|combine(matrix_mx_puppet_twitter_configuration_extension, recursive=True) }}" matrix_mx_puppet_twitter_configuration: "{{ matrix_mx_puppet_twitter_configuration_yaml | from_yaml | combine(matrix_mx_puppet_twitter_configuration_extension, recursive=True) }}"
# The prefix for user IDs and aliases # The prefix for user IDs and aliases
matrix_mx_puppet_twitter_namespace_prefix: _twitterpuppet_ matrix_mx_puppet_twitter_namespace_prefix: _twitterpuppet_
@ -110,11 +110,11 @@ matrix_mx_puppet_twitter_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '@{{ matrix_mx_puppet_twitter_namespace_prefix|regex_escape }}.*:{{ matrix_mx_puppet_twitter_homeserver_domain|regex_escape }}' regex: '@{{ matrix_mx_puppet_twitter_namespace_prefix | regex_escape }}.*:{{ matrix_mx_puppet_twitter_homeserver_domain | regex_escape }}'
rooms: [] rooms: []
aliases: aliases:
- exclusive: true - exclusive: true
regex: '#{{ matrix_mx_puppet_twitter_namespace_prefix|regex_escape }}.*:{{ matrix_mx_puppet_twitter_homeserver_domain|regex_escape }}' regex: '#{{ matrix_mx_puppet_twitter_namespace_prefix | regex_escape }}.*:{{ matrix_mx_puppet_twitter_homeserver_domain | regex_escape }}'
protocols: [] protocols: []
rate_limited: false rate_limited: false
sender_localpart: "{{ matrix_mx_puppet_twitter_bot_localpart }}" sender_localpart: "{{ matrix_mx_puppet_twitter_bot_localpart }}"

@ -81,6 +81,7 @@
- name: Ensure MX Puppet Twitter repository is present on self build - name: Ensure MX Puppet Twitter repository is present on self build
ansible.builtin.git: ansible.builtin.git:
repo: "{{ matrix_mx_puppet_twitter_container_image_self_build_repo }}" repo: "{{ matrix_mx_puppet_twitter_container_image_self_build_repo }}"
version: master
dest: "{{ matrix_mx_puppet_twitter_docker_src_files_path }}" dest: "{{ matrix_mx_puppet_twitter_docker_src_files_path }}"
force: "yes" force: "yes"
become: true become: true

@ -106,7 +106,7 @@ matrix_sms_bridge_configuration_extension_yaml: |
matrix_sms_bridge_configuration_extension: "{{ matrix_sms_bridge_configuration_extension_yaml | from_yaml if matrix_sms_bridge_configuration_extension_yaml | from_yaml is mapping else {} }}" matrix_sms_bridge_configuration_extension: "{{ matrix_sms_bridge_configuration_extension_yaml | from_yaml if matrix_sms_bridge_configuration_extension_yaml | from_yaml is mapping else {} }}"
matrix_sms_bridge_configuration: "{{ matrix_sms_bridge_configuration_yaml | from_yaml|combine(matrix_sms_bridge_configuration_extension, recursive=True) }}" matrix_sms_bridge_configuration: "{{ matrix_sms_bridge_configuration_yaml | from_yaml | combine(matrix_sms_bridge_configuration_extension, recursive=True) }}"
matrix_sms_bridge_registration_yaml: | matrix_sms_bridge_registration_yaml: |
id: sms id: sms
@ -115,10 +115,10 @@ matrix_sms_bridge_registration_yaml: |
namespaces: namespaces:
users: users:
- exclusive: true - exclusive: true
regex: '^@sms_.+:{{ matrix_sms_bridge_homserver_domain|regex_escape }}$' regex: '^@sms_.+:{{ matrix_sms_bridge_homserver_domain | regex_escape }}$'
aliases: aliases:
- exclusive: true - exclusive: true
regex: '^#sms_.+:{{ matrix_sms_bridge_homserver_domain|regex_escape }}$' regex: '^#sms_.+:{{ matrix_sms_bridge_homserver_domain | regex_escape }}$'
url: {{ matrix_sms_bridge_appservice_url }} url: {{ matrix_sms_bridge_appservice_url }}
sender_localpart: smsbot sender_localpart: smsbot
rate_limited: false rate_limited: false

@ -50,8 +50,8 @@ matrix_client_cinny_configuration_default: "{{ lookup('template', 'templates/con
# completely redefining `matrix_client_cinny_configuration_default`. # completely redefining `matrix_client_cinny_configuration_default`.
matrix_client_cinny_configuration_extension_json: '{}' matrix_client_cinny_configuration_extension_json: '{}'
matrix_client_cinny_configuration_extension: "{{ matrix_client_cinny_configuration_extension_json|from_json if matrix_client_cinny_configuration_extension_json|from_json is mapping else {} }}" matrix_client_cinny_configuration_extension: "{{ matrix_client_cinny_configuration_extension_json | from_json if matrix_client_cinny_configuration_extension_json | from_json is mapping else {} }}"
# Holds the final cinny configuration (a combination of the default and its extension). # Holds the final cinny configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_client_cinny_configuration_default`. # You most likely don't need to touch this variable. Instead, see `matrix_client_cinny_configuration_default`.
matrix_client_cinny_configuration: "{{ matrix_client_cinny_configuration_default|combine(matrix_client_cinny_configuration_extension, recursive=True) }}" matrix_client_cinny_configuration: "{{ matrix_client_cinny_configuration_default | combine(matrix_client_cinny_configuration_extension, recursive=True) }}"

@ -36,7 +36,7 @@
- name: Ensure Cinny configuration installed - name: Ensure Cinny configuration installed
ansible.builtin.copy: ansible.builtin.copy:
content: "{{ matrix_client_cinny_configuration|to_nice_json }}" content: "{{ matrix_client_cinny_configuration | to_nice_json }}"
dest: "{{ matrix_client_cinny_data_path }}/config.json" dest: "{{ matrix_client_cinny_data_path }}/config.json"
mode: 0644 mode: 0644
owner: "{{ matrix_user_username }}" owner: "{{ matrix_user_username }}"

@ -1,6 +1,6 @@
{ {
"defaultHomeserver": 0, "defaultHomeserver": 0,
"homeserverList": [ "homeserverList": [
{{ matrix_client_cinny_default_hs_url|string|to_json }} {{ matrix_client_cinny_default_hs_url | string|to_json }}
] ]
} }

@ -129,8 +129,8 @@ matrix_client_element_configuration_default: "{{ lookup('template', 'templates/c
# } # }
matrix_client_element_configuration_extension_json: '{}' matrix_client_element_configuration_extension_json: '{}'
matrix_client_element_configuration_extension: "{{ matrix_client_element_configuration_extension_json|from_json if matrix_client_element_configuration_extension_json|from_json is mapping else {} }}" matrix_client_element_configuration_extension: "{{ matrix_client_element_configuration_extension_json | from_json if matrix_client_element_configuration_extension_json | from_json is mapping else {} }}"
# Holds the final Element configuration (a combination of the default and its extension). # Holds the final Element configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_client_element_configuration_default`. # You most likely don't need to touch this variable. Instead, see `matrix_client_element_configuration_default`.
matrix_client_element_configuration: "{{ matrix_client_element_configuration_default|combine(matrix_client_element_configuration_extension, recursive=True) }}" matrix_client_element_configuration: "{{ matrix_client_element_configuration_default | combine(matrix_client_element_configuration_extension, recursive=True) }}"

@ -63,7 +63,7 @@
- name: Ensure Element configuration installed - name: Ensure Element configuration installed
ansible.builtin.copy: ansible.builtin.copy:
content: "{{ matrix_client_element_configuration|to_nice_json }}" content: "{{ matrix_client_element_configuration | to_nice_json }}"
dest: "{{ matrix_client_element_data_path }}/config.json" dest: "{{ matrix_client_element_data_path }}/config.json"
mode: 0644 mode: 0644
owner: "{{ matrix_user_username }}" owner: "{{ matrix_user_username }}"

@ -1,25 +1,25 @@
{ {
"default_server_config": { "default_server_config": {
"m.homeserver": { "m.homeserver": {
"base_url": {{ matrix_client_element_default_hs_url|string|to_json }}, "base_url": {{ matrix_client_element_default_hs_url | string|to_json }},
"server_name": {{ matrix_client_element_default_server_name|string|to_json }} "server_name": {{ matrix_client_element_default_server_name | string|to_json }}
}, },
"m.identity_server": { "m.identity_server": {
"base_url": {{ matrix_client_element_default_is_url|string|to_json }} "base_url": {{ matrix_client_element_default_is_url | string|to_json }}
} }
}, },
"settingDefaults": { "settingDefaults": {
"custom_themes": {{ matrix_client_element_settingDefaults_custom_themes|to_json }} "custom_themes": {{ matrix_client_element_settingDefaults_custom_themes|to_json }}
}, },
"default_theme": {{ matrix_client_element_default_theme|string|to_json }}, "default_theme": {{ matrix_client_element_default_theme | string|to_json }},
"permalinkPrefix": {{ matrix_client_element_permalinkPrefix|string|to_json }}, "permalinkPrefix": {{ matrix_client_element_permalinkPrefix | string|to_json }},
"disable_custom_urls": {{ matrix_client_element_disable_custom_urls|to_json }}, "disable_custom_urls": {{ matrix_client_element_disable_custom_urls|to_json }},
"disable_guests": {{ matrix_client_element_disable_guests|to_json }}, "disable_guests": {{ matrix_client_element_disable_guests|to_json }},
"brand": {{ matrix_client_element_brand|to_json }}, "brand": {{ matrix_client_element_brand|to_json }},
"integrations_ui_url": {{ matrix_client_element_integrations_ui_url|string|to_json }}, "integrations_ui_url": {{ matrix_client_element_integrations_ui_url | string|to_json }},
"integrations_rest_url": {{ matrix_client_element_integrations_rest_url|string|to_json }}, "integrations_rest_url": {{ matrix_client_element_integrations_rest_url | string|to_json }},
"integrations_widgets_urls": {{ matrix_client_element_integrations_widgets_urls|to_json }}, "integrations_widgets_urls": {{ matrix_client_element_integrations_widgets_urls|to_json }},
"integrations_jitsi_widget_url": {{ matrix_client_element_integrations_jitsi_widget_url|string|to_json }}, "integrations_jitsi_widget_url": {{ matrix_client_element_integrations_jitsi_widget_url | string|to_json }},
"bug_report_endpoint_url": {{ matrix_client_element_bug_report_endpoint_url|to_json }}, "bug_report_endpoint_url": {{ matrix_client_element_bug_report_endpoint_url|to_json }},
"showLabsSettings": {{ matrix_client_element_showLabsSettings|to_json }}, "showLabsSettings": {{ matrix_client_element_showLabsSettings|to_json }},
"roomDirectory": { "roomDirectory": {
@ -30,7 +30,7 @@
"enable_presence_by_hs_url": {{ matrix_client_element_enable_presence_by_hs_url|to_json }}, "enable_presence_by_hs_url": {{ matrix_client_element_enable_presence_by_hs_url|to_json }},
{% endif %} {% endif %}
"embeddedPages": { "embeddedPages": {
"homeUrl": {{ matrix_client_element_embedded_pages_home_url|string|to_json }} "homeUrl": {{ matrix_client_element_embedded_pages_home_url | string|to_json }}
}, },
{% if matrix_client_element_jitsi_preferredDomain %} {% if matrix_client_element_jitsi_preferredDomain %}
"jitsi": { "jitsi": {

@ -64,8 +64,8 @@ matrix_client_hydrogen_configuration_default: "{{ lookup('template', 'templates/
# } # }
matrix_client_hydrogen_configuration_extension_json: '{}' matrix_client_hydrogen_configuration_extension_json: '{}'
matrix_client_hydrogen_configuration_extension: "{{ matrix_client_hydrogen_configuration_extension_json|from_json if matrix_client_hydrogen_configuration_extension_json|from_json is mapping else {} }}" matrix_client_hydrogen_configuration_extension: "{{ matrix_client_hydrogen_configuration_extension_json | from_json if matrix_client_hydrogen_configuration_extension_json | from_json is mapping else {} }}"
# Holds the final Hydrogen configuration (a combination of the default and its extension). # Holds the final Hydrogen configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_client_hydrogen_configuration_default`. # You most likely don't need to touch this variable. Instead, see `matrix_client_hydrogen_configuration_default`.
matrix_client_hydrogen_configuration: "{{ matrix_client_hydrogen_configuration_default|combine(matrix_client_hydrogen_configuration_extension, recursive=True) }}" matrix_client_hydrogen_configuration: "{{ matrix_client_hydrogen_configuration_default | combine(matrix_client_hydrogen_configuration_extension, recursive=True) }}"

@ -37,7 +37,7 @@
- name: Ensure Hydrogen configuration installed - name: Ensure Hydrogen configuration installed
ansible.builtin.copy: ansible.builtin.copy:
content: "{{ matrix_client_hydrogen_configuration|to_nice_json }}" content: "{{ matrix_client_hydrogen_configuration | to_nice_json }}"
dest: "{{ matrix_client_hydrogen_docker_src_files_path }}/src/platform/web/assets/config.json" dest: "{{ matrix_client_hydrogen_docker_src_files_path }}/src/platform/web/assets/config.json"
mode: 0644 mode: 0644
owner: "{{ matrix_user_username }}" owner: "{{ matrix_user_username }}"

@ -4,7 +4,7 @@
"gatewayUrl": "https://matrix.org", "gatewayUrl": "https://matrix.org",
"applicationServerKey": "BC-gpSdVHEXhvHSHS0AzzWrQoukv2BE7KzpoPO_FfPacqOo3l1pdqz7rSgmB04pZCWaHPz7XRe6fjLaC-WPDopM" "applicationServerKey": "BC-gpSdVHEXhvHSHS0AzzWrQoukv2BE7KzpoPO_FfPacqOo3l1pdqz7rSgmB04pZCWaHPz7XRe6fjLaC-WPDopM"
}, },
"defaultHomeServer": {{ matrix_client_hydrogen_default_hs_url|string|to_json }}, "defaultHomeServer": {{ matrix_client_hydrogen_default_hs_url | string|to_json }},
"bugReportEndpointUrl": "https://element.io/bugreports/submit", "bugReportEndpointUrl": "https://element.io/bugreports/submit",
"themeManifests": [ "themeManifests": [
"assets/theme-Element.json" "assets/theme-Element.json"

@ -100,8 +100,8 @@ matrix_corporal_configuration_default: "{{ lookup('template', 'templates/config.
# } # }
matrix_corporal_configuration_extension_json: '{}' matrix_corporal_configuration_extension_json: '{}'
matrix_corporal_configuration_extension: "{{ matrix_corporal_configuration_extension_json|from_json if matrix_corporal_configuration_extension_json|from_json is mapping else {} }}" matrix_corporal_configuration_extension: "{{ matrix_corporal_configuration_extension_json | from_json if matrix_corporal_configuration_extension_json | from_json is mapping else {} }}"
# Holds the final Corporal configuration (a combination of the default and its extension). # Holds the final Corporal configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_corporal_configuration_default`. # You most likely don't need to touch this variable. Instead, see `matrix_corporal_configuration_default`.
matrix_corporal_configuration: "{{ matrix_corporal_configuration_default|combine(matrix_corporal_configuration_extension, recursive=True) }}" matrix_corporal_configuration: "{{ matrix_corporal_configuration_default | combine(matrix_corporal_configuration_extension, recursive=True) }}"

@ -54,7 +54,7 @@
- name: Ensure Matrix Corporal config installed - name: Ensure Matrix Corporal config installed
ansible.builtin.copy: ansible.builtin.copy:
content: "{{ matrix_corporal_configuration|to_nice_json }}" content: "{{ matrix_corporal_configuration | to_nice_json }}"
dest: "{{ matrix_corporal_config_dir_path }}/config.json" dest: "{{ matrix_corporal_config_dir_path }}/config.json"
mode: 0644 mode: 0644
owner: "{{ matrix_user_username }}" owner: "{{ matrix_user_username }}"

@ -27,10 +27,10 @@ matrix_dendrite_http_bind_port: 8008
matrix_dendrite_https_bind_port: ~ matrix_dendrite_https_bind_port: ~
# This is passed as an `-http-bind-address` flag to the Dendrite server in the container # This is passed as an `-http-bind-address` flag to the Dendrite server in the container
matrix_dendrite_http_bind_address: "{{ (':' + matrix_dendrite_http_bind_port|string) if matrix_dendrite_http_bind_port else '' }}" matrix_dendrite_http_bind_address: "{{ (':' + matrix_dendrite_http_bind_port | string) if matrix_dendrite_http_bind_port else '' }}"
# This is passed as an `-https-bind-address` flag to the Dendrite server in the container # This is passed as an `-https-bind-address` flag to the Dendrite server in the container
matrix_dendrite_https_bind_address: "{{ (':' + matrix_dendrite_https_bind_port|string) if matrix_dendrite_https_bind_port else '' }}" matrix_dendrite_https_bind_address: "{{ (':' + matrix_dendrite_https_bind_port | string) if matrix_dendrite_https_bind_port else '' }}"
# Controls whether the matrix-dendrite container exposes the HTTP port (tcp/{{ matrix_dendrite_http_bind_port }} in the container). # Controls whether the matrix-dendrite container exposes the HTTP port (tcp/{{ matrix_dendrite_http_bind_port }} in the container).
# #
@ -171,4 +171,4 @@ matrix_dendrite_configuration_extension: "{{ matrix_dendrite_configuration_exten
# Holds the final Dendrite configuration (a combination of the default and its extension). # Holds the final Dendrite configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_dendrite_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_dendrite_configuration_yaml`.
matrix_dendrite_configuration: "{{ matrix_dendrite_configuration_yaml | from_yaml|combine(matrix_dendrite_configuration_extension, recursive=True) }}" matrix_dendrite_configuration: "{{ matrix_dendrite_configuration_yaml | from_yaml | combine(matrix_dendrite_configuration_extension, recursive=True) }}"

@ -165,7 +165,7 @@ client_api:
# If set, allows registration by anyone who knows the shared secret, regardless of # If set, allows registration by anyone who knows the shared secret, regardless of
# whether registration is otherwise disabled. # whether registration is otherwise disabled.
registration_shared_secret: {{ matrix_dendrite_registration_shared_secret|string|to_json }} registration_shared_secret: {{ matrix_dendrite_registration_shared_secret | string|to_json }}
# Whether to require reCAPTCHA for registration. # Whether to require reCAPTCHA for registration.
enable_registration_captcha: {{ matrix_dendrite_enable_registration_captcha|to_json }} enable_registration_captcha: {{ matrix_dendrite_enable_registration_captcha|to_json }}

@ -5,7 +5,7 @@ matrix_dendrite_federation_api_url_endpoint_public: "https://{{ matrix_server_fq
# Tells whether this role had executed or not. Toggled to `true` during runtime. # Tells whether this role had executed or not. Toggled to `true` during runtime.
matrix_dendrite_role_executed: false matrix_dendrite_role_executed: false
matrix_dendrite_media_store_parent_path: "{{ matrix_dendrite_media_store_path|dirname }}" matrix_dendrite_media_store_parent_path: "{{ matrix_dendrite_media_store_path | dirname }}"
matrix_dendrite_media_store_directory_name: "{{ matrix_dendrite_media_store_path | basename }}" matrix_dendrite_media_store_directory_name: "{{ matrix_dendrite_media_store_path | basename }}"
matrix_dendrite_signing_key_file_name: "{{ matrix_dendrite_signing_key | basename }}" matrix_dendrite_signing_key_file_name: "{{ matrix_dendrite_signing_key | basename }}"

@ -97,4 +97,4 @@ matrix_dimension_configuration_extension: "{{ matrix_dimension_configuration_ext
# Holds the final Dimension configuration (a combination of the default and its extension). # Holds the final Dimension configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_dimension_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_dimension_configuration_yaml`.
matrix_dimension_configuration: "{{ matrix_dimension_configuration_yaml | from_yaml|combine(matrix_dimension_configuration_extension, recursive=True) }}" matrix_dimension_configuration: "{{ matrix_dimension_configuration_yaml | from_yaml | combine(matrix_dimension_configuration_extension, recursive=True) }}"

@ -29,6 +29,7 @@ matrix_dynamic_dns_systemd_required_services_list: ['docker.service']
# Build the container from source when running in mode # Build the container from source when running in mode
matrix_dynamic_dns_container_image_self_build: false matrix_dynamic_dns_container_image_self_build: false
matrix_dynamic_dns_container_image_self_build_repo: "https://github.com/linuxserver/docker-ddclient.git" matrix_dynamic_dns_container_image_self_build_repo: "https://github.com/linuxserver/docker-ddclient.git"
matrix_dynamic_dns_container_image_self_build_repo_branch: "{{ matrix_dynamic_dns_version }}"
# Config paths # Config paths
matrix_dynamic_dns_base_path: "{{ matrix_base_data_path }}/dynamic-dns" matrix_dynamic_dns_base_path: "{{ matrix_base_data_path }}/dynamic-dns"

@ -28,6 +28,7 @@
- name: Ensure Dynamic DNS repository is present on self build - name: Ensure Dynamic DNS repository is present on self build
ansible.builtin.git: ansible.builtin.git:
repo: "{{ matrix_dynamic_dns_container_image_self_build_repo }}" repo: "{{ matrix_dynamic_dns_container_image_self_build_repo }}"
version: "{{ matrix_dynamic_dns_container_image_self_build_repo_branch }}"
dest: "{{ matrix_dynamic_dns_docker_src_files_path }}" dest: "{{ matrix_dynamic_dns_docker_src_files_path }}"
force: "yes" force: "yes"
become: true become: true

@ -6,7 +6,7 @@
"Workers": 10 "Workers": 10
}, },
"Matrix": { "Matrix": {
"Mappings": {{ matrix_email2matrix_matrix_mappings|to_nice_json }} "Mappings": {{ matrix_email2matrix_matrix_mappings | to_nice_json }}
}, },
"Misc": { "Misc": {
"Debug": {{ matrix_email2matrix_misc_debug|to_json }} "Debug": {{ matrix_email2matrix_misc_debug|to_json }}

@ -88,8 +88,8 @@ matrix_etherpad_configuration_default: "{{ lookup('template', 'templates/setting
# #
matrix_etherpad_configuration_extension_json: '{}' matrix_etherpad_configuration_extension_json: '{}'
matrix_etherpad_configuration_extension: "{{ matrix_etherpad_configuration_extension_json|from_json if matrix_etherpad_configuration_extension_json|from_json is mapping else {} }}" matrix_etherpad_configuration_extension: "{{ matrix_etherpad_configuration_extension_json | from_json if matrix_etherpad_configuration_extension_json | from_json is mapping else {} }}"
# Holds the final Etherpad configuration (a combination of the default and its extension). # Holds the final Etherpad configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_etherpad_configuration_json`. # You most likely don't need to touch this variable. Instead, see `matrix_etherpad_configuration_json`.
matrix_etherpad_configuration: "{{ matrix_etherpad_configuration_default|combine(matrix_etherpad_configuration_extension, recursive=True) }}" matrix_etherpad_configuration: "{{ matrix_etherpad_configuration_default | combine(matrix_etherpad_configuration_extension, recursive=True) }}"

@ -10,7 +10,7 @@
- name: Ensure Etherpad config installed - name: Ensure Etherpad config installed
ansible.builtin.copy: ansible.builtin.copy:
content: "{{ matrix_etherpad_configuration|to_nice_json }}" content: "{{ matrix_etherpad_configuration | to_nice_json }}"
dest: "{{ matrix_etherpad_base_path }}/settings.json" dest: "{{ matrix_etherpad_base_path }}/settings.json"
mode: 0640 mode: 0640
owner: "{{ matrix_etherpad_user_uid }}" owner: "{{ matrix_etherpad_user_uid }}"

@ -15,11 +15,13 @@
# #
- name: Ensure Jitsi internal authentication users are configured - name: Ensure Jitsi internal authentication users are configured
ansible.builtin.shell: "docker exec matrix-jitsi-prosody prosodyctl --config /config/prosody.cfg.lua register {{ item.username | quote }} meet.jitsi {{ item.password | quote }}" ansible.builtin.shell: "{{ matrix_host_command_docker }} exec matrix-jitsi-prosody prosodyctl --config /config/prosody.cfg.lua register {{ item.username | quote }} meet.jitsi {{ item.password | quote }}"
with_items: "{{ matrix_jitsi_prosody_auth_internal_accounts }}" with_items: "{{ matrix_jitsi_prosody_auth_internal_accounts }}"
when: when:
- matrix_jitsi_auth_type == "internal" - matrix_jitsi_auth_type == "internal"
- matrix_jitsi_prosody_auth_internal_accounts|length > 0 - matrix_jitsi_prosody_auth_internal_accounts|length > 0
register: matrix_jitsi_user_configuration_result
changed_when: matrix_jitsi_user_configuration_result.rc == 0
# #
# Tasks related to configuring other Jitsi authentication mechanisms # Tasks related to configuring other Jitsi authentication mechanisms

@ -160,4 +160,4 @@ matrix_ma1sd_configuration_extension: "{{ matrix_ma1sd_configuration_extension_y
# Holds the final ma1sd configuration (a combination of the default and its extension). # Holds the final ma1sd configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_ma1sd_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_ma1sd_configuration_yaml`.
matrix_ma1sd_configuration: "{{ matrix_ma1sd_configuration_yaml | from_yaml|combine(matrix_ma1sd_configuration_extension, recursive=True) }}" matrix_ma1sd_configuration: "{{ matrix_ma1sd_configuration_yaml | from_yaml | combine(matrix_ma1sd_configuration_extension, recursive=True) }}"

@ -90,9 +90,11 @@
register: matrix_ma1sd_git_pull_results register: matrix_ma1sd_git_pull_results
- name: Ensure ma1sd Docker image is built - name: Ensure ma1sd Docker image is built
ansible.builtin.shell: "DOCKER_BUILDKIT=1 ./gradlew dockerBuild" ansible.builtin.command:
args: cmd: ./gradlew dockerBuild
chdir: "{{ matrix_ma1sd_docker_src_files_path }}" chdir: "{{ matrix_ma1sd_docker_src_files_path }}"
environment:
DOCKER_BUILDKIT: 1
when: matrix_ma1sd_git_pull_results.changed when: matrix_ma1sd_git_pull_results.changed
- name: Ensure ma1sd Docker image is tagged correctly - name: Ensure ma1sd Docker image is tagged correctly

@ -51,6 +51,7 @@
{{ matrix_nginx_proxy_proxy_matrix_metrics_basic_auth_apache_container_image }} {{ matrix_nginx_proxy_proxy_matrix_metrics_basic_auth_apache_container_image }}
-c -c
'cat /password | htpasswd -i -c /data/matrix-metrics-htpasswd {{ matrix_nginx_proxy_proxy_matrix_metrics_basic_auth_username }} && chmod 600 /data/matrix-metrics-htpasswd' 'cat /password | htpasswd -i -c /data/matrix-metrics-htpasswd {{ matrix_nginx_proxy_proxy_matrix_metrics_basic_auth_username }} && chmod 600 /data/matrix-metrics-htpasswd'
changed_when: true
- name: Delete temporary metrics password file - name: Delete temporary metrics password file
ansible.builtin.file: ansible.builtin.file:

@ -25,7 +25,7 @@
- name: Parse JSON for well-known payload at the matrix hostname - name: Parse JSON for well-known payload at the matrix hostname
ansible.builtin.set_fact: ansible.builtin.set_fact:
well_known_matrix_payload: "{{ result_well_known_matrix.content|from_json }}" well_known_matrix_payload: "{{ result_well_known_matrix.content | from_json }}"
- name: Fail if .well-known not CORS-aware on the matrix hostname - name: Fail if .well-known not CORS-aware on the matrix hostname
ansible.builtin.fail: ansible.builtin.fail:
@ -55,7 +55,7 @@
- name: Parse JSON for well-known payload at the identity hostname - name: Parse JSON for well-known payload at the identity hostname
ansible.builtin.set_fact: ansible.builtin.set_fact:
well_known_identity_payload: "{{ result_well_known_identity.content|from_json }}" well_known_identity_payload: "{{ result_well_known_identity.content | from_json }}"
- name: Fail if .well-known not CORS-aware on the identity hostname - name: Fail if .well-known not CORS-aware on the identity hostname
ansible.builtin.fail: ansible.builtin.fail:

@ -13,7 +13,7 @@
# In order to do any sort of generation (below), we need to ensure the directory exists first # In order to do any sort of generation (below), we need to ensure the directory exists first
- name: Ensure SSL certificate directory exists - name: Ensure SSL certificate directory exists
ansible.builtin.file: ansible.builtin.file:
path: "{{ matrix_ssl_certificate_csr_path|dirname }}" path: "{{ matrix_ssl_certificate_csr_path | dirname }}"
state: directory state: directory
mode: 0750 mode: 0750
owner: "{{ matrix_user_username }}" owner: "{{ matrix_user_username }}"

@ -1,9 +1,9 @@
#jinja2: lstrip_blocks: "True" #jinja2: lstrip_blocks: "True"
{% set generic_workers = matrix_nginx_proxy_synapse_workers_list|selectattr('type', 'equalto', 'generic_worker')|list %} {% set generic_workers = matrix_nginx_proxy_synapse_workers_list | selectattr('type', 'equalto', 'generic_worker') | list %}
{% set media_repository_workers = matrix_nginx_proxy_synapse_workers_list|selectattr('type', 'equalto', 'media_repository')|list %} {% set media_repository_workers = matrix_nginx_proxy_synapse_workers_list | selectattr('type', 'equalto', 'media_repository') | list %}
{% set user_dir_workers = matrix_nginx_proxy_synapse_workers_list|selectattr('type', 'equalto', 'user_dir')|list %} {% set user_dir_workers = matrix_nginx_proxy_synapse_workers_list | selectattr('type', 'equalto', 'user_dir') | list %}
{% set frontend_proxy_workers = matrix_nginx_proxy_synapse_workers_list|selectattr('type', 'equalto', 'frontend_proxy')|list %} {% set frontend_proxy_workers = matrix_nginx_proxy_synapse_workers_list | selectattr('type', 'equalto', 'frontend_proxy') | list %}
{% if matrix_nginx_proxy_synapse_workers_enabled %} {% if matrix_nginx_proxy_synapse_workers_enabled %}
{% if matrix_nginx_proxy_synapse_cache_enabled %} {% if matrix_nginx_proxy_synapse_cache_enabled %}
proxy_cache_path {{ matrix_nginx_proxy_synapse_cache_path }} levels=1:2 keys_zone={{ matrix_nginx_proxy_synapse_cache_keys_zone_name }}:{{ matrix_nginx_proxy_synapse_cache_keys_zone_size }} inactive={{ matrix_nginx_proxy_synapse_cache_inactive_time }} max_size={{ matrix_nginx_proxy_synapse_cache_max_size_mb }}m; proxy_cache_path {{ matrix_nginx_proxy_synapse_cache_path }} levels=1:2 keys_zone={{ matrix_nginx_proxy_synapse_cache_keys_zone_name }}:{{ matrix_nginx_proxy_synapse_cache_keys_zone_size }} inactive={{ matrix_nginx_proxy_synapse_cache_inactive_time }} max_size={{ matrix_nginx_proxy_synapse_cache_max_size_mb }}m;

@ -45,4 +45,4 @@ matrix_ntfy_configuration_extension: "{{ matrix_ntfy_configuration_extension_yam
# Holds the final ntfy configuration (a combination of the default and its extension). # Holds the final ntfy configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_ntfy_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_ntfy_configuration_yaml`.
matrix_ntfy_configuration: "{{ matrix_ntfy_configuration_yaml | from_yaml|combine(matrix_ntfy_configuration_extension, recursive=True) }}" matrix_ntfy_configuration: "{{ matrix_ntfy_configuration_yaml | from_yaml | combine(matrix_ntfy_configuration_extension, recursive=True) }}"

@ -27,7 +27,7 @@
- name: Determine existing Postgres version (make sense of PG_VERSION file) - name: Determine existing Postgres version (make sense of PG_VERSION file)
ansible.builtin.set_fact: ansible.builtin.set_fact:
matrix_postgres_backup_detected_version: "{{ result_pg_version['content']|b64decode|replace('\n', '') }}" matrix_postgres_backup_detected_version: "{{ result_pg_version['content'] | b64decode | replace('\n', '') }}"
when: matrix_postgres_backup_detected_existing | bool when: matrix_postgres_backup_detected_existing | bool
- name: Determine corresponding Docker image to detected version (assume default of latest) - name: Determine corresponding Docker image to detected version (assume default of latest)

@ -33,6 +33,7 @@
{{ matrix_postgres_docker_image_to_use }} {{ matrix_postgres_docker_image_to_use }}
-c -c
'psql -h {{ matrix_postgres_connection_hostname }} --file=/matrix-postgres-init-additional-db-user-and-role.sql' 'psql -h {{ matrix_postgres_connection_hostname }} --file=/matrix-postgres-init-additional-db-user-and-role.sql'
changed_when: true
- name: Delete additional database initialization SQL file for {{ additional_db.name }} - name: Delete additional database initialization SQL file for {{ additional_db.name }}
ansible.builtin.file: ansible.builtin.file:

@ -27,7 +27,7 @@
- name: Determine existing Postgres version (make sense of PG_VERSION file) - name: Determine existing Postgres version (make sense of PG_VERSION file)
ansible.builtin.set_fact: ansible.builtin.set_fact:
matrix_postgres_detected_version: "{{ result_pg_version['content']|b64decode|replace('\n', '') }}" matrix_postgres_detected_version: "{{ result_pg_version['content'] | b64decode | replace('\n', '') }}"
when: matrix_postgres_detected_existing | bool when: matrix_postgres_detected_existing | bool
- name: Determine corresponding Docker image to detected version (assume default of latest) - name: Determine corresponding Docker image to detected version (assume default of latest)

@ -131,6 +131,8 @@
{{ matrix_postgres_pgloader_docker_image }} {{ matrix_postgres_pgloader_docker_image }}
-c -c
'pgloader {{ matrix_postgres_db_migration_request.pgloader_options | default([]) | join(' ') }} /in.db {{ matrix_postgres_db_migration_request.dst }}' 'pgloader {{ matrix_postgres_db_migration_request.pgloader_options | default([]) | join(' ') }} /in.db {{ matrix_postgres_db_migration_request.dst }}'
register: matrix_postgres_migrate_db_to_postgres_import_result
changed_when: matrix_postgres_migrate_db_to_postgres_import_result.rc == 0
- block: - block:
# We can't use `{{ role_path }}` here, neither with `import_tasks`, nor with `include_tasks`, # We can't use `{{ role_path }}` here, neither with `import_tasks`, nor with `include_tasks`,
@ -152,12 +154,16 @@
{{ matrix_postgres_docker_image_to_use }} {{ matrix_postgres_docker_image_to_use }}
psql --host=matrix-postgres --dbname={{ matrix_postgres_db_migration_request.additional_psql_statements_db_name }} --command='{{ item }}' psql --host=matrix-postgres --dbname={{ matrix_postgres_db_migration_request.additional_psql_statements_db_name }} --command='{{ item }}'
with_items: "{{ matrix_postgres_db_migration_request.additional_psql_statements_list }}" with_items: "{{ matrix_postgres_db_migration_request.additional_psql_statements_list }}"
register: matrix_postgres_migrate_db_to_postgres_additional_queries_result
changed_when: matrix_postgres_migrate_db_to_postgres_additional_queries_result.rc == 0
when: "matrix_postgres_db_migration_request.additional_psql_statements_list | default([])|length > 0" when: "matrix_postgres_db_migration_request.additional_psql_statements_list | default([])|length > 0"
- name: Archive {{ matrix_postgres_db_migration_request.engine_old }} database ({{ matrix_postgres_db_migration_request.src }} -> {{ matrix_postgres_db_migration_request.src }}.backup) - name: Archive {{ matrix_postgres_db_migration_request.engine_old }} database ({{ matrix_postgres_db_migration_request.src }} -> {{ matrix_postgres_db_migration_request.src }}.backup)
ansible.builtin.command: ansible.builtin.command:
cmd: "mv {{ matrix_postgres_db_migration_request.src }} {{ matrix_postgres_db_migration_request.src }}.backup" cmd: "mv {{ matrix_postgres_db_migration_request.src }} {{ matrix_postgres_db_migration_request.src }}.backup"
register: matrix_postgres_migrate_db_to_postgres_move_result
changed_when: matrix_postgres_migrate_db_to_postgres_move_result.rc == 0
- name: Inject result - name: Inject result
ansible.builtin.set_fact: ansible.builtin.set_fact:

@ -12,8 +12,8 @@ matrix_prometheus_postgres_exporter_docker_image_force_pull: "{{ matrix_promethe
# A list of extra arguments to pass to the container # A list of extra arguments to pass to the container
matrix_prometheus_postgres_exporter_container_extra_arguments: ["-e PG_EXPORTER_AUTO_DISCOVER_DATABASES=true", matrix_prometheus_postgres_exporter_container_extra_arguments: ["-e PG_EXPORTER_AUTO_DISCOVER_DATABASES=true",
"-e PG_EXPORTER_WEB_LISTEN_ADDRESS=\":{{matrix_prometheus_postgres_exporter_port}}\"", "-e PG_EXPORTER_WEB_LISTEN_ADDRESS=\":{{ matrix_prometheus_postgres_exporter_port }}\"",
"-e DATA_SOURCE_NAME=\"postgresql://{{matrix_prometheus_postgres_exporter_database_username}}:{{matrix_prometheus_postgres_exporter_database_password}}@{{matrix_prometheus_postgres_exporter_database_hostname}}:5432/{{matrix_prometheus_postgres_exporter_database_name}}?sslmode=disable\""] "-e DATA_SOURCE_NAME=\"postgresql://{{ matrix_prometheus_postgres_exporter_database_username }}:{{ matrix_prometheus_postgres_exporter_database_password }}@{{ matrix_prometheus_postgres_exporter_database_hostname }}:5432/{{ matrix_prometheus_postgres_exporter_database_name }}?sslmode=disable\""]
# List of systemd services that matrix-prometheus-postgres-exporter.service depends on # List of systemd services that matrix-prometheus-postgres-exporter.service depends on
matrix_prometheus_postgres_exporter_systemd_required_services_list: ['docker.service'] matrix_prometheus_postgres_exporter_systemd_required_services_list: ['docker.service']

@ -79,4 +79,4 @@ matrix_prometheus_configuration_extension: "{{ matrix_prometheus_configuration_e
# Holds the final configuration (a combination of the default and its extension). # 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_prometheus_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_prometheus_configuration_yaml`.
matrix_prometheus_configuration: "{{ matrix_prometheus_configuration_yaml | from_yaml|combine(matrix_prometheus_configuration_extension, recursive=True) }}" matrix_prometheus_configuration: "{{ matrix_prometheus_configuration_yaml | from_yaml | combine(matrix_prometheus_configuration_extension, recursive=True) }}"

@ -119,4 +119,4 @@ matrix_registration_configuration_extension: "{{ matrix_registration_configurati
# Holds the final matrix-registration configuration (a combination of the default and its extension). # Holds the final matrix-registration configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_registration_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_registration_configuration_yaml`.
matrix_registration_configuration: "{{ matrix_registration_configuration_yaml | from_yaml|combine(matrix_registration_configuration_extension, recursive=True) }}" matrix_registration_configuration: "{{ matrix_registration_configuration_yaml | from_yaml | combine(matrix_registration_configuration_extension, recursive=True) }}"

@ -73,4 +73,4 @@ matrix_sygnal_configuration_extension: "{{ matrix_sygnal_configuration_extension
# Holds the final sygnal configuration (a combination of the default and its extension). # Holds the final sygnal configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_sygnal_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_sygnal_configuration_yaml`.
matrix_sygnal_configuration: "{{ matrix_sygnal_configuration_yaml | from_yaml|combine(matrix_sygnal_configuration_extension, recursive=True) }}" matrix_sygnal_configuration: "{{ matrix_sygnal_configuration_yaml | from_yaml | combine(matrix_sygnal_configuration_extension, recursive=True) }}"

@ -523,7 +523,7 @@ matrix_synapse_ext_password_provider_shared_secret_auth_m_login_password_support
matrix_synapse_ext_password_provider_shared_secret_auth_com_devture_shared_secret_auth_support_enabled: false matrix_synapse_ext_password_provider_shared_secret_auth_com_devture_shared_secret_auth_support_enabled: false
matrix_synapse_ext_password_provider_shared_secret_config: "{{ matrix_synapse_ext_password_provider_shared_secret_config_yaml | from_yaml }}" matrix_synapse_ext_password_provider_shared_secret_config: "{{ matrix_synapse_ext_password_provider_shared_secret_config_yaml | from_yaml }}"
matrix_synapse_ext_password_provider_shared_secret_config_yaml: | matrix_synapse_ext_password_provider_shared_secret_config_yaml: |
shared_secret: {{ matrix_synapse_ext_password_provider_shared_secret_auth_shared_secret|string | to_json }} shared_secret: {{ matrix_synapse_ext_password_provider_shared_secret_auth_shared_secret | string | to_json }}
m_login_password_support_enabled: {{ matrix_synapse_ext_password_provider_shared_secret_auth_m_login_password_support_enabled | to_json }} m_login_password_support_enabled: {{ matrix_synapse_ext_password_provider_shared_secret_auth_m_login_password_support_enabled | to_json }}
com_devture_shared_secret_auth_support_enabled: {{ matrix_synapse_ext_password_provider_shared_secret_auth_com_devture_shared_secret_auth_support_enabled | to_json }} com_devture_shared_secret_auth_support_enabled: {{ matrix_synapse_ext_password_provider_shared_secret_auth_com_devture_shared_secret_auth_support_enabled | to_json }}
@ -682,4 +682,4 @@ matrix_synapse_configuration_extension: "{{ matrix_synapse_configuration_extensi
# Holds the final Synapse configuration (a combination of the default and its extension). # Holds the final Synapse configuration (a combination of the default and its extension).
# You most likely don't need to touch this variable. Instead, see `matrix_synapse_configuration_yaml`. # You most likely don't need to touch this variable. Instead, see `matrix_synapse_configuration_yaml`.
matrix_synapse_configuration: "{{ matrix_synapse_configuration_yaml | from_yaml|combine(matrix_synapse_configuration_extension, recursive=True) }}" matrix_synapse_configuration: "{{ matrix_synapse_configuration_yaml | from_yaml | combine(matrix_synapse_configuration_extension, recursive=True) }}"

@ -29,3 +29,5 @@
- name: Register user - name: Register user
ansible.builtin.command: "{{ matrix_local_bin_path }}/matrix-synapse-register-user {{ username|quote }} {{ password|quote }} {{ '1' if admin == 'yes' else '0' }}" ansible.builtin.command: "{{ matrix_local_bin_path }}/matrix-synapse-register-user {{ username|quote }} {{ password|quote }} {{ '1' if admin == 'yes' else '0' }}"
register: matrix_synapse_register_user_result
changed_when: matrix_synapse_register_user_result.rc == 0

@ -21,6 +21,7 @@
async: "{{ matrix_synapse_rust_synapse_compress_state_compress_room_time }}" async: "{{ matrix_synapse_rust_synapse_compress_state_compress_room_time }}"
poll: 10 poll: 10
register: matrix_synapse_rust_synapse_compress_state_compress_room_command_result register: matrix_synapse_rust_synapse_compress_state_compress_room_command_result
changed_when: matrix_synapse_rust_synapse_compress_state_compress_room_command_result.rc == 0
- ansible.builtin.debug: var="matrix_synapse_rust_synapse_compress_state_compress_room_command_result" - ansible.builtin.debug: var="matrix_synapse_rust_synapse_compress_state_compress_room_command_result"
@ -43,6 +44,7 @@
async: "{{ matrix_synapse_rust_synapse_compress_state_psql_import_time }}" async: "{{ matrix_synapse_rust_synapse_compress_state_psql_import_time }}"
poll: 10 poll: 10
register: matrix_synapse_rust_synapse_compress_state_psql_import_command_result register: matrix_synapse_rust_synapse_compress_state_psql_import_command_result
changed_when: matrix_synapse_rust_synapse_compress_state_psql_import_command_result.rc == 0
- name: Clean up - name: Clean up
ansible.builtin.file: ansible.builtin.file:

@ -70,6 +70,7 @@
async: "{{ matrix_synapse_rust_synapse_compress_state_find_rooms_command_wait_time }}" async: "{{ matrix_synapse_rust_synapse_compress_state_find_rooms_command_wait_time }}"
poll: 10 poll: 10
register: matrix_synapse_rust_synapse_compress_state_find_rooms_command_result register: matrix_synapse_rust_synapse_compress_state_find_rooms_command_result
changed_when: false
# We expect the output to be like this: # We expect the output to be like this:
# #

@ -32,6 +32,7 @@
- name: Check if Synapse Docker image exists - name: Check if Synapse Docker image exists
ansible.builtin.command: "{{ matrix_host_command_docker }} images --quiet --filter 'reference={{ matrix_synapse_docker_image }}'" ansible.builtin.command: "{{ matrix_host_command_docker }} images --quiet --filter 'reference={{ matrix_synapse_docker_image }}'"
register: matrix_synapse_docker_image_check_result register: matrix_synapse_docker_image_check_result
changed_when: false
# Invoking the `docker build` command here, instead of calling the `docker_image` Ansible module, # Invoking the `docker build` command here, instead of calling the `docker_image` Ansible module,
# because the latter does not support BuildKit. # because the latter does not support BuildKit.

@ -12,7 +12,7 @@
port: "{{ matrix_synapse_workers_generic_workers_port_range_start + item }}" port: "{{ matrix_synapse_workers_generic_workers_port_range_start + item }}"
metrics_port: "{{ matrix_synapse_workers_generic_workers_metrics_range_start + item }}" metrics_port: "{{ matrix_synapse_workers_generic_workers_metrics_range_start + item }}"
register: "matrix_synapse_workers_list_results_generic_workers" register: "matrix_synapse_workers_list_results_generic_workers"
loop: "{{ range(0, matrix_synapse_workers_generic_workers_count|int) | list }}" loop: "{{ range(0, matrix_synapse_workers_generic_workers_count | int) | list }}"
- name: Build federation sender workers - name: Build federation sender workers
ansible.builtin.set_fact: ansible.builtin.set_fact:
@ -22,7 +22,7 @@
port: 0 port: 0
metrics_port: "{{ matrix_synapse_workers_federation_sender_workers_metrics_range_start + item }}" metrics_port: "{{ matrix_synapse_workers_federation_sender_workers_metrics_range_start + item }}"
register: "matrix_synapse_workers_list_results_federation_sender_workers" register: "matrix_synapse_workers_list_results_federation_sender_workers"
loop: "{{ range(0, matrix_synapse_workers_federation_sender_workers_count|int) | list }}" loop: "{{ range(0, matrix_synapse_workers_federation_sender_workers_count | int) | list }}"
# This type of worker can only have a count of 1, at most # This type of worker can only have a count of 1, at most
- name: Build pusher workers - name: Build pusher workers
@ -33,7 +33,7 @@
port: 0 port: 0
metrics_port: "{{ matrix_synapse_workers_pusher_workers_metrics_range_start + item }}" metrics_port: "{{ matrix_synapse_workers_pusher_workers_metrics_range_start + item }}"
register: "matrix_synapse_workers_list_results_pusher_workers" register: "matrix_synapse_workers_list_results_pusher_workers"
loop: "{{ range(0, matrix_synapse_workers_pusher_workers_count|int) | list }}" loop: "{{ range(0, matrix_synapse_workers_pusher_workers_count | int) | list }}"
# This type of worker can only have a count of 1, at most # This type of worker can only have a count of 1, at most
- name: Build appservice workers - name: Build appservice workers
@ -44,7 +44,7 @@
port: 0 port: 0
metrics_port: "{{ matrix_synapse_workers_appservice_workers_metrics_range_start + item }}" metrics_port: "{{ matrix_synapse_workers_appservice_workers_metrics_range_start + item }}"
register: "matrix_synapse_workers_list_results_appservice_workers" register: "matrix_synapse_workers_list_results_appservice_workers"
loop: "{{ range(0, matrix_synapse_workers_appservice_workers_count|int) | list }}" loop: "{{ range(0, matrix_synapse_workers_appservice_workers_count | int) | list }}"
- name: Build media_repository workers - name: Build media_repository workers
ansible.builtin.set_fact: ansible.builtin.set_fact:
@ -54,7 +54,7 @@
port: "{{ matrix_synapse_workers_media_repository_workers_port_range_start + item }}" port: "{{ matrix_synapse_workers_media_repository_workers_port_range_start + item }}"
metrics_port: "{{ matrix_synapse_workers_media_repository_workers_metrics_range_start + item }}" metrics_port: "{{ matrix_synapse_workers_media_repository_workers_metrics_range_start + item }}"
register: "matrix_synapse_workers_list_results_media_repository_workers" register: "matrix_synapse_workers_list_results_media_repository_workers"
loop: "{{ range(0, matrix_synapse_workers_media_repository_workers_count|int) | list }}" loop: "{{ range(0, matrix_synapse_workers_media_repository_workers_count | int) | list }}"
- name: Build frontend_proxy workers - name: Build frontend_proxy workers
ansible.builtin.set_fact: ansible.builtin.set_fact:
@ -64,7 +64,7 @@
port: "{{ matrix_synapse_workers_frontend_proxy_workers_port_range_start + item }}" port: "{{ matrix_synapse_workers_frontend_proxy_workers_port_range_start + item }}"
metrics_port: "{{ matrix_synapse_workers_frontend_proxy_workers_metrics_range_start + item }}" metrics_port: "{{ matrix_synapse_workers_frontend_proxy_workers_metrics_range_start + item }}"
register: "matrix_synapse_workers_list_results_frontend_proxy_workers" register: "matrix_synapse_workers_list_results_frontend_proxy_workers"
loop: "{{ range(0, matrix_synapse_workers_frontend_proxy_workers_count|int) | list }}" loop: "{{ range(0, matrix_synapse_workers_frontend_proxy_workers_count | int) | list }}"
- ansible.builtin.set_fact: - ansible.builtin.set_fact:
matrix_synapse_dynamic_workers_list: "{{ matrix_synapse_dynamic_workers_list | default([]) + [item.ansible_facts.worker] }}" matrix_synapse_dynamic_workers_list: "{{ matrix_synapse_dynamic_workers_list | default([]) + [item.ansible_facts.worker] }}"

@ -7,7 +7,7 @@
ansible.builtin.service: ansible.builtin.service:
name: "{{ item.key }}" name: "{{ item.key }}"
state: stopped state: stopped
with_dict: "{{ ansible_facts.services | default({})|dict2items|selectattr('key', 'match', 'matrix-synapse-worker-.+\\.service')|list|items2dict }}" with_dict: "{{ ansible_facts.services | default({}) | dict2items | selectattr('key', 'match', 'matrix-synapse-worker-.+\\.service') | list | items2dict }}"
when: "item.value['status'] != 'not-found'" # see https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1461 when: "item.value['status'] != 'not-found'" # see https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1461
- name: Find worker configs to be cleaned - name: Find worker configs to be cleaned

@ -38,6 +38,9 @@
- name: Generate password hash - name: Generate password hash
ansible.builtin.shell: "{{ matrix_host_command_docker }} exec matrix-synapse /usr/local/bin/hash_password -c /data/homeserver.yaml -p {{ password|quote }}" ansible.builtin.shell: "{{ matrix_host_command_docker }} exec matrix-synapse /usr/local/bin/hash_password -c /data/homeserver.yaml -p {{ password|quote }}"
register: password_hash register: password_hash
changed_when: false
- name: Update user password hash - name: Update user password hash
ansible.builtin.command: "{{ matrix_local_bin_path }}/matrix-postgres-update-user-password-hash {{ username|quote }} {{ password_hash.stdout|quote }}" ansible.builtin.command: "{{ matrix_local_bin_path }}/matrix-postgres-update-user-password-hash {{ username|quote }} {{ password_hash.stdout|quote }}"
register: matrix_synapse_update_user_password_result
changed_when: matrix_synapse_update_user_password_result.rc == 0

@ -352,13 +352,13 @@ worker_app: synapse.app.homeserver
# thx https://oznetnerd.com/2017/04/18/jinja2-selectattr-filter/ # thx https://oznetnerd.com/2017/04/18/jinja2-selectattr-filter/
# reduce the main worker's offerings to core homeserver business # reduce the main worker's offerings to core homeserver business
{% if matrix_synapse_workers_enabled_list|selectattr('type', 'equalto', 'federation_sender')|list %} {% if matrix_synapse_workers_enabled_list | selectattr('type', 'equalto', 'federation_sender') | list %}
send_federation: false send_federation: false
{% endif %} {% endif %}
{% if matrix_synapse_workers_enabled_list|selectattr('type', 'equalto', 'media_repository')|list %} {% if matrix_synapse_workers_enabled_list | selectattr('type', 'equalto', 'media_repository') | list %}
enable_media_repo: false enable_media_repo: false
{% endif %} {% endif %}
{% if matrix_synapse_workers_enabled_list|selectattr('type', 'equalto', 'pusher')|list %} {% if matrix_synapse_workers_enabled_list | selectattr('type', 'equalto', 'pusher') | list %}
start_pushers: false start_pushers: false
{% endif %} {% endif %}
@ -870,8 +870,8 @@ database:
name: "psycopg2" name: "psycopg2"
txn_limit: {{ matrix_synapse_database_txn_limit }} txn_limit: {{ matrix_synapse_database_txn_limit }}
args: args:
user: {{ matrix_synapse_database_user|string|to_json }} user: {{ matrix_synapse_database_user | string|to_json }}
password: {{ matrix_synapse_database_password|string|to_json }} password: {{ matrix_synapse_database_password | string|to_json }}
database: "{{ matrix_synapse_database_database }}" database: "{{ matrix_synapse_database_database }}"
host: "{{ matrix_synapse_database_host }}" host: "{{ matrix_synapse_database_host }}"
port: {{ matrix_synapse_database_port }} port: {{ matrix_synapse_database_port }}
@ -1256,7 +1256,7 @@ turn_uris: {{ matrix_synapse_turn_uris|to_json }}
# The shared secret used to compute passwords for the TURN server # The shared secret used to compute passwords for the TURN server
# #
turn_shared_secret: {{ matrix_synapse_turn_shared_secret|string|to_json }} turn_shared_secret: {{ matrix_synapse_turn_shared_secret | string|to_json }}
# The Username and password if the TURN server needs them and # The Username and password if the TURN server needs them and
# does not use a token # does not use a token
@ -1393,7 +1393,7 @@ registration_requires_token: {{ matrix_synapse_registration_requires_token|to_js
# If set, allows registration of standard or admin accounts by anyone who # If set, allows registration of standard or admin accounts by anyone who
# has the shared secret, even if registration is otherwise disabled. # has the shared secret, even if registration is otherwise disabled.
# #
registration_shared_secret: {{ matrix_synapse_registration_shared_secret|string|to_json }} registration_shared_secret: {{ matrix_synapse_registration_shared_secret | string|to_json }}
# Set the number of bcrypt rounds used to generate password hash. # Set the number of bcrypt rounds used to generate password hash.
# Larger numbers increase the work factor needed to generate the hash. # Larger numbers increase the work factor needed to generate the hash.
@ -1657,13 +1657,13 @@ app_service_config_files: {{ matrix_synapse_app_service_config_files|to_json }}
# the registration_shared_secret is used, if one is given; otherwise, # the registration_shared_secret is used, if one is given; otherwise,
# a secret key is derived from the signing key. # a secret key is derived from the signing key.
# #
macaroon_secret_key: {{ matrix_synapse_macaroon_secret_key|string|to_json }} macaroon_secret_key: {{ matrix_synapse_macaroon_secret_key | string|to_json }}
# a secret which is used to calculate HMACs for form values, to stop # a secret which is used to calculate HMACs for form values, to stop
# falsification of values. Must be specified for the User Consent # falsification of values. Must be specified for the User Consent
# forms to work. # forms to work.
# #
form_secret: {{ matrix_synapse_form_secret|string|to_json }} form_secret: {{ matrix_synapse_form_secret | string|to_json }}
## Signing Keys ## ## Signing Keys ##
@ -2263,7 +2263,7 @@ password_config:
# Uncomment and change to a secret random string for extra security. # Uncomment and change to a secret random string for extra security.
# DO NOT CHANGE THIS AFTER INITIAL SETUP! # DO NOT CHANGE THIS AFTER INITIAL SETUP!
# #
pepper: {{ matrix_synapse_password_config_pepper|string|to_json }} pepper: {{ matrix_synapse_password_config_pepper | string|to_json }}
# Define and enforce a password policy. Each parameter is optional. # Define and enforce a password policy. Each parameter is optional.
# This is an implementation of MSC2000. # This is an implementation of MSC2000.
@ -2330,7 +2330,7 @@ email:
# The hostname of the outgoing SMTP server to use. Defaults to 'localhost'. # The hostname of the outgoing SMTP server to use. Defaults to 'localhost'.
# #
#smtp_host: mail.server #smtp_host: mail.server
smtp_host: {{ matrix_synapse_email_smtp_host|string|to_json }} smtp_host: {{ matrix_synapse_email_smtp_host | string|to_json }}
# The port on the mail server for outgoing SMTP. Defaults to 25. # The port on the mail server for outgoing SMTP. Defaults to 25.
# #
@ -2340,8 +2340,8 @@ email:
# Username/password for authentication to the SMTP server. By default, no # Username/password for authentication to the SMTP server. By default, no
# authentication is attempted. # authentication is attempted.
{% if matrix_synapse_email_smtp_user %} {% if matrix_synapse_email_smtp_user %}
smtp_user: {{ matrix_synapse_email_smtp_user|string|to_json }} smtp_user: {{ matrix_synapse_email_smtp_user | string|to_json }}
smtp_pass: {{ matrix_synapse_email_smtp_pass|string|to_json }} smtp_pass: {{ matrix_synapse_email_smtp_pass | string|to_json }}
{% endif %} {% endif %}
# Uncomment the following to require TLS transport security for SMTP. # Uncomment the following to require TLS transport security for SMTP.
@ -2371,7 +2371,7 @@ email:
# trailing 's'. # trailing 's'.
# #
#notif_from: "Your Friendly %(app)s homeserver <noreply@example.com>" #notif_from: "Your Friendly %(app)s homeserver <noreply@example.com>"
notif_from: {{ matrix_synapse_email_notif_from|string|to_json }} notif_from: {{ matrix_synapse_email_notif_from | string|to_json }}
# app_name defines the default value for '%(app)s' in notif_from and email # app_name defines the default value for '%(app)s' in notif_from and email
# subjects. It defaults to 'Matrix'. # subjects. It defaults to 'Matrix'.
@ -2398,7 +2398,7 @@ email:
# supported for backwards-compatibility but is now deprecated.) # supported for backwards-compatibility but is now deprecated.)
# #
#client_base_url: "http://localhost/riot" #client_base_url: "http://localhost/riot"
client_base_url: {{ matrix_synapse_email_client_base_url|string|to_json }} client_base_url: {{ matrix_synapse_email_client_base_url | string|to_json }}
# Configure the time that a validation email will expire after sending. # Configure the time that a validation email will expire after sending.
# Defaults to 1h. # Defaults to 1h.
@ -2409,7 +2409,7 @@ email:
# to the identity server as the org.matrix.web_client_location key. Defaults # to the identity server as the org.matrix.web_client_location key. Defaults
# to unset, giving no guidance to the identity server. # to unset, giving no guidance to the identity server.
# #
invite_client_location: {{ matrix_synapse_email_invite_client_location|string|to_json }} invite_client_location: {{ matrix_synapse_email_invite_client_location | string|to_json }}
# Subjects to use when sending emails from Synapse. # Subjects to use when sending emails from Synapse.
# #
@ -2510,7 +2510,7 @@ password_providers:
{% if matrix_synapse_ext_password_provider_rest_auth_enabled %} {% if matrix_synapse_ext_password_provider_rest_auth_enabled %}
- module: "rest_auth_provider.RestAuthProvider" - module: "rest_auth_provider.RestAuthProvider"
config: config:
endpoint: {{ matrix_synapse_ext_password_provider_rest_auth_endpoint|string|to_json }} endpoint: {{ matrix_synapse_ext_password_provider_rest_auth_endpoint | string|to_json }}
policy: policy:
registration: registration:
username: username:
@ -2525,20 +2525,20 @@ password_providers:
- module: "ldap_auth_provider.LdapAuthProvider" - module: "ldap_auth_provider.LdapAuthProvider"
config: config:
enabled: true enabled: true
uri: {{ matrix_synapse_ext_password_provider_ldap_uri|string|to_json }} uri: {{ matrix_synapse_ext_password_provider_ldap_uri | string|to_json }}
start_tls: {{ matrix_synapse_ext_password_provider_ldap_start_tls|to_json }} start_tls: {{ matrix_synapse_ext_password_provider_ldap_start_tls|to_json }}
base: {{ matrix_synapse_ext_password_provider_ldap_base|string|to_json }} base: {{ matrix_synapse_ext_password_provider_ldap_base | string|to_json }}
active_directory: {{ matrix_synapse_ext_password_provider_ldap_active_directory|to_json }} active_directory: {{ matrix_synapse_ext_password_provider_ldap_active_directory|to_json }}
default_domain: {{ matrix_synapse_ext_password_provider_ldap_default_domain|string|to_json }} default_domain: {{ matrix_synapse_ext_password_provider_ldap_default_domain | string|to_json }}
attributes: attributes:
uid: {{ matrix_synapse_ext_password_provider_ldap_attributes_uid|string|to_json }} uid: {{ matrix_synapse_ext_password_provider_ldap_attributes_uid | string|to_json }}
mail: {{ matrix_synapse_ext_password_provider_ldap_attributes_mail|string|to_json }} mail: {{ matrix_synapse_ext_password_provider_ldap_attributes_mail | string|to_json }}
name: {{ matrix_synapse_ext_password_provider_ldap_attributes_name|string|to_json }} name: {{ matrix_synapse_ext_password_provider_ldap_attributes_name | string|to_json }}
{% if matrix_synapse_ext_password_provider_ldap_bind_dn %} {% if matrix_synapse_ext_password_provider_ldap_bind_dn %}
bind_dn: {{ matrix_synapse_ext_password_provider_ldap_bind_dn|string|to_json }} bind_dn: {{ matrix_synapse_ext_password_provider_ldap_bind_dn | string|to_json }}
bind_password: {{ matrix_synapse_ext_password_provider_ldap_bind_password|string|to_json }} bind_password: {{ matrix_synapse_ext_password_provider_ldap_bind_password | string|to_json }}
{% endif %} {% endif %}
filter: {{ matrix_synapse_ext_password_provider_ldap_filter|string|to_json }} filter: {{ matrix_synapse_ext_password_provider_ldap_filter | string|to_json }}
{% endif %} {% endif %}
{% endif %} {% endif %}

Loading…
Cancel
Save