Files
ansible/cleanup.yml

82 lines
1.8 KiB
YAML

---
- hosts: all
become: true
vars:
journal_size: "200M"
log_age: 30
tasks:
- name: Show disk usage before cleanup
command: df -h /
register: disk_before
changed_when: false
- debug:
var: disk_before.stdout_lines
- name: Clean apt cache
apt:
autoclean: yes
autoremove: yes
- name: Remove package cache
command: apt clean
changed_when: false
- name: Vacuum journal
command: journalctl --vacuum-size={{ journal_size }}
changed_when: true
- name: Find Docker
stat:
path: /var/run/docker.sock
register: docker
- name: Docker system prune
command: docker system prune -af
when: docker.stat.exists
- name: Docker volume prune
command: docker volume prune -f
when: docker.stat.exists
- name: Truncate Docker logs
shell: |
find /var/lib/docker/containers \
-name '*-json.log' \
-exec truncate -s 0 {} \;
when: docker.stat.exists
- name: Check audit log
stat:
path: /var/log/audit/audit.log
register: auditlog
- name: Truncate audit log
command: truncate -s 0 /var/log/audit/audit.log
when: auditlog.stat.exists
- name: Delete old rotated logs
shell: |
find /var/log -type f \
\( -name "*.gz" -o -name "*.1" -o -name "*.old" \) \
-mtime +{{ log_age }} \
-delete
- name: Show top directories
shell: du -xh / --max-depth=1 2>/dev/null | sort -hr
register: topdirs
changed_when: false
- debug:
var: topdirs.stdout_lines
- name: Show disk usage after cleanup
command: df -h /
register: disk_after
changed_when: false
- debug:
var: disk_after.stdout_lines