Skip to content

fix: prevent broken pipe from bypassing CRC start retry logic#109

Merged
sebrandon1 merged 1 commit into
mainfrom
fix-retry-broken-pipe
Jul 16, 2026
Merged

fix: prevent broken pipe from bypassing CRC start retry logic#109
sebrandon1 merged 1 commit into
mainfrom
fix-retry-broken-pipe

Conversation

@sebrandon1

Copy link
Copy Markdown
Contributor

Summary

  • Fixed a bug where echo "$start_output" | grep caused a SIGPIPE under set -eo pipefail, killing the script before CRC start retries could execute. Replaced with grep ... "$start_log" to read the log file directly.
  • Added Failed to update pull secret to retryable error patterns (seen in nightly run 29528128170).
  • Removed unused start_output variable.

Context

In the latest nightly run, 13/14 jobs passed. The single failure (ubuntu-24.04, 4.21) hit a retryable SSH error during CRC start, but the retry logic was bypassed because the pipe broke before the grep could complete. This fix ensures retries work correctly regardless of CRC output size.

Test plan

  • make lint passes
  • Nightly run completes with improved retry reliability

- The retry pattern check used echo "$start_output" | grep which caused
  a SIGPIPE with pipefail, killing the script before retries could execute.
  Read the log file directly with grep instead.
- Added "Failed to update pull secret" to retryable error patterns.
- Made GitHub API connectivity check truly non-fatal with a separate
  check_optional_service function (5 retries, warns but never fails).
@sebrandon1
sebrandon1 force-pushed the fix-retry-broken-pipe branch from f2a9ca7 to e596e10 Compare July 16, 2026 20:52
@sebrandon1
sebrandon1 merged commit 85afc40 into main Jul 16, 2026
16 of 17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant