---
- name: Simple Service Existence and Status Check
hosts: all
gather_facts: no
tasks:
- name: One-line service check
shell: |
echo "=== {{ inventory_hostname }} ==="
if [ -f /usr/lib/systemd/system/auditd.service ] || [ -f /lib/systemd/system/auditd.service ]; then
echo "auditd: INSTALLED - $(systemctl is-active auditd 2>/dev/null || echo 'FAILED')"
else
echo "auditd: NOT_INSTALLED"
fi
if rpm -q mlocate >/dev/null 2>&1 || rpm -q plocate >/dev/null 2>&1; then
if [ -f /usr/lib/systemd/system/mlocate-updatedb.timer ]; then
echo "mlocate: INSTALLED - timer: $(systemctl is-active mlocate-updatedb.timer 2>/dev/null || echo 'FAILED')"
elif [ -f /usr/lib/systemd/system/updatedb.timer ]; then
echo "mlocate: INSTALLED - timer: $(systemctl is-active updatedb.timer 2>/dev/null || echo 'FAILED')"
else
echo "mlocate: INSTALLED - timer: NO_TIMER_FOUND"
fi
else
echo "mlocate: NOT_INSTALLED"
fi
if [ -f /var/lib/mlocate/mlocate.db ]; then
echo "locate_db: EXISTS - size: $(du -h /var/lib/mlocate/mlocate.db | cut -f1)"
elif [ -f /var/lib/locate/locatedb ]; then
echo "locate_db: EXISTS - size: $(du -h /var/lib/locate/locatedb | cut -f1)"
else
echo "locate_db: NOT_FOUND"
fi
register: service_check_output
- name: Display results
debug:
msg: "{{ service_check_output.stdout_lines | join('\n') }}"