--- - name: Verify through the public hostname(s) when: multica_verify_public | bool block: - name: Check health endpoint via Caddy ansible.builtin.uri: url: "{{ _multica_public_health_url }}" status_code: 200 validate_certs: "{{ caddy_tls_mode != 'internal' }}" register: _multica_pub_health until: _multica_pub_health.status == 200 retries: 18 delay: 10 changed_when: false - name: Fetch /api/config via the app hostname ansible.builtin.uri: url: "{{ _multica_app_url }}/api/config" return_content: true validate_certs: "{{ caddy_tls_mode != 'internal' }}" register: _multica_cfg changed_when: false - name: Assert daemons will be told the public URL, not localhost ansible.builtin.assert: that: - _multica_cfg.json.daemon_server_url is defined - "'localhost' not in _multica_cfg.json.daemon_server_url" fail_msg: >- daemon_server_url is missing or points at localhost. Check FRONTEND_ORIGIN / MULTICA_APP_URL in {{ multica_install_dir }}/.env and recreate the stack. success_msg: "daemon_server_url = {{ _multica_cfg.json.daemon_server_url }}"