Files
ansible-role-checkmk-agent/tasks/host-management.yml
2024-01-09 14:33:55 +13:00

35 lines
1.5 KiB
YAML

---
- name: Retrieve checkmk version
uri:
method: GET
headers:
Authorization: Bearer {{ cmk_username }} {{ cmk_secret }}
Accept: application/json
url: '{{ cmk_omd_protocol }}://{{ cmk_omd_host }}/{{ cmk_omd_site }}/check_mk/api/1.0/version'
return_content: true
register: cmk_output
- name: Set facts # noqa jinja[spacing]
set_fact:
cmk_major: "{{ cmk_output.json.versions.checkmk | regex_search('(?P<major>\\\
d+)\\.(?P<minor>\\d+).(?P<patch>[\\d\\w]+).(?P<edition>[\\d\\w]+)','\\g<major>') | first | int }}"
cmk_minor: "{{ cmk_output.json.versions.checkmk |regex_search('(?P<major>\\\
d+)\\.(?P<minor>\\d+).(?P<patch>[\\d\\w]+).(?P<edition>[\\d\\w]+)', '\\g<minor>') | first |int }}"
cmk_patch: "{{ cmk_output.json.versions.checkmk | regex_search('(?P<major>\\\
d+)\\.(?P<minor>\\d+).(?P<patch>[\\d\\w]+).(?P<edition>\\w+)', '\\g<patch>') | first }}"
cmk_edition: "{{ cmk_output.json.versions.checkmk | regex_search('(?P<major>\\\
d+)\\.(?P<minor>\\d+).(?P<patch>[\\d\\w]+).(?P<edition>\\w+)','\\g<edition>') | first }}"
- name: Output vars
debug:
var: '{{ item }}'
with_items: [cmk_major, cmk_minor, cmk_patch, cmk_edition]
- include_tasks: host-management/legacy.yml
when: >
cmk_add_host and
(cmk_major | int <= 2 and
cmk_minor | int < 2 or cmk_force_install)
- include_tasks: host-management/modern.yml
when: >-
cmk_add_host and
(cmk_major | int >= 2 and
cmk_minor | int >= 2 or cmk_force_install)