---
- name : Fail if required Synapse settings not defined
ansible.builtin.fail :
msg : >-
You need to define a required configuration setting (`{{ item }}`) for using Synapse.
when : "vars[item] == ''"
with_items :
- "matrix_synapse_macaroon_secret_key"
- "matrix_synapse_database_host"
- "matrix_synapse_database_user"
- "matrix_synapse_database_password"
- "matrix_synapse_database_database"
- name : Fail if asking to configure deprecaed workers (appservice, userdir)
ansible.builtin.fail :
msg : >-
`{{ item }}` cannot be more than 0.
This type of worker has been deprecated since Synapse v1.59.
Please remove your `{{ item }}` configuration to solve this problem.
See : https://github.com/matrix-org/synapse/blob/v1.59.0/docs/upgrade.md#deprecation-of-the-synapseappappservice-and-synapseappuser_dir-worker-application-types
when : "vars[item]|int != 0"
with_items :
- "matrix_synapse_workers_appservice_workers_count"
- "matrix_synapse_workers_user_dir_workers_count"
- name : Fail if asking for more than 1 instance of single-instance workers
ansible.builtin.fail :
msg : >-
`{{ item }}` cannot be more than 1. This is a single-instance worker.
when : "vars[item]|int > 1"
with_items :
- "matrix_synapse_workers_pusher_workers_count"
- "matrix_synapse_workers_federation_sender_workers_count"
- "matrix_synapse_workers_stream_writer_typing_stream_workers_count"
- "matrix_synapse_workers_stream_writer_to_device_stream_workers_count"
- "matrix_synapse_workers_stream_writer_account_data_stream_workers_count"
- "matrix_synapse_workers_stream_writer_receipts_stream_workers_count"
- "matrix_synapse_workers_stream_writer_presence_stream_workers_count"
- name : (Deprecation) Catch and report renamed 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_synapse_email_riot_base_url', 'new' : '<superseded by client_base_url>' }
- {'old': 'matrix_synapse_container_expose_api_port', 'new' : '<superseded by matrix_synapse_container_federation_api_plain_host_bind_port>' }
- {'old': 'matrix_synapse_no_tls', 'new' : '<removed>' }
- {'old': 'matrix_enable_room_list_search', 'new' : 'matrix_synapse_enable_room_list_search' }
- {'old': 'matrix_alias_creation_rules', 'new' : 'matrix_synapse_alias_creation_rules' }
- {'old': 'matrix_room_list_publication_rules', 'new' : 'matrix_synapse_room_list_publication_rules' }
- {'old': 'matrix_synapse_rc_messages_per_second', 'new' : '<per_second subkey of matrix_synapse_rc_message>' }
- {'old': 'matrix_synapse_rc_message_burst_count', 'new' : '<burst_count subkey of matrix_synapse_rc_message>' }
- {'old': 'matrix_synapse_federation_rc_window_size', 'new' : '<window_size subkey of matrix_synapse_rc_federation>' }
- {'old': 'matrix_synapse_federation_rc_sleep_limit', 'new' : '<sleep_limit subkey of matrix_synapse_rc_federation>' }
- {'old': 'matrix_synapse_federation_rc_sleep_delay', 'new' : '<sleep_delay subkey of matrix_synapse_rc_federation>' }
- {'old': 'matrix_synapse_federation_rc_reject_limit', 'new' : '<reject_limit subkey of matrix_synapse_rc_federation>' }
- {'old': 'matrix_synapse_federation_rc_concurrent', 'new' : '<concurrent subkey of matrix_synapse_rc_federation>' }
- {'old': 'matrix_synapse_container_expose_client_api_port', 'new' : '<superseded by matrix_synapse_container_client_api_host_bind_port>' }
- {'old': 'matrix_synapse_container_expose_federation_api_port', 'new' : '<superseded by matrix_synapse_container_federation_api_plain_host_bind_port>' }
- {'old': 'matrix_synapse_container_expose_metrics_port', 'new' : '<superseded by matrix_synapse_container_metrics_api_host_bind_port>' }
- {'old': 'matrix_synapse_cache_factor', 'new' : 'matrix_synapse_caches_global_factor' }
- {'old': 'matrix_synapse_trusted_third_party_id_servers', 'new' : '<deprecated in Synapse v0.99.4 and removed in Synapse v1.19.0>' }
- {'old': 'matrix_synapse_use_presence', 'new' : 'matrix_synapse_presence_enabled' }
- {'old': 'matrix_synapse_version_arm64', 'new' : '<superseded by matrix_synapse_version - see https://github.com/matrix-org/synapse/pull/11810>' }
- {'old': 'matrix_synapse_enable_group_creation', 'new' : '<removed in Synapse v1.61.0 - use the new Spaces feature instead>' }
- {'old': 'matrix_synapse_account_threepid_delegates_email', 'new' : '<removed in Synapse v1.66.0 - make sure to configure email settings for Synapse - see https://matrix-org.github.io/synapse/v1.66/upgrade.html#delegation-of-email-validation-no-longer-supported>' }
- {'old': 'matrix_synapse_workers_frontend_proxy_workers_count', 'new' : '<removed in favor of generic workers - see https://github.com/matrix-org/synapse/pull/13645>' }
- {'old': 'matrix_synapse_workers_frontend_proxy_workers_port_range_start', 'new' : '<removed in favor of generic workers - see https://github.com/matrix-org/synapse/pull/13645>' }
- {'old': 'matrix_synapse_workers_frontend_proxy_workers_metrics_range_start', 'new' : '<removed in favor of generic workers - see https://github.com/matrix-org/synapse/pull/13645>' }
- name : (Deprecation) Catch and report renamed settings in matrix_synapse_configuration_extension_yaml
ansible.builtin.fail :
msg : >-
Your matrix_synapse_configuration_extension_yaml 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 matrix_synapse_configuration_extension"
with_items :
- {'old': 'federation_ip_range_blacklist', 'new' : 'ip_range_blacklist' }