aim-web2.1.0rc9

This commit is contained in:
admin_rb
2026-09-22 19:23:17 +02:00
parent d095887d2e
commit 3dfc80b782
438 changed files with 31613 additions and 1510 deletions
+23
View File
@@ -0,0 +1,23 @@
# checkmk_manage_service
Operator defaults are intentionally low-precedence; inventory and explicit run options may override them.
```yaml
---
checkmk_linux_service_name: cmk-agent-ctl-daemon.service
checkmk_linux_socket_name: check-mk-agent.socket
checkmk_windows_service_name: ''
checkmk_windows_service_candidates:
- Check_MK_Agent
- CheckmkService
- Checkmk Service
```
## Structured result integration
Current reporting behavior and field semantics are specified in
[scripts/docs/OPERATION_RESULTS.md](../../scripts/docs/OPERATION_RESULTS.md).
The calling catalog playbook owns publication; helper roles do not implicitly export
arbitrary facts, module results or debug data. Existing defaults above retain their
precedence. See the current validation/sanity documents before using the new candidate.
@@ -0,0 +1,9 @@
---
checkmk_linux_service_name: cmk-agent-ctl-daemon.service
checkmk_linux_socket_name: check-mk-agent.socket
checkmk_windows_service_name: ''
checkmk_windows_service_candidates:
- Check_MK_Agent
- CheckmkService
- Checkmk Service
@@ -0,0 +1,9 @@
---
- name: Checkmk | Restart changed Windows agent configuration
ansible.windows.win_service:
name: '{{ item }}'
state: restarted
listen: checkmk | windows | configuration-changed
loop: '{{ _checkmk_windows_services | default([]) }}'
when: ansible_facts.os_family == 'Windows'
@@ -0,0 +1,42 @@
---
- name: Linux | Require systemd service management
ansible.builtin.assert:
that:
- ansible_facts.service_mgr == 'systemd'
fail_msg: This Checkmk service policy requires systemd. No alternate service system is configured.
quiet: true
- name: Linux | Refresh systemd after package installation
ansible.builtin.systemd_service:
daemon_reload: true
when: _checkmk_package_install.changed | default(false) | bool
- name: Linux | Detect configured Checkmk units independently of running state
ansible.builtin.command:
argv:
- systemctl
- show
- --property=LoadState
- --value
- '{{ item }}'
loop:
- '{{ checkmk_linux_socket_name }}'
- '{{ checkmk_linux_service_name }}'
register: _checkmk_units
changed_when: false
failed_when: 'false'
check_mode: false
- name: Linux | Select the installed unit, preferring the socket
ansible.builtin.set_fact:
_checkmk_linux_units: '{{ _checkmk_units.results | selectattr(''stdout'', ''defined'') | selectattr(''stdout'',
''equalto'', ''loaded'') | map(attribute=''item'') | list }}'
- name: Linux | Require an installed Checkmk unit
ansible.builtin.assert:
that:
- _checkmk_linux_units | length > 0
fail_msg: No configured Checkmk socket/service unit was found. Verify installation and the unit names.
quiet: true
- name: Linux | Ensure Checkmk is enabled and running
ansible.builtin.systemd_service:
name: '{{ _checkmk_linux_units | first }}'
enabled: true
state: started
@@ -0,0 +1,8 @@
---
- name: Checkmk | Ensure agent service on linux
ansible.builtin.include_tasks: linux.yml
when: ansible_facts.os_family != 'Windows'
- name: Checkmk | Ensure agent service on windows
ansible.builtin.include_tasks: windows.yml
when: ansible_facts.os_family == 'Windows'
@@ -0,0 +1,24 @@
---
- name: Windows | Find installed Checkmk service
ansible.windows.win_service_info:
name: '{{ item }}'
loop: '{{ ([checkmk_windows_service_name] if checkmk_windows_service_name | length else checkmk_windows_service_candidates)
}}'
register: _checkmk_win_service_query
- name: Windows | Record service names
ansible.builtin.set_fact:
_checkmk_windows_services: '{{ _checkmk_win_service_query.results | selectattr(''services'', ''defined'')
| map(attribute=''services'') | flatten | map(attribute=''name'') | unique | list }}'
- name: Windows | Require installed Checkmk service
ansible.builtin.assert:
that:
- _checkmk_windows_services | length > 0
fail_msg: No Checkmk service was found. Check the installed package or set checkmk_windows_service_name.
quiet: true
- name: Windows | Ensure Checkmk service is running
ansible.windows.win_service:
name: '{{ item }}'
start_mode: auto
state: started
loop: '{{ _checkmk_windows_services }}'