infra/roles/hass-core/handlers/old.yml

56 lines
1.5 KiB
YAML

---
- name: hass check_config
uri:
url: "https://{{ hass_url }}/api/config/core/check_config"
method: POST
status_code: 200
validate_certs: true
headers:
Authorization: "Bearer {{ hass_ansible_token }}"
Content-Type: application/json
return_content: true
# forces the handler to run normally in --check mode (make the http request)
check_mode: false
#diff_mode: true
register: handler_hass_config_check
when:
- hass_container_restarted.changed|default(false) == false
failed_when:
- handler_hass_config_check is failed
- handler_hass_config_check.status != 200
- handler_hass_config_check.json.get("result", "") != "valid"
notify: show_config_check
- name: hass wait_healthcheck
uri:
url: "https://{{ hass_url }}/api/"
method: GET
status_code: 200
validate_certs: true
headers:
Authorization: "Bearer {{ hass_ansible_token }}"
Content-Type: application/json
return_content: true
# forces the handler to run normally in --check mode (make the http request)
check_mode: false
#diff_mode: true
until:
- hass_health_check.status == 200
- hass_health_check.json is defined
- hass_health_check.json.message.endswith("running.")
retries: 300
delay: 1
register: hass_health_check
tags:
- hass-core-healthcheck
- name: show_config_check
debug:
var: handler_hass_config_check
when:
- handler_hass_config_check is defined
tags:
- hass-core-healthcheck