410a915a8a
This paves the way for installing other roles into `roles/galaxy` using `ansible-galaxy`, similar to how it's done in: - https://github.com/spantaleev/gitea-docker-ansible-deploy - https://github.com/spantaleev/nextcloud-docker-ansible-deploy In the near future, we'll be removing a lot of the shared role code from here and using upstream roles for it. Some of the core `matrix-*` roles have already been extracted out into other reusable roles: - https://github.com/devture/com.devture.ansible.role.postgres - https://github.com/devture/com.devture.ansible.role.systemd_docker_base - https://github.com/devture/com.devture.ansible.role.timesync - https://github.com/devture/com.devture.ansible.role.vars_preserver - https://github.com/devture/com.devture.ansible.role.playbook_runtime_messages - https://github.com/devture/com.devture.ansible.role.playbook_help We just need to migrate to those.
71 lines
3.4 KiB
YAML
71 lines
3.4 KiB
YAML
---
|
|
|
|
- name: (Deprecation) Warn about ma1sd variables that are not used anymore
|
|
ansible.builtin.fail:
|
|
msg: >
|
|
The `{{ item }}` variable defined in your configuration is not used by this playbook anymore!
|
|
You'll need to adapt to the new way of extending ma1sd configuration.
|
|
See the CHANGELOG and the `matrix_ma1sd_configuration_extension_yaml` variable for more information and examples.
|
|
when: "item in vars"
|
|
with_items:
|
|
- 'matrix_ma1sd_ldap_enabled'
|
|
- 'matrix_ma1sd_ldap_connection_host'
|
|
- 'matrix_ma1sd_ldap_connection_tls'
|
|
- 'matrix_ma1sd_ldap_connection_port'
|
|
- 'matrix_ma1sd_ldap_connection_baseDn'
|
|
- 'matrix_ma1sd_ldap_connection_baseDns'
|
|
- 'matrix_ma1sd_ldap_connection_bindDn'
|
|
- 'matrix_ma1sd_ldap_connection_bindPassword'
|
|
- 'matrix_ma1sd_ldap_filter'
|
|
- 'matrix_ma1sd_ldap_attribute_uid_type'
|
|
- 'matrix_ma1sd_ldap_attribute_uid_value'
|
|
- 'matrix_ma1sd_ldap_connection_bindPassword'
|
|
- 'matrix_ma1sd_ldap_attribute_name'
|
|
- 'matrix_ma1sd_ldap_attribute_threepid_email'
|
|
- 'matrix_ma1sd_ldap_attribute_threepid_msisdn'
|
|
- 'matrix_ma1sd_ldap_identity_filter'
|
|
- 'matrix_ma1sd_ldap_identity_medium'
|
|
- 'matrix_ma1sd_ldap_auth_filter'
|
|
- 'matrix_ma1sd_ldap_directory_filter'
|
|
- 'matrix_ma1sd_template_config'
|
|
- 'matrix_ma1sd_architecture'
|
|
|
|
- name: Ensure ma1sd configuration does not contain any dot-notation keys
|
|
ansible.builtin.fail:
|
|
msg: >
|
|
Since version 1.3.0, ma1sd will not accept property-style configuration keys.
|
|
You have defined a key (`{{ item.key }}`) which contains a dot.
|
|
Instead, use nesting. See: https://github.com/ma1uta/ma1sd/wiki/Upgrade-Notes#v130
|
|
when: "'.' in item.key"
|
|
with_dict: "{{ matrix_ma1sd_configuration }}"
|
|
|
|
- name: Fail if required ma1sd settings not defined
|
|
ansible.builtin.fail:
|
|
msg: >
|
|
You need to define a required configuration setting (`{{ item }}`) for using ma1sd.
|
|
when: "vars[item] == ''"
|
|
with_items:
|
|
- "matrix_ma1sd_threepid_medium_email_connectors_smtp_host"
|
|
- "matrix_ma1sd_dns_overwrite_homeserver_client_value"
|
|
|
|
- name: (Deprecation) Catch and report renamed ma1sd variables
|
|
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: "vars | dict2items | selectattr('key', 'match', item.old) | list | items2dict"
|
|
with_items:
|
|
- {'old': 'matrix_ma1sd_container_expose_port', 'new': '<superseded by matrix_ma1sd_container_http_host_bind_port>'}
|
|
- {'old': 'matrix_ma1sd_threepid_medium_email_custom_unbind_fraudulent_template', 'new': 'matrix_ma1sd_threepid_medium_email_custom_session_unbind_notification_template'}
|
|
- {'old': 'matrix_ma1sd_default_port', 'new': 'matrix_ma1sd_container_port'}
|
|
|
|
- name: (Deprecation) Catch and report mxisd variables
|
|
ansible.builtin.fail:
|
|
msg: >-
|
|
mxisd is deprecated and has been replaced with ma1sd (https://github.com/ma1uta/ma1sd), a compatible fork.
|
|
The playbook will migrate your existing mxisd configuration and data automatically, but you need to adjust variable names.
|
|
Please change your configuration (vars.yml) to rename all mxisd variables (`{{ item.old }}` -> `{{ item.new }}`).
|
|
when: "vars | dict2items | selectattr('key', 'match', item.old) | list | items2dict"
|
|
with_items:
|
|
- {'old': 'matrix_mxisd_.*', 'new': 'matrix_ma1sd_.*'}
|