mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2024-11-14 10:04:46 +08:00
b37a02720f
Putting each client into its own network was good for isolation, but it's quite wasteful in terms of the container network pool.
66 lines
3.9 KiB
YAML
66 lines
3.9 KiB
YAML
---
|
|
|
|
- name: Fail if required Element settings not defined
|
|
ansible.builtin.fail:
|
|
msg: >
|
|
You need to define a required configuration setting (`{{ item }}`) for using Element.
|
|
when: "vars[item] == ''"
|
|
with_items:
|
|
- matrix_client_element_default_hs_url
|
|
- matrix_client_element_container_network
|
|
|
|
- name: Fail if Element location sharing enabled, but no tile server defined
|
|
ansible.builtin.fail:
|
|
msg: >-
|
|
You need to define at least one map tile server in matrix_client_element_location_sharing_map_style_content_sources_localsource_tiles list
|
|
when:
|
|
- matrix_client_element_location_sharing_enabled | bool
|
|
- matrix_client_element_location_sharing_map_style_content_sources_localsource_tiles | length == 0
|
|
|
|
- name: (Deprecation) Catch and report riot-web variables
|
|
ansible.builtin.fail:
|
|
msg: >-
|
|
Riot has been renamed to Element (https://element.io/blog/welcome-to-element/).
|
|
The playbook will migrate your existing configuration and data automatically, but you need to adjust variable names.
|
|
Please change your configuration (vars.yml) to rename all riot-web variables (`{{ item.old }}` -> `{{ item.new }}`).
|
|
Also note that DNS configuration changes may be necessary.
|
|
when: "vars | dict2items | selectattr('key', 'match', item.old) | list | items2dict"
|
|
with_items:
|
|
- {'old': 'matrix_riot_web_.*', 'new': 'matrix_client_element_.*'}
|
|
|
|
- name: (Deprecation) Catch and report renamed element-web settings
|
|
ansible.builtin.fail:
|
|
msg: >-
|
|
Your configuration contains a variable, which now has a different name.
|
|
Please change your configuration to rename the variable (`{{ item.old }}` -> `{{ item.new }}`).
|
|
when: "item.old in vars"
|
|
with_items:
|
|
- {'old': 'matrix_client_element_showLabsSettings', 'new': 'matrix_client_element_show_lab_settings'}
|
|
- {'old': 'matrix_client_element_permalinkPrefix', 'new': 'matrix_client_element_permalink_prefix'}
|
|
- {'old': 'matrix_client_element_roomdir_servers', 'new': 'matrix_client_element_room_directory_servers'}
|
|
- {'old': 'matrix_client_element_settingDefaults_custom_themes', 'new': 'matrix_client_element_setting_defaults_custom_themes'}
|
|
- {'old': 'matrix_client_element_branding_authFooterLinks', 'new': 'matrix_client_element_branding_auth_footer_links'}
|
|
- {'old': 'matrix_client_element_branding_authHeaderLogoUrl', 'new': 'matrix_client_element_branding_auth_header_logo_url'}
|
|
- {'old': 'matrix_client_element_branding_welcomeBackgroundUrl', 'new': 'matrix_client_element_branding_welcome_background_url'}
|
|
- {'old': 'matrix_client_element_jitsi_preferredDomain', 'new': 'matrix_client_element_jitsi_preferred_domain'}
|
|
|
|
- when: matrix_client_element_container_labels_traefik_enabled | bool
|
|
block:
|
|
- name: Fail if required matrix-client-element Traefik settings not defined
|
|
ansible.builtin.fail:
|
|
msg: >-
|
|
You need to define a required configuration setting (`{{ item }}`).
|
|
when: "vars[item] == ''"
|
|
with_items:
|
|
- matrix_client_element_container_labels_traefik_hostname
|
|
- matrix_client_element_container_labels_traefik_path_prefix
|
|
|
|
# We ensure it doesn't end with a slash, because we handle both (slash and no-slash).
|
|
# Knowing that `matrix_client_element_container_labels_traefik_path_prefix` does not end with a slash
|
|
# ensures we know how to set these routes up without having to do "does it end with a slash" checks elsewhere.
|
|
- name: Fail if matrix_client_element_container_labels_traefik_path_prefix ends with a slash
|
|
ansible.builtin.fail:
|
|
msg: >-
|
|
matrix_client_element_container_labels_traefik_path_prefix (`{{ matrix_client_element_container_labels_traefik_path_prefix }}`) must either be `/` or not end with a slash (e.g. `/element`).
|
|
when: "matrix_client_element_container_labels_traefik_path_prefix != '/' and matrix_client_element_container_labels_traefik_path_prefix[-1] == '/'"
|