matrix-docker-ansible-deploy/roles/custom/matrix-dendrite/tasks/self_check_federation_api.yml

27 lines
1.5 KiB
YAML

---
- name: Check Matrix Federation API
ansible.builtin.uri:
url: "{{ matrix_dendrite_federation_api_url_endpoint_public }}"
follow_redirects: none
validate_certs: "{{ matrix_dendrite_self_check_validate_certificates }}"
register: result_matrix_dendrite_federation_api
ignore_errors: true
check_mode: false
delegate_to: 127.0.0.1
become: false
- name: Fail if Matrix Federation API not working
ansible.builtin.fail:
msg: "Failed checking Matrix Federation API is up at `{{ matrix_server_fqn_matrix }}` (checked endpoint: `{{ matrix_dendrite_federation_api_url_endpoint_public }}`). Is Dendrite running? Is port {{ matrix_federation_public_port }} open in your firewall? Full error: {{ result_matrix_dendrite_federation_api }}"
when: "matrix_dendrite_federation_enabled | bool and (result_matrix_dendrite_federation_api.failed or 'json' not in result_matrix_dendrite_federation_api)"
- name: Fail if Matrix Federation API unexpectedly enabled
ansible.builtin.fail:
msg: "Matrix Federation API is up at `{{ matrix_server_fqn_matrix }}` (checked endpoint: `{{ matrix_dendrite_federation_api_url_endpoint_public }}`) despite being disabled."
when: "not matrix_dendrite_federation_enabled | bool and not result_matrix_dendrite_federation_api.failed"
- name: Report working Matrix Federation API
ansible.builtin.debug:
msg: "The Matrix Federation API at `{{ matrix_server_fqn_matrix }}` (checked endpoint: `{{ matrix_dendrite_federation_api_url_endpoint_public }}`) is working"
when: "matrix_dendrite_federation_enabled | bool"