Matrix Docker Ansible eploy
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

479 lines
39 KiB

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