Matrix Docker Ansible eploy
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
 
 

497 řádky
40 KiB

  1. # SPDX-FileCopyrightText: 2022 - 2025 Slavi Pantaleev
  2. # SPDX-FileCopyrightText: 2024 - 2025 MDAD project contributors
  3. # SPDX-FileCopyrightText: 2024 - 2025 Suguru Hirahara
  4. #
  5. # SPDX-License-Identifier: AGPL-3.0-or-later
  6. ---
  7. - name: (Deprecation) Catch and report renamed Matrix playbook settings
  8. ansible.builtin.fail:
  9. msg: >-
  10. Your configuration contains a variable, which now has a different name.
  11. Please change your configuration to rename the variable (`{{ item.old }}` -> `{{ item.new }}`).
  12. when: "item.old in vars"
  13. with_items:
  14. - {'old': 'matrix_vars_yml_snapshotting_enabled', 'new': 'devture_playbook_state_preserver_vars_preservation_enabled'}
  15. - {'old': 'matrix_vars_yml_snapshotting_src', 'new': 'devture_playbook_state_preserver_vars_preservation_src'}
  16. - {'old': 'matrix_playbook_commit_hash_preservation_enabled', 'new': 'devture_playbook_state_preserver_commit_hash_preservation_enabled'}
  17. - {'old': 'matrix_ntpd_package', 'new': 'devture_timesync_ntpd_package'}
  18. - {'old': 'matrix_ntpd_service', 'new': 'devture_timesync_ntpd_service'}
  19. - {'old': 'matrix_systemd_unit_home_path', 'new': 'devture_systemd_docker_base_systemd_unit_home_path'}
  20. - {'old': 'matrix_systemd_path', 'new': 'devture_systemd_docker_base_systemd_path'}
  21. - {'old': 'matrix_host_command_docker', 'new': 'devture_systemd_docker_base_host_command_docker'}
  22. - {'old': 'matrix_host_command_sh', 'new': 'devture_systemd_docker_base_host_command_sh'}
  23. - {'old': 'matrix_host_command_systemctl', 'new': 'devture_systemd_docker_base_host_command_systemctl'}
  24. - {'old': 'matrix_container_retries_count', 'new': 'devture_playbook_help_container_retries_count'}
  25. - {'old': 'matrix_container_retries_delay', 'new': 'devture_playbook_help_container_retries_delay'}
  26. - {'old': 'matrix_geturl_retries_count', 'new': 'devture_playbook_help_geturl_retries_count'}
  27. - {'old': 'matrix_geturl_retries_delay', 'new': 'devture_playbook_help_geturl_retries_delay'}
  28. - {'old': 'matrix_nginx_proxy_synapse_cache_path', 'new': 'matrix_synapse_reverse_proxy_companion_synapse_cache_path'}
  29. - {'old': 'matrix_nginx_proxy_synapse_cache_enabled', 'new': 'matrix_synapse_reverse_proxy_companion_synapse_cache_enabled'}
  30. - {'old': 'matrix_docker_installation_enabled', 'new': 'matrix_playbook_docker_installation_enabled'}
  31. - {'old': 'matrix_docker_package_name', 'new': '<Not applicable. Docker is installed using https://github.com/geerlingguy/ansible-role-docker now>'}
  32. - {'old': 'matrix_systemd_services_list', 'new': 'devture_systemd_service_manager_services_list_additional'}
  33. - {'old': 'matrix_common_after_systemd_service_start_wait_for_timeout_seconds', 'new': 'devture_systemd_service_manager_up_verification_delay_seconds'}
  34. - {'old': 'matrix_systemd_services_autostart_enabled', 'new': 'devture_systemd_service_manager_services_autostart_enabled'}
  35. - {'old': 'matrix_prometheus_node_exporter_metrics_proxying_enabled', 'new': '<prometheus_node_exporter_container_labels_traefik_enabled or matrix_metrics_exposure_enabled>'}
  36. - {'old': 'matrix_prometheus_postgres_exporter_metrics_proxying_enabled', 'new': '<prometheus_postgres_exporter_container_labels_traefik_enabled or matrix_metrics_exposure_enabled>'}
  37. - {'old': 'matrix_playbook_traefik_certs_dumper_role_enabled', 'new': 'traefik_certs_dumper_enabled'}
  38. - {'old': 'matrix_playbook_traefik_role_enabled', 'new': 'traefik_enabled'}
  39. # Most important variables from the old Prometheus role here, for people who miss the changelog entry
  40. - {'old': 'matrix_prometheus_enabled', 'new': 'prometheus_enabled'}
  41. - {'old': 'matrix_prometheus_process_default_arguments', 'new': 'prometheus_process_default_arguments'}
  42. - {'old': 'matrix_prometheus_process_extra_arguments', 'new': 'prometheus_process_extra_arguments'}
  43. - {'old': 'matrix_prometheus_configuration_extension_yaml', 'new': 'prometheus_configuration_extension_yaml'}
  44. - {'old': 'matrix_prometheus_scraper_synapse_enabled', 'new': 'matrix_prometheus_services_connect_synapse_enabled'}
  45. - {'old': 'matrix_prometheus_scraper_synapse_targets', 'new': '<superseded by matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs_target>'}
  46. - {'old': 'matrix_prometheus_scraper_synapse_workers_enabled_list', 'new': 'matrix_prometheus_services_connect_scraper_synapse_workers_enabled_list'}
  47. - {'old': 'matrix_prometheus_scraper_synapse_rules_synapse_tag', 'new': 'matrix_prometheus_services_connect_synapse_rules_download_synapse_tag'}
  48. - {'old': 'matrix_prometheus_scraper_node_enabled', 'new': 'prometheus_self_node_scraper_enabled'}
  49. - {'old': 'matrix_prometheus_scraper_node_targets', 'new': '<superseded by prometheus_self_node_scraper_static_configs_target>'}
  50. - {'old': 'matrix_prometheus_scraper_postgres_enabled', 'new': 'matrix_prometheus_services_connect_scraper_postgres_enabled'}
  51. - {'old': 'matrix_prometheus_scraper_postgres_targets', 'new': '<superseded by matrix_prometheus_services_connect_scraper_postgres_static_configs_target>'}
  52. - {'old': 'matrix_prometheus_scraper_hookshot_enabled', 'new': 'matrix_prometheus_services_connect_scraper_hookshot_enabled'}
  53. - {'old': 'matrix_prometheus_scraper_hookshot_targets', 'new': '<superseded by matrix_prometheus_services_connect_scraper_hookshot_static_configs_target>'}
  54. - {'old': 'matrix_prometheus_scraper_nginxlog_enabled', 'new': 'matrix_prometheus_services_connect_scraper_nginxlog_enabled'}
  55. - {'old': 'matrix_prometheus_scraper_nginxlog_server_port', 'new': 'matrix_prometheus_services_connect_scraper_nginxlog_static_configs_target'}
  56. - {'old': 'matrix_prosody_jitsi_max_participants', 'new': 'jitsi_prosody_max_participants'}
  57. - {'old': 'jitsi_require_well_known', 'new': 'jitsi_web_well_known_element_jitsi_enabled'}
  58. - {'old': 'jitsi_wellknown_element_jitsi_json', 'new': 'jitsi_web_well_known_element_jitsi_json'}
  59. - {'old': 'exim_relay_docker_image', 'new': 'exim_relay_container_image'}
  60. - {'old': 'exim_relay_docker_image_name_prefix', 'new': 'exim_relay_container_image_name_prefix'}
  61. - {'old': 'exim_relay_docker_image_force_pull', 'new': 'exim_relay_container_image_force_pull'}
  62. - {'old': 'matrix_playbook_reverse_proxy_traefik_middleware_compession_enabled', 'new': 'matrix_playbook_reverse_proxy_traefik_middleware_compression_enabled'}
  63. - {'old': 'matrix_playbook_reverse_proxy_traefik_middleware_compession_name', 'new': 'matrix_playbook_reverse_proxy_traefik_middleware_compression_name'}
  64. - name: (Deprecation) Catch and report matrix_postgres variables
  65. ansible.builtin.fail:
  66. msg: |-
  67. The matrix-postgres role in the playbook has been replaced with the ansible-role-postgres role (https://github.com/mother-of-all-self-hosting/ansible-role-postgres).
  68. The new role is pretty much the same, but uses differently named variables.
  69. The matrix-postgres-backup role in the playbook has been replaced with the ansible-role-postgres-backup role (https://github.com/mother-of-all-self-hosting/ansible-role-postgres-backup).
  70. The new role is pretty much the same, but uses differently named variables.
  71. Please change your configuration (vars.yml) to rename all `matrix_postgres`-prefixed variables (`matrix_postgres_*` -> `postgres_*`).
  72. The following variables in your configuration need to be renamed: {{ vars | dict2items | selectattr('key', 'match', 'matrix_postgres_.*') | map(attribute='key') | join(', ') }}
  73. when: "vars | dict2items | selectattr('key', 'match', 'matrix_postgres_.*') | list | items2dict"
  74. - name: (Deprecation) Catch and report matrix_mailer_ variables
  75. ansible.builtin.fail:
  76. msg: |-
  77. The matrix-mailer role in the playbook has been replaced with the exim-relay role (https://github.com/mother-of-all-self-hosting/ansible-role-exim-relay).
  78. The new role is pretty much the same, but uses differently named variables.
  79. Please change your configuration (vars.yml) to rename all `matrix_mailer`-prefixed variables (`matrix_mailer_*` -> `exim_relay_*`).
  80. The following variables in your configuration need to be renamed: {{ vars | dict2items | selectattr('key', 'match', 'matrix_mailer_.*') | map(attribute='key') | join(', ') }}
  81. when: "vars | dict2items | selectattr('key', 'match', 'matrix_mailer_.*') | list | items2dict"
  82. - when: matrix_playbook_migration_matrix_prometheus_node_exporter_migration_validation_enabled | bool
  83. block:
  84. - ansible.builtin.set_fact:
  85. matrix_playbook_migration_matrix_prometheus_node_exporter_migration_vars: |-
  86. {{ vars | dict2items | selectattr('key', 'match', 'matrix_prometheus_node_exporter_.*') | list | items2dict }}
  87. - name: (Deprecation) Catch and report matrix_prometheus_node_exporter variables
  88. ansible.builtin.fail:
  89. msg: >-
  90. The matrix-prometheus-node-exporter role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-prometheus-node-exporter.
  91. The new role is compatible with the old one, but uses different names for its variables.
  92. Please change your configuration (vars.yml) to rename all variables (`matrix_prometheus_node_exporter_` -> `prometheus_node_exporter_`).
  93. We found usage of the following variables: {{ matrix_playbook_migration_matrix_prometheus_node_exporter_migration_vars.keys() | join(', ') }}
  94. when: "matrix_playbook_migration_matrix_prometheus_node_exporter_migration_vars | length > 0"
  95. - when: matrix_playbook_migration_matrix_prometheus_postgres_exporter_migration_validation_enabled | bool
  96. block:
  97. - ansible.builtin.set_fact:
  98. matrix_playbook_migration_matrix_prometheus_postgres_exporter_migration_vars: |-
  99. {{ vars | dict2items | selectattr('key', 'match', 'matrix_prometheus_postgres_exporter_.*') | list | items2dict }}
  100. - name: (Deprecation) Catch and report matrix_prometheus_postgres_exporter variables
  101. ansible.builtin.fail:
  102. msg: >-
  103. The matrix-prometheus-postgres-exporter role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-prometheus-postgres-exporter.
  104. The new role is compatible with the old one, but uses different names for its variables.
  105. Please change your configuration (vars.yml) to rename all variables (`matrix_prometheus_postgres_exporter_` -> `prometheus_postgres_exporter_`).
  106. We found usage of the following variables: {{ matrix_playbook_migration_matrix_prometheus_postgres_exporter_migration_vars.keys() | join(', ') }}
  107. when: "matrix_playbook_migration_matrix_prometheus_postgres_exporter_migration_vars | length > 0"
  108. - when: matrix_playbook_migration_matrix_backup_borg_migration_validation_enabled | bool
  109. block:
  110. - ansible.builtin.set_fact:
  111. matrix_playbook_migration_backup_borg_migration_vars: |-
  112. {{ vars | dict2items | selectattr('key', 'match', 'matrix_backup_borg_.*') | list | items2dict }}
  113. - name: (Deprecation) Catch and report matrix_backup_borg variables
  114. ansible.builtin.fail:
  115. msg: >-
  116. The matrix-backup-borg role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-backup_borg.
  117. The new role is compatible with the old one, but uses different names for its variables.
  118. Please change your configuration (vars.yml) to rename all variables (`matrix_backup_borg_` -> `backup_borg_`).
  119. We found usage of the following variables: {{ matrix_playbook_migration_backup_borg_migration_vars.keys() | join(', ') }}
  120. when: "matrix_playbook_migration_backup_borg_migration_vars | length > 0"
  121. - when: matrix_playbook_migration_matrix_grafana_migration_validation_enabled | bool
  122. block:
  123. - ansible.builtin.set_fact:
  124. matrix_playbook_migration_grafana_migration_vars: |-
  125. {{ vars | dict2items | selectattr('key', 'match', 'matrix_grafana_.*') | list | items2dict }}
  126. - name: (Deprecation) Catch and report matrix_grafana variables
  127. ansible.builtin.fail:
  128. msg: >-
  129. The matrix-grafana role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-grafana.
  130. The new role is compatible with the old one, but uses different names for its variables.
  131. Please change your configuration (vars.yml) to rename all variables (`matrix_grafana_` -> `grafana_`).
  132. We found usage of the following variables: {{ matrix_playbook_migration_grafana_migration_vars.keys() | join(', ') }}
  133. when: "matrix_playbook_migration_grafana_migration_vars | length > 0"
  134. - when: matrix_playbook_migration_matrix_ntfy_migration_validation_enabled | bool
  135. block:
  136. - ansible.builtin.set_fact:
  137. matrix_playbook_migration_ntfy_migration_vars: |-
  138. {{ vars | dict2items | selectattr('key', 'match', 'matrix_ntfy_.*') | list | items2dict }}
  139. - name: (Deprecation) Catch and report matrix_ntfy variables
  140. ansible.builtin.fail:
  141. msg: >-
  142. The matrix-ntfy role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-ntfy.
  143. The new role is compatible with the old one, but uses different names for its variables.
  144. Please change your configuration (vars.yml) to rename all variables (`matrix_ntfy_` -> `ntfy_`).
  145. We found usage of the following variables: {{ matrix_playbook_migration_ntfy_migration_vars.keys() | join(', ') }}
  146. when: "matrix_playbook_migration_ntfy_migration_vars | length > 0"
  147. - when: matrix_playbook_migration_matrix_redis_migration_validation_enabled | bool
  148. block:
  149. - ansible.builtin.set_fact:
  150. matrix_playbook_migration_redis_migration_vars: |-
  151. {{ vars | dict2items | selectattr('key', 'match', 'matrix_redis_.*') | list | items2dict }}
  152. - name: (Deprecation) Catch and report matrix_redis variables
  153. ansible.builtin.fail:
  154. msg: >-
  155. The matrix-redis role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-redis.
  156. The new role is compatible with the old one, but uses different names for its variables.
  157. Please change your configuration (vars.yml) to rename all variables (`matrix_redis_` -> `redis_`).
  158. We found usage of the following variables: {{ matrix_playbook_migration_redis_migration_vars.keys() | join(', ') }}
  159. when: "matrix_playbook_migration_redis_migration_vars | length > 0"
  160. - when: matrix_playbook_migration_redis_valkey_migration_validation_enabled | bool
  161. block:
  162. - ansible.builtin.set_fact:
  163. matrix_playbook_migration_redis_migration_vars: |-
  164. {{ vars | dict2items | selectattr('key', 'match', 'redis_.*') | list | items2dict }}
  165. - name: (Deprecation) Catch and report matrix_redis variables
  166. ansible.builtin.fail:
  167. msg: >-
  168. The Redis role that used to be part of this playbook has been superseded by https://github.com/mother-of-all-self-hosting/ansible-role-valkey.
  169. Please change your configuration (vars.yml) to rename all variables (`redis_` -> `valkey_`).
  170. We found usage of the following variables: {{ matrix_playbook_migration_redis_migration_vars.keys() | join(', ') }}
  171. when: "matrix_playbook_migration_redis_migration_vars | length > 0"
  172. - when: matrix_playbook_migration_keydb_valkey_migration_validation_enabled | bool
  173. block:
  174. - ansible.builtin.set_fact:
  175. matrix_playbook_migration_keydb_migration_vars: |-
  176. {{ vars | dict2items | selectattr('key', 'match', 'keydb_.*') | list | items2dict }}
  177. - name: (Deprecation) Catch and report matrix_redis variables
  178. ansible.builtin.fail:
  179. msg: >-
  180. The KeyDB role that used to be part of this playbook has been superseded by https://github.com/mother-of-all-self-hosting/ansible-role-valkey.
  181. Please change your configuration (vars.yml) to rename all variables (`keydb_` -> `valkey_`).
  182. We found usage of the following variables: {{ matrix_playbook_migration_keydb_migration_vars.keys() | join(', ') }}
  183. when: "matrix_playbook_migration_keydb_migration_vars | length > 0"
  184. - when: matrix_playbook_migration_matrix_etherpad_migration_validation_enabled | bool
  185. block:
  186. - ansible.builtin.set_fact:
  187. matrix_playbook_migration_etherpad_migration_vars: |-
  188. {{ vars | dict2items | selectattr('key', 'match', 'matrix_etherpad_.*') | list | items2dict }}
  189. - name: (Deprecation) Catch and report matrix_etherpad variables
  190. ansible.builtin.fail:
  191. msg: >-
  192. The matrix-etherpad role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-etherpad.
  193. The new role is compatible with the old one, but uses different names for its variables.
  194. Please change your configuration (vars.yml) to rename all variables (`matrix_etherpad_` -> `etherpad_`).
  195. We found usage of the following variables: {{ matrix_playbook_migration_etherpad_migration_vars.keys() | join(', ') }}
  196. when: "matrix_playbook_migration_etherpad_migration_vars | length > 0"
  197. - when: matrix_playbook_migration_matrix_aux_migration_validation_enabled | bool
  198. block:
  199. - ansible.builtin.set_fact:
  200. matrix_playbook_migration_aux_migration_vars: |-
  201. {{ vars | dict2items | selectattr('key', 'match', 'matrix_aux_.*') | list | items2dict }}
  202. - name: (Deprecation) Catch and report matrix_aux variables
  203. ansible.builtin.fail:
  204. msg: >-
  205. The matrix-aux role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-aux.
  206. The new role is compatible with the old one, but uses different names for its variables.
  207. Please change your configuration (vars.yml) to rename all variables (`matrix_aux_` -> `aux_`).
  208. We found usage of the following variables: {{ matrix_playbook_migration_aux_migration_vars.keys() | join(', ') }}
  209. when: "matrix_playbook_migration_aux_migration_vars | length > 0"
  210. - when: matrix_playbook_migration_matrix_jitsi_migration_validation_enabled | bool
  211. block:
  212. - ansible.builtin.set_fact:
  213. matrix_playbook_migration_jitsi_migration_vars: |-
  214. {{ vars | dict2items | selectattr('key', 'match', 'matrix_jitsi_.*') | list | items2dict }}
  215. - name: (Deprecation) Catch and report matrix_jitsi variables
  216. ansible.builtin.fail:
  217. msg: >-
  218. The matrix-jitsi role that used to be part of this playbook has been replaced by https://github.com/mother-of-all-self-hosting/ansible-role-jitsi.
  219. The new role is compatible with the old one, but uses different names for its variables.
  220. Please change your configuration (vars.yml) to rename all variables (`matrix_jitsi_` -> `jitsi_`).
  221. We found usage of the following variables: {{ matrix_playbook_migration_jitsi_migration_vars.keys() | join(', ') }}
  222. when: "matrix_playbook_migration_jitsi_migration_vars | length > 0"
  223. - when: matrix_playbook_migration_matrix_postmoogle_migration_validation_enabled | bool
  224. block:
  225. - ansible.builtin.set_fact:
  226. matrix_playbook_migration_postmoogle_migration_vars: |-
  227. {{ vars | dict2items | selectattr('key', 'match', 'matrix_bot_postmoogle_.*') | list | items2dict }}
  228. - name: (Deprecation) Catch and report matrix_bot_postmoogle variables
  229. ansible.builtin.fail:
  230. msg: >-
  231. Your configuration contains a variable, which now has a different name.
  232. Please change your configuration (vars.yml) to rename all variables (`matrix_bot_postmoogle_` -> `matrix_postmoogle_`).
  233. We found usage of the following variables: {{ matrix_playbook_migration_postmoogle_migration_vars.keys() | join(', ') }}
  234. when: "matrix_playbook_migration_postmoogle_migration_vars | length > 0"
  235. - when: matrix_playbook_migration_matrix_nginx_proxy_elimination_variable_transition_checks_enabled | bool
  236. block:
  237. - name: (Deprecation) Catch and report transitioned playbook settings during the matrix-nginx-proxy elimination
  238. ansible.builtin.fail:
  239. msg: >-
  240. Your configuration contains a variable, which now has a different name.
  241. Please change your configuration to rename the variable (`{{ item.old }}` -> `{{ item.new }}`).
  242. when: "item.old in vars"
  243. with_items:
  244. - {'old': 'matrix_nginx_proxy_proxy_matrix_metrics_enabled', 'new': 'matrix_metrics_exposure_enabled'}
  245. - {'old': 'matrix_nginx_proxy_proxy_matrix_metrics_basic_auth_enabled', 'new': 'matrix_metrics_exposure_http_basic_auth_enabled'}
  246. - {'old': 'matrix_nginx_proxy_proxy_matrix_metrics_basic_auth_username', 'new': '<superseded by matrix_metrics_exposure_http_basic_auth_users>'}
  247. - {'old': 'matrix_nginx_proxy_proxy_matrix_metrics_basic_auth_password', 'new': '<superseded by matrix_metrics_exposure_http_basic_auth_users>'}
  248. - {'old': 'matrix_nginx_proxy_proxy_matrix_metrics_basic_auth_raw_content', 'new': '<superseded by matrix_metrics_exposure_http_basic_auth_users>'}
  249. - {'old': 'matrix_nginx_proxy_proxy_matrix_metrics_additional_location_configuration_blocks', 'new': '<superseded by adding labels to each individual service that you care about>'}
  250. - {'old': 'matrix_nginx_proxy_proxy_matrix_metrics_additional_system_location_configuration_blocks', 'new': '<superseded by adding labels to each individual service that you care about>'}
  251. - {'old': 'matrix_nginx_proxy_proxy_matrix_metrics_additional_user_location_configuration_blocks', 'new': '<superseded by adding labels to each individual service that you care about>'}
  252. - {'old': 'matrix_well_known_matrix_server_enabled', 'new': 'matrix_static_files_file_matrix_server_enabled'}
  253. - {'old': 'matrix_well_known_matrix_support_enabled', 'new': 'matrix_static_files_file_matrix_support_enabled'}
  254. - {'old': 'matrix_homeserver_admin_contacts', 'new': 'matrix_static_files_file_matrix_support_property_m_contacts'}
  255. - {'old': 'matrix_homeserver_support_url', 'new': 'matrix_static_files_file_matrix_support_property_m_support_page'}
  256. - {'old': 'matrix_well_known_matrix_client_io_element_e2ee_default', 'new': 'matrix_static_files_file_matrix_client_property_io_element_e2ee_default'}
  257. - {'old': 'matrix_well_known_matrix_client_io_element_e2ee_secure_backup_required', 'new': 'matrix_static_files_file_matrix_client_property_io_element_e2ee_secure_backup_required'}
  258. - {'old': 'matrix_well_known_matrix_client_io_element_e2ee_secure_backup_setup_methods', 'new': 'matrix_static_files_file_matrix_client_property_io_element_e2ee_secure_backup_setup_methods'}
  259. - {'old': 'matrix_well_known_matrix_client_configuration_extension_json', 'new': 'matrix_static_files_file_matrix_client_configuration_extension_json'}
  260. - {'old': 'matrix_well_known_matrix_server_configuration_extension_json', 'new': 'matrix_static_files_file_matrix_server_configuration_extension_json'}
  261. - {'old': 'matrix_well_known_matrix_support_configuration_extension_json', 'new': 'matrix_static_files_file_matrix_support_configuration_extension_json'}
  262. - {'old': 'matrix_nginx_proxy_self_check_validate_certificates', 'new': 'matrix_static_files_self_check_validate_certificates'}
  263. - {'old': 'matrix_nginx_proxy_self_check_well_known_matrix_client_follow_redirects', 'new': 'matrix_static_files_self_check_well_known_matrix_client_follow_redirects'}
  264. - {'old': 'matrix_nginx_proxy_base_domain_serving_enabled', 'new': 'matrix_static_files_container_labels_base_domain_enabled'}
  265. - {'old': 'matrix_nginx_proxy_base_domain_hostname', 'new': 'matrix_static_files_container_labels_base_domain_traefik_hostname'}
  266. - {'old': 'matrix_nginx_proxy_base_domain_homepage_enabled', 'new': 'matrix_static_files_file_index_html_enabled'}
  267. - {'old': 'matrix_nginx_proxy_base_domain_homepage_template', 'new': 'matrix_static_files_file_index_html_template'}
  268. - {'old': 'matrix_nginx_proxy_base_domain_create_directory', 'new': '<no longer necessary; see matrix_static_files_file_index_html_enabled>'}
  269. - {'old': 'matrix_nginx_proxy_proxy_riot_compat_redirect_enabled', 'new': '<redirecting the Riot domain to an Element domain is no longer supported - you can implement it yourself using matrix_client_element_container_labels_additional_labels>'}
  270. - {'old': 'matrix_nginx_proxy_proxy_riot_compat_redirect_hostname', 'new': '<redirecting the Riot domain to an Element domain is no longer supported - you can implement it yourself using matrix_client_element_container_labels_additional_labels>'}
  271. - {'old': 'matrix_nginx_proxy_proxy_matrix_client_redirect_enabled', 'new': '<superseded by matrix_synapse_container_labels_public_client_root_redirection_enabled or other equivalent variables based on the homeserver implementation you use>'}
  272. - {'old': 'matrix_nginx_proxy_proxy_matrix_client_redirect_root_uri_to_domain', 'new': '<superseded by matrix_synapse_container_labels_public_client_root_redirection_url or other equivalent variables based on the homeserver implementation you use>'}
  273. - {'old': 'matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_client_api_enabled', 'new': 'matrix_synapse_container_labels_public_client_synapse_client_api_enabled'}
  274. - {'old': 'matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_oidc_api_enabled', 'new': '<replaced by matrix_synapse_container_labels_public_client_synapse_oidc_api_enabled, but if you use matrix_synapse_oidc_enabled then it would be toggled automatically; see the new recommended OIDC example configuration in docs/configuring-playbook-synapse.md>'}
  275. - {'old': 'matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_admin_api_enabled', 'new': 'matrix_synapse_container_labels_public_client_synapse_admin_api_enabled'}
  276. - {'old': 'matrix_nginx_proxy_proxy_matrix_identity_api_enabled', 'new': '<superseded by matrix_ma1sd_container_labels_traefik_enabled and matrix_ma1sd_container_labels_matrix_identity_enabled>'}
  277. - {'old': 'matrix_nginx_proxy_proxy_matrix_identity_api_addr_with_container', 'new': '<removed>'}
  278. - {'old': 'matrix_nginx_proxy_proxy_matrix_identity_api_addr_sans_container', 'new': '<removed>'}
  279. - {'old': 'matrix_nginx_proxy_proxy_matrix_user_directory_search_enabled', 'new': '<superseded by matrix_ma1sd_container_labels_traefik_enabled and matrix_ma1sd_container_labels_matrix_client_user_directory_search_enabled>'}
  280. - {'old': 'matrix_nginx_proxy_proxy_matrix_user_directory_search_addr_with_container', 'new': '<removed>'}
  281. - {'old': 'matrix_nginx_proxy_proxy_matrix_user_directory_search_addr_sans_container', 'new': '<removed>'}
  282. - {'old': 'matrix_nginx_proxy_proxy_matrix_user_directory_search_v3_to_r0_redirect_enabled', 'new': '<superseded by matrix_ma1sd_container_labels_matrix_client_user_directory_search_path_regexp>'}
  283. - {'old': 'matrix_nginx_proxy_proxy_matrix_3pid_registration_enabled', 'new': 'matrix_ma1sd_container_labels_matrix_client_3pid_registration_enabled'}
  284. - {'old': 'matrix_nginx_proxy_proxy_matrix_3pid_registration_addr_with_container', 'new': '<removed>'}
  285. - {'old': 'matrix_nginx_proxy_proxy_matrix_3pid_registration_addr_sans_container', 'new': '<removed>'}
  286. - {'old': 'matrix_nginx_proxy_proxy_matrix_3pid_registration_v3_to_r0_redirect_enabled', 'new': '<superseded by matrix_ma1sd_container_labels_matrix_client_3pid_registration_path_regexp>'}
  287. - {'old': 'matrix_nginx_proxy_proxy_conduit_enabled', 'new': 'matrix_conduit_container_labels_traefik_enabled'}
  288. - {'old': 'matrix_nginx_proxy_proxy_conduit_block_federation_api_on_client_port', 'new': '<not supported anymore - the /_matrix/federation endpoints are now also being served on the Client-Server API port>'}
  289. - {'old': 'matrix_nginx_proxy_proxy_conduit_federation_api_enabled', 'new': 'matrix_conduit_container_labels_public_federation_api_enabled'}
  290. - {'old': 'matrix_nginx_proxy_proxy_conduit_client_api_addr_with_container', 'new': '<removed>'}
  291. - {'old': 'matrix_nginx_proxy_proxy_conduit_client_api_addr_sans_container', 'new': '<removed>'}
  292. - {'old': 'matrix_nginx_proxy_proxy_conduit_federation_api_addr_with_container', 'new': '<removed>'}
  293. - {'old': 'matrix_nginx_proxy_proxy_conduit_federation_api_addr_sans_container', 'new': '<removed>'}
  294. - {'old': 'matrix_nginx_proxy_proxy_conduit_additional_server_configuration_blocks', 'new': '<removed>'}
  295. - {'old': 'matrix_nginx_proxy_proxy_dendrite_enabled', 'new': 'matrix_dendrite_container_labels_traefik_enabled'}
  296. - {'old': 'matrix_nginx_proxy_proxy_dendrite_block_federation_api_on_client_port', 'new': '<not supported anymore - the /_matrix/federation endpoints are now also being served on the Client-Server API port>'}
  297. - {'old': 'matrix_nginx_proxy_proxy_dendrite_federation_api_enabled', 'new': 'matrix_dendrite_container_labels_public_federation_api_enabled'}
  298. - {'old': 'matrix_nginx_proxy_proxy_dendrite_client_api_addr_with_container', 'new': '<removed>'}
  299. - {'old': 'matrix_nginx_proxy_proxy_dendrite_client_api_addr_sans_container', 'new': '<removed>'}
  300. - {'old': 'matrix_nginx_proxy_proxy_dendrite_federation_api_addr_with_container', 'new': '<removed>'}
  301. - {'old': 'matrix_nginx_proxy_proxy_dendrite_federation_api_addr_sans_container', 'new': '<removed>'}
  302. - {'old': 'matrix_nginx_proxy_proxy_dendrite_additional_server_configuration_blocks', 'new': '<removed>'}
  303. - {'old': 'matrix_nginx_proxy_proxy_synapse_enabled', 'new': 'matrix_synapse_container_labels_traefik_enabled'}
  304. - {'old': 'matrix_nginx_proxy_proxy_synapse_federation_api_enabled', 'new': 'matrix_synapse_container_labels_public_federation_api_enabled'}
  305. - {'old': 'matrix_nginx_proxy_proxy_synapse_client_api_addr_with_container', 'new': '<removed>'}
  306. - {'old': 'matrix_nginx_proxy_proxy_synapse_client_api_addr_sans_container', 'new': '<removed>'}
  307. - {'old': 'matrix_nginx_proxy_proxy_synapse_federation_api_addr_with_container', 'new': '<removed>'}
  308. - {'old': 'matrix_nginx_proxy_proxy_synapse_federation_api_addr_sans_container', 'new': '<removed>'}
  309. - {'old': 'matrix_nginx_proxy_proxy_synapse_additional_server_configuration_blocks', 'new': '<removed>'}
  310. - {'old': 'matrix_nginx_proxy_proxy_matrix_additional_server_configuration_blocks', 'new': '<removed>'}
  311. - {'old': 'matrix_nginx_proxy_access_log_enabled', 'new': 'traefik_config_accessLog_enabled'}
  312. - {'old': 'matrix_nginx_proxy_container_labels_traefik_proxy_matrix_federation_hostname', 'new': 'matrix_server_fqn_matrix_federation'}
  313. - {'old': 'etherpad_nginx_proxy_dimension_integration_enabled', 'new': '<removed>'}
  314. - {'old': 'etherpad_nginx_proxy_dimension_integration_path_prefix', 'new': '<removed>'}
  315. - {'old': 'matrix_prometheus_services_proxy_connect_prometheus_node_exporter_metrics_proxying_enabled', 'new': '<removed>'}
  316. - {'old': 'matrix_prometheus_services_proxy_connect_prometheus_node_exporter_matrix_nginx_proxy_not_enabled_proxy_pass_host', 'new': '<removed>'}
  317. - {'old': 'matrix_prometheus_services_proxy_connect_prometheus_postgres_exporter_metrics_proxying_enabled', 'new': '<removed>'}
  318. - {'old': 'matrix_prometheus_services_proxy_connect_prometheus_postgres_exporter_matrix_nginx_proxy_not_enabled_proxy_pass_host', 'new': '<removed>'}
  319. - {'old': 'matrix_docker_network', 'new': '<removed in favor of various other variables - matrix_addons_container_network, matrix_monitoring_container_network, matrix_homeserver_container_network, etc.>'}
  320. - {'old': 'matrix_playbook_ssl_retrieval_method', 'new': '<removed; see docs/configuring-playbook-ssl-certificates.md for alternatives>'}
  321. - {'old': 'matrix_ssl_lets_encrypt_support_email', 'new': 'traefik_config_certificatesResolvers_acme_email'}
  322. - {'old': 'matrix_federation_traefik_entrypoint', 'new': 'matrix_federation_traefik_entrypoint_name'}
  323. - when: matrix_playbook_migration_matrix_nginx_proxy_leftover_variable_validation_checks_enabled | bool
  324. block:
  325. - ansible.builtin.set_fact:
  326. matrix_playbook_migration_nginx_proxy_migration_vars: |-
  327. {{ vars | dict2items | selectattr('key', 'match', 'matrix_nginx_proxy_.*') | list | items2dict }}
  328. - name: (Deprecation) Catch and report leftover matrix_nginx_proxy variables
  329. ansible.builtin.fail:
  330. msg: >-
  331. The matrix-nginx-proxy role that used to be part of this playbook has been removed.
  332. You should remove all its variables (`matrix_nginx_proxy_*`) from your vars.yml file.
  333. We found usage of the following variables: {{ matrix_playbook_migration_nginx_proxy_migration_vars.keys() | join(', ') }}
  334. when: "matrix_playbook_migration_nginx_proxy_migration_vars | length > 0"
  335. - when: matrix_playbook_migration_matrix_ssl_leftover_variable_checks_enabled | bool
  336. block:
  337. - ansible.builtin.set_fact:
  338. matrix_playbook_migration_ssl_migration_vars: |-
  339. {{ vars | dict2items | selectattr('key', 'match', 'matrix_ssl_.*') | list | items2dict }}
  340. - name: (Deprecation) Catch and report matrix_ssl variables
  341. ansible.builtin.fail:
  342. msg: >-
  343. The matrix-nginx-proxy role that used to be part of this playbook has been removed.
  344. You should remove all its variables (`matrix_ssl_*`) from your vars.yml file.
  345. We found usage of the following variables: {{ matrix_playbook_migration_ssl_migration_vars.keys() | join(', ') }}
  346. when: "matrix_playbook_migration_ssl_migration_vars | length > 0"
  347. - block:
  348. - ansible.builtin.set_fact:
  349. matrix_playbook_migration_matrix_synapse_container_labels_public_client_synapse_oidc_vars: |-
  350. {{ vars | dict2items | selectattr('key', 'match', 'matrix_synapse_container_labels_public_client_synapse_oidc_*') | list | items2dict }}
  351. - name: (Deprecation) Catch and report matrix_ssl variables
  352. ansible.builtin.fail:
  353. msg: >-
  354. We found usage of the following variables which are now removed: {{ matrix_playbook_migration_matrix_synapse_container_labels_public_client_synapse_oidc_vars.keys() | join(', ') }}
  355. when: "matrix_playbook_migration_matrix_synapse_container_labels_public_client_synapse_oidc_vars | length > 0"
  356. - block:
  357. - ansible.builtin.set_fact:
  358. matrix_playbook_migration_matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_oidc_vars: |-
  359. {{ vars | dict2items | selectattr('key', 'match', 'matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_oidc_*') | list | items2dict }}
  360. - name: (Deprecation) Catch and report matrix_ssl variables
  361. ansible.builtin.fail:
  362. msg: >-
  363. We found usage of the following variables which are now removed: {{ matrix_playbook_migration_matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_oidc_vars.keys() | join(', ') }}
  364. when: "matrix_playbook_migration_matrix_synapse_reverse_proxy_companion_container_labels_public_client_synapse_oidc_vars | length > 0"
  365. - name: (Deprecation) Catch and report devture_postgres_backup variables
  366. ansible.builtin.fail:
  367. msg: |-
  368. The postgres-backup role in the playbook now lives under the MASH organization (https://github.com/mother-of-all-self-hosting/ansible-role-postgres-backup).
  369. The new role is pretty much the same, but uses differently named variables.
  370. Please change your configuration (vars.yml) to rename all `devture_postgres_backup_`-prefixed variables (`devture_postgres_backup_*` -> `postgres_backup_*`).
  371. The following variables in your configuration need to be renamed: {{ vars | dict2items | selectattr('key', 'match', 'devture_postgres_backup_.*') | map(attribute='key') | join(', ') }}
  372. when: "vars | dict2items | selectattr('key', 'match', 'devture_postgres_backup_.*') | list | items2dict"
  373. - name: (Deprecation) Catch and report devture_postgres variables
  374. ansible.builtin.fail:
  375. msg: |-
  376. The Postgres role in the playbook now lives under the MASH organization (https://github.com/mother-of-all-self-hosting/ansible-role-postgres).
  377. The new role is pretty much the same, but uses differently named variables.
  378. Please change your configuration (vars.yml) to rename all `devture_postgres_`-prefixed variables (`devture_postgres_*` -> `postgres_*`).
  379. The following variables in your configuration need to be renamed: {{ vars | dict2items | selectattr('key', 'match', 'devture_postgres_.*') | map(attribute='key') | join(', ') }}
  380. when: "vars | dict2items | selectattr('key', 'match', 'devture_postgres_.*') | list | items2dict"
  381. - name: (Deprecation) Catch and report traefik_certs_dumper variables
  382. ansible.builtin.fail:
  383. msg: |-
  384. The traefik-certs-dumper role in the playbook now lives under the MASH organization (https://github.com/mother-of-all-self-hosting/ansible-role-traefik-certs-dumper).
  385. The new role is pretty much the same, but uses differently named variables.
  386. Please change your configuration (vars.yml) to rename all `devture_traefik_certs_dumper_`-prefixed variables (`devture_traefik_certs_dumper_*` -> `traefik_certs_dumper_*`).
  387. The following variables in your configuration need to be renamed: {{ vars | dict2items | selectattr('key', 'match', 'devture_traefik_certs_dumper_.*') | map(attribute='key') | join(', ') }}
  388. when: "vars | dict2items | selectattr('key', 'match', 'devture_traefik_certs_dumper_.*') | list | items2dict"
  389. - name: (Deprecation) Catch and report devture_traefik variables
  390. ansible.builtin.fail:
  391. msg: |-
  392. The traefik role in the playbook now lives under the MASH organization (https://github.com/mother-of-all-self-hosting/ansible-role-traefik).
  393. The new role is pretty much the same, but uses differently named variables.
  394. Please change your configuration (vars.yml) to rename all `devture_traefik_`-prefixed variables (`devture_traefik_*` -> `traefik_*`).
  395. The following variables in your configuration need to be renamed: {{ vars | dict2items | selectattr('key', 'match', 'devture_traefik_.*') | map(attribute='key') | join(', ') }}
  396. when: "vars | dict2items | selectattr('key', 'match', 'devture_traefik_.*') | list | items2dict"
  397. - name: (Deprecation) Catch and report devture_container_socket_proxy variables
  398. ansible.builtin.fail:
  399. msg: |-
  400. The container-socket-proxy role in the playbook now lives under the MASH organization (https://github.com/mother-of-all-self-hosting/ansible-role-container-socket-proxy).
  401. The new role is pretty much the same, but uses differently named variables.
  402. Please change your configuration (vars.yml) to rename all `devture_container_socket_proxy_`-prefixed variables (`devture_container_socket_proxy_*` -> `container_socket_proxy_*`).
  403. The following variables in your configuration need to be renamed: {{ vars | dict2items | selectattr('key', 'match', 'devture_container_socket_proxy_.*') | map(attribute='key') | join(', ') }}
  404. when: "vars | dict2items | selectattr('key', 'match', 'devture_container_socket_proxy_.*') | list | items2dict"
  405. - name: (Deprecation) Catch and report mautrix-hangouts variables
  406. ansible.builtin.fail:
  407. msg: |-
  408. The Google Hangouts service was discontinued on 1st of November 2022.
  409. The mautrix-hangouts bridge has been deprecated in the playbook since December 2024 and was completely removed from the playbook in February 2025.
  410. Please change your configuration (`vars.yml`) to remove all `matrix_mautrix_hangouts_*` variables.
  411. You may also wish to uninstall the bridge manually. See `docs/configuring-playbook-bridge-mautrix-hangouts.md` for more information.
  412. The following variables in your configuration need to be removed: {{ vars | dict2items | selectattr('key', 'match', 'matrix_mautrix_hangouts_.*') | map(attribute='key') | join(', ') }}
  413. when: "vars | dict2items | selectattr('key', 'match', 'matrix_mautrix_hangouts_.*') | list | items2dict"
  414. - name: (Deprecation) Catch and report Email2Matrix variables
  415. ansible.builtin.fail:
  416. msg: |-
  417. The Email2Matrix service has been superseded by the Postmoogle bridge for a long time now and was completely removed from the playbook in February 2025.
  418. Please change your configuration (`vars.yml`) to remove all `matrix_email2matrix_*` variables.
  419. You may also wish to uninstall the bridge manually. See `docs/configuring-playbook-email2matrix.md` for more information.
  420. The following variables in your configuration need to be removed: {{ vars | dict2items | selectattr('key', 'match', 'matrix_email2matrix_.*') | map(attribute='key') | join(', ') }}
  421. when: "vars | dict2items | selectattr('key', 'match', 'matrix_email2matrix_.*') | list | items2dict"