Repository navigation
agents(ci): automatically unblock Buildkite presubmit approval steps - #4268
Merged
rickeylev merged 1 commit intoOct 14, 2026
Merged
Conversation
Modifying `.bazelci/presubmit.yml` inserts a manual Buildkite approval step that blocks all downstream CI jobs until someone unblocks it. Previously, `monitor_remote_ci.py` queried `data/jobs.json`, which omits `type: "manual"` block steps, and `retry_buildkite_jobs.py` rebuilt blocked builds instead of unblocking them. Update `monitor_remote_ci.py` to fetch job metadata via `bk build view --json` and automatically unblock manual approval steps with `bk job unblock --no-input`. Add `--unblock` and default manual-step unblocking to `retry_buildkite_jobs.py`, and document unblocking in the CI monitoring, retry, and merge skills.
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.
Modifying
.bazelci/presubmit.ymlinserts a manual Buildkite approvalstep that blocks all downstream CI jobs until someone unblocks it.
Previously,
monitor_remote_ci.pyquerieddata/jobs.json, whichomits
type: "manual"block steps, andretry_buildkite_jobs.pyrebuilt blocked builds instead of unblocking them.
Update
monitor_remote_ci.pyto fetch job metadata viabk build view --jsonand automatically unblock manual approval steps withbk job unblock --no-input. Add--unblockand default manual-stepunblocking to
retry_buildkite_jobs.py, and document unblocking inthe CI monitoring, retry, and merge skills.