At 90% disk usage, prune unused Docker images older than seven days even when a warm service has unmet replicas. Preserve the live test stack guard and never prune volumes.
Why
On 2026-11-02, cc-ci reached 100% disk usage with about 83 GB of unused images. Gitea and Keycloak warm services crash-looped. Daily cleanup skipped because Gitea was converging.
Verification
Nix syntax, module evaluation, and a full nixos-rebuild build passed.
Manual image cleanup reclaimed 86.25 GB; all warm services returned to 1/1 and their HTTP endpoints responded.
The new built cleanup binary is active through a persistent systemd drop-in at /etc/systemd/system.control/ci-docker-prune.service.d/disk-pressure.conf; a manual service run at 46% disk usage correctly kept the cache.
A full NixOS switch was deliberately avoided: /root/cc-ci builds an older host generation than the running orchestrator-managed system. The drop-in should be removed when this module is included in the next orchestrator rebuild.
## What changed
At 90% disk usage, prune unused Docker images older than seven days even when a warm service has unmet replicas. Preserve the live test stack guard and never prune volumes.
## Why
On 2026-11-02, cc-ci reached 100% disk usage with about 83 GB of unused images. Gitea and Keycloak warm services crash-looped. Daily cleanup skipped because Gitea was converging.
## Verification
- Nix syntax, module evaluation, and a full `nixos-rebuild build` passed.
- Manual image cleanup reclaimed 86.25 GB; all warm services returned to 1/1 and their HTTP endpoints responded.
- The new built cleanup binary is active through a persistent systemd drop-in at `/etc/systemd/system.control/ci-docker-prune.service.d/disk-pressure.conf`; a manual service run at 46% disk usage correctly kept the cache.
- A full NixOS switch was deliberately avoided: `/root/cc-ci` builds an older host generation than the running orchestrator-managed system. The drop-in should be removed when this module is included in the next orchestrator rebuild.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
What changed
At 90% disk usage, prune unused Docker images older than seven days even when a warm service has unmet replicas. Preserve the live test stack guard and never prune volumes.
Why
On 2026-11-02, cc-ci reached 100% disk usage with about 83 GB of unused images. Gitea and Keycloak warm services crash-looped. Daily cleanup skipped because Gitea was converging.
Verification
nixos-rebuild buildpassed./etc/systemd/system.control/ci-docker-prune.service.d/disk-pressure.conf; a manual service run at 46% disk usage correctly kept the cache./root/cc-cibuilds an older host generation than the running orchestrator-managed system. The drop-in should be removed when this module is included in the next orchestrator rebuild.