From 494d5522bafeee368bf3e93bfb4d351c6cf85e71 Mon Sep 17 00:00:00 2001 From: Jeffrey Alan Scudder Date: Sun, 29 Mar 2026 14:01:46 -0700 Subject: [PATCH] fix: auto-prune Docker before each oven build to prevent disk-full Co-Authored-By: Claude Opus 4.6 (1M context) --- oven/native-builder.mjs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/oven/native-builder.mjs b/oven/native-builder.mjs index a576d37d00..43ce06b559 100644 --- a/oven/native-builder.mjs +++ b/oven/native-builder.mjs @@ -349,6 +349,15 @@ async function runBuildJob(job) { repoDir, ); + // Auto-cleanup: prune Docker + old build artifacts to prevent disk-full failures. + addLogLine(job, "stdout", "Preflight: freeing disk space..."); + await runPhase(job, "preflight-cleanup", "bash", ["-lc", [ + "set -euo pipefail", + "docker system prune -f --volumes 2>/dev/null | tail -1 || true", + "rm -rf /tmp/oven-vmlinuz-* /tmp/ac-build-* 2>/dev/null || true", + "df -h / | tail -1", + ].join("\n")], repoDir); + // Resolve ref from git HEAD if manual trigger didn't provide one if (!job.ref || job.ref === "unknown") { const headRef = await runSync("git", ["rev-parse", "HEAD"], repoDir); -- 2.51.2