--- # Rutynowe sprzątanie/kondycja systemu: apt autoremove/clean, czyszczenie journala, # sprawdzenie zajętości dysku z progiem ostrzegawczym (domyślnie 85%, group_vars/all.yml). - name: Sprzątanie i kondycja systemu hosts: all gather_facts: true tasks: - name: Usuń nieużywane pakiety (apt autoremove) ansible.builtin.apt: autoremove: yes purge: yes when: ansible_os_family in ["Debian", "Ubuntu"] - name: Wyczyść lokalny cache pobranych pakietów (apt clean) ansible.builtin.apt: autoclean: yes when: ansible_os_family in ["Debian", "Ubuntu"] - name: Wyczyść dziennik systemowy starszy niż 7 dni (journalctl --vacuum-time) ansible.builtin.command: journalctl --vacuum-time=7d register: journal_vacuum changed_when: "'Vacuuming done' in journal_vacuum.stdout and 'freed' in journal_vacuum.stdout" when: ansible_service_mgr == "systemd" - name: Odśwież fakty o zajętości dysku (po sprzątaniu) ansible.builtin.setup: filter: ansible_mounts gather_timeout: 30 - name: Sprawdź zajętość dysku na partycji root ansible.builtin.set_fact: root_disk_percent_used: >- {{ (( (mount.size_total - mount.size_available) / mount.size_total * 100) | round(0, 'ceil')) | int }} vars: mount: "{{ ansible_mounts | selectattr('mount', 'equalto', '/') | first }}" when: ansible_mounts | selectattr('mount', 'equalto', '/') | list | length > 0 - name: OSTRZEŻENIE — zajętość dysku powyżej progu ansible.builtin.debug: msg: >- WARN [{{ inventory_hostname }}]: dysk / zajęty w {{ root_disk_percent_used }}% (próg: {{ disk_usage_warn_percent }}%) when: - root_disk_percent_used is defined - root_disk_percent_used | int >= disk_usage_warn_percent | int