feat(vcluster-release): bump pro dependency in-pipeline; freeze extra bypass teams - #201
Merged
sydorovdmytro merged 3 commits intoJul 30, 2026
Conversation
… bypass teams vcluster-release cut_legacy now bumps the vendored github.com/loft-sh/vcluster dependency on the pro release branch (via an auto-merged PR) between the OSS tag and the pro tag, so a legacy cut ships the co-released OSS code without a manual release-prep PR. auto-approve-bot-prs (reusable) exposes the CI-wait tunables so the bump PR can wait out e2e. release-branch-freeze gains extra-bypass-team-ids so the bot team can merge while a line is frozen.
loft-bot
reviewed
Jul 30, 2026
- wait_for_bump_merge: only treat a closed PR as fatal after it has been seen open in this wait, so the documented recovery re-run (a prior closed PR is still the newest ?state=all match briefly) no longer false-aborts - surface sustained poll API failures (bad token/repo) and abort with the real cause after N consecutive failures instead of waiting out the full timeout; emit a periodic progress heartbeat - extract the poll's jq filter (BUMP_PR_JQ) and unit-test it against real JSON - correct the comment about auto-approve's merge lever (trusted author + chore PR title; the branch match is the caller's if:, not auto-approve's gate) - regenerate auto-doc tables (freeze extra-bypass-team-ids; auto-approve wait-*)
loft-bot
reviewed
Jul 30, 2026
sydorovdmytro
deleted the
devops-1209/vcluster-release-legacy-bump-and-freeze-bypass
branch
July 30, 2026 12:13
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
vcluster-release(cut_legacy): after tagging OSS, dispatch the prorelease-bump-vcluster.yamlto bump the vendoredgithub.com/loft-sh/vclusterdependency to the new tag and wait for the auto-merged PR to land, then tag pro. Automates the manual "release-prep" bump; the tag-before-dispatch invariant is preserved and the path fails closed on a closed/timed-out bump PR.auto-approve-bot-prs(reusable workflow): exposewait-max-attempts/wait-min-attempts/wait-sleep-seconds(defaults unchanged) so a caller can wait out a slow required check like e2e.release-branch-freeze: newextra-bypass-team-idsinput — add more teams to the freeze bypass (e.g. a bot team), since individual users can't be ruleset bypass actors.Test plan
bats .github/actions/vcluster-release/test/vcluster-release.bats→ 84/84 (incl. bump ordering, merged/closed-after-open/re-run-false-abort/timeout/API-failure, and a real-jq extraction check).bats .github/actions/release-branch-freeze/test/freeze.bats→ 23/23 (incl. extra-team payload, multi-team order, non-numeric rejection).shellcheckclean on both scripts;actionlintclean on the reusable workflow;make check-docsclean.Rollout (order matters)
Callers pin the action/workflow tags, and the new
wait-*inputs would fail validation against an un-advanced tag, so:auto-approve-bot-prs/v1first — the input additions are backward-compatible for existing callers that don't pass them.vcluster-proconsumer wiring (loft-sh/vcluster-pro#2124 + the v0.35/v0.36 auto-approve callers) and enableallow_auto_mergeonvcluster-pro.vcluster-release/v1andrelease-branch-freeze/v1(their consumers —cut-release.yamlandcode-freeze.yaml— already reference them).Review
Bugbot findings addressed in the follow-up commit: re-run false-abort guard (
seen_open), poll API-error handling + heartbeat, accurate auto-merge-gate comment, and a real-jq extraction test. Rollout ordering corrected above.Closes DEVOPS-1210
References DEVOPS-1209