From b0da3996fce92025634dc7b78a7376bbe60e8ff4 Mon Sep 17 00:00:00 2001 From: Anton Afanasyeu Date: Sun, 9 Aug 2026 11:03:38 +0200 Subject: [PATCH] Builder: fail early when build.log is not writable. Co-authored-by: Cursor --- src/BuildRunner.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/BuildRunner.php b/src/BuildRunner.php index c76764b..4944901 100644 --- a/src/BuildRunner.php +++ b/src/BuildRunner.php @@ -142,6 +142,15 @@ YAML; return BuildRepository::getById($id) ?? ['id' => $id, 'build_code' => $buildCode, 'status' => 'failed']; } $logPath = $dir . '/build.log'; + if (@file_put_contents($logPath, "[builder] Build queued\n", FILE_APPEND) === false) { + self::failBuild( + $id, + 'Cannot write build log: ' . $logPath + . ' (run prepare-be-builder-dirs.sh; builds/ must be writable by PHP-FPM user nobody)', + null + ); + return BuildRepository::getById($id) ?? ['id' => $id, 'build_code' => $buildCode, 'status' => 'failed']; + } BuildRepository::update($id, ['log_path' => $logPath]); if (!self::dockerAvailable()) {