Repository navigation
ci(desktop): retry failed macos desktop jobs once - #524
Merged
Merged
Conversation
Add a 45 minute running-time limit and one automatic rerun for the two macOS desktop jobs. Queue time is not bounded.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Desktop cache warm (macos-15)andUnsigned desktop build (macos-15)gettimeout-minutes: 45(the Windows legs of the same matrix too), so a job that starts and hangs stops after 45 minutes instead of 360.ci-retry.yml: when a CI run ends in failure on attempt 1 and one of those two macOS jobs failed, it runsgh run rerun --failedonce. A pull request that has moved to a newer head is not retried.release.ymlheader now points todocs/releasing.md. The ci: ad-hoc sign the macOS bundle and verify its seal #516 release items (whole-bundle ad-hoc signing,codesign --verify, honest comment, Windows "signs nothing") were checked and are correct.Does not cover:
timeout-minutesdoes not count queue time. A job waiting for a macOS runner that never comes never starts, so neither the limit nor the retry fires, and the run only ends when something else ends it. This PR does not fix the outage hang.Also: the retry fires on any macOS desktop failure, a real compile error included, and
--failedreruns every failed job of the run; a flaky job can be hidden by one green rerun. A push or nightly run is retried at its own commit even if main has moved on. A fork pull request, which has no pull request number in the payload, is skipped.Not verified: no Actions run; YAML parses, actionlint not installed. Whether a timed-out job reports
failure(the retry only matchesfailure), andworkflow_runonly runs from the default branch, so the retry is live after merge.Proposal only (not built): an ubuntu watchdog job that polls the run's jobs and cancels it when a macOS job is still queued after N minutes, plus extending the retry to cancelled runs.
Closes #
Parity rows
none
Frames built
Frames built: none
Testing
Co-authors
none
AI usage
Checklist
web/src/generatedwith any contract change;docs/architecture.mdwith any rule change