From caabf64e9c0e963e26c2d5cb9863f6877e815de1 Mon Sep 17 00:00:00 2001 From: Ozan Durgut Date: Fri, 31 Jul 2026 16:40:21 +0200 Subject: [PATCH] ci/build: fail the job on hard check errors check_checkpatch, check_license and check_qconfig_sync detect hard errors by setting fail=1 and returning it, but the downstream summary only fails on step_fail_ variables in GITHUB_ENV, which are written by the ERR trap. A bare 'return 1' does not trigger the trap, so the error was annotated and the step exited non-zero, yet the job (continue-on-error: true) and the aggregated result stayed green. A commit missing a Signed-off-by line, for example, passed CI. Set step_fail_ explicitly when fail=1 so the failure is recorded and the aggregated check fails. Signed-off-by: Ozan Durgut --- ci/build.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ci/build.sh b/ci/build.sh index 4b1e86fa9568..c94df8193904 100644 --- a/ci/build.sh +++ b/ci/build.sh @@ -165,6 +165,7 @@ check_checkpatch() { [[ "$strategy" == "file" ]] && (git switch - 1>/dev/null; git branch -D $tmp_branch_name) _set_step_warn $warn + [[ "$fail" == "1" ]] && set_step_fail "$step_name" return $fail } @@ -272,6 +273,7 @@ check_license() { done _set_step_warn $warn + [[ "$fail" == "1" ]] && set_step_fail "$step_name" return $fail } @@ -334,6 +336,7 @@ check_qconfig_sync() { git clean -fd -e ci/ rm -f "$list" + [[ "$fail" == "1" ]] && set_step_fail "$step_name" return $fail }