Skip to content

Commit c477e72

Browse files
committed
ci(rc18): make the non-blocking job able to report red
`pytest | tee` makes the run step exit with tee's status, and nothing read the status-rc18 file the step writes. The job therefore reported success no matter what RC18 did -- its first run showed every step green while the suite had 25 failures. Non-blocking had become invisible, which is not the same thing. Read the status and fail the step on a real pytest failure. continue-on-error at the job level keeps that from gating the workflow: the job shows RED, the run stays green, and the result is actually legible.
1 parent 7ab558b commit c477e72

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -493,6 +493,22 @@ jobs:
493493
require_tests: true
494494
fail_on_failure: false
495495

496+
# `pytest | tee` makes the run step exit with tee's status, so without
497+
# this the job reports success no matter what RC18 did -- non-blocking
498+
# would have meant invisible. This step fails on a real pytest failure;
499+
# continue-on-error above keeps that from gating the workflow, so the
500+
# job shows RED while the run stays green.
501+
- name: Report the RC18 result
502+
if: always()
503+
run: |
504+
STATUS=$(cat keepkey-firmware/deps/python-keepkey/tests/status-rc18 2>/dev/null || echo "1")
505+
if [ "$STATUS" = "0" ]; then
506+
echo "RC18 suite passed."
507+
else
508+
echo "::warning::RC18 (7.15.0) differs from the pinned 7.16 build. This job is non-blocking; see the summary."
509+
exit 1
510+
fi
511+
496512
# ═══════════════════════════════════════════════════════════
497513
# STAGE 2b: TEST — the OTHER shipping product
498514
# ═══════════════════════════════════════════════════════════

0 commit comments

Comments
 (0)