Files
Tips-Tricks/centos.yaml
2026-02-02 18:03:18 -08:00

42 lines
1.3 KiB
YAML

---
- name: Update CentOS Stream 9 Halo Servers
hosts: centos_stream
become: yes
tasks:
- name: Check for logged in users
shell: who | wc -l
register: logged_users
changed_when: false
- name: Display logged in user count
debug:
msg: "{{ logged_users.stdout }} user(s) currently logged in"
- name: Skip updates if users are logged in
meta: end_play
when: logged_users.stdout | int > 1
- name: Ensure all packages are up to date
dnf:
name: '*'
state: latest
update_cache: yes
register: dnf_result
- name: Display package update statistics
debug:
msg:
- "Host: {{ inventory_hostname }}"
- "Packages installed: {{ dnf_result.results | select('match', '^Installed:.*') | list | length }}"
- "Packages updated: {{ dnf_result.results | select('match', '^Updated:.*') | list | length }}"
- "Packages removed: {{ dnf_result.results | select('match', '^Removed:.*') | list | length }}"
when: dnf_result.changed and dnf_result.results is defined
- name: No updates needed
debug:
msg: "Host: {{ inventory_hostname }} - System is already up to date"
when: not dnf_result.changed
- name: Rebooting the servers
reboot:
when: dnf_result.changed