mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-08-27 14:05:17 +02:00
- Unified service templates into generic systemctl templates - Introduced reusable filter plugins for script path handling - Updated path variables and service/timer definitions - Migrated roles (backup, cleanup, repair, etc.) to use systemctl role - Added sys-daemon role for core systemd cleanup - Simplified timer handling via sys-timer role Note: This is a large refactor and some errors may still exist. Further testing and adjustments will be needed.
Cleanup Backups Service
Description
This role automates the cleanup of old backups by executing a Python script that deletes outdated backup versions based on disk usage thresholds. It ensures that backup storage does not exceed a defined usage percentage.
Overview
Optimized for effective disk space management, this role:
- Installs required packages (e.g. lsof and psutil) using pacman.
- Creates a directory for storing cleanup scripts.
- Deploys a Python script that deletes old backup directories when disk usage is too high.
- Configures a systemd service to run the cleanup script, with notifications via sys-ctl-alm-compose.
Purpose
The primary purpose of this role is to maintain optimal backup storage by automatically removing outdated backup versions when disk usage exceeds a specified threshold.
Features
- Automated Cleanup: Executes a Python script to delete old backups.
- Threshold-Based Deletion: Removes backups based on disk usage percentage.
- Systemd Integration: Configures a systemd service to run cleanup tasks.
- Dependency Integration: Works in conjunction with related roles for comprehensive backup management.