Repository navigation
NO-ISSUE: codify osac's release-branch ruleset and merge queue - #293
Merged
Merged
Conversation
Both were created out-of-band via the GitHub API on 2026-11-04 when
release-0.4 was actually cut (ahead of this repo's own plan/apply
cycle). Codifying them here so they're reviewable/reproducible like
everything else in this file, via the import block each carries.
release_branch_protection mirrors repo_osac's own ci-status-checks
ruleset: same three required checks, same review requirements -- with
the real approving-review-count embedded directly in the ruleset's own
pull_request rule rather than left to classic branch protection, since
github_branch_protection can't target a branch that doesn't exist yet
(release-* branches are cut on demand). Scoped to refs/heads/release-*
so it covers every future release branch (0.5, 0.6, ...) without
needing to be recreated per cut.
release_0_4_merge_queue has to be a separate, exact-branch-scoped
resource: GitHub rejects a wildcard ref_name pattern when a
merge_queue rule is present ("Wildcard ref names are not supported
when merge queue is enabled", confirmed live), so -- unlike the
wildcard ruleset above -- this one needs a new sibling resource per
release branch going forward.
Neither is generated by modules/common_repository: release-* is an
osac-specific pattern, not something every repo this module manages
needs, so these are standalone resources rather than new module
variables (unlike tag_rulesets, which genuinely is generic).
Validated with `tofu validate` against a scratch copy (this repo's
real backend is a shared S3 state bucket -- deliberately did not run
plan/apply against it from here; recommend a human run `tofu plan`
locally before merging, since this repo's own apply.yaml auto-applies
on push to main with no PR-time plan preview).
Signed-off-by: Elior Erez <eerez@redhat.com>
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
release-branch-protection(wildcardrefs/heads/release-*, required checks + review requirements + deletion/force-push block) andrelease-0.4-merge-queue(exact-branch, merge queue only -- GitHub rejects a wildcard pattern with a merge_queue rule present) were created out-of-band via the GitHub API on 2026-11-04 whenrelease-0.4was actually cut, ahead of this repo's own cycle.importblocks, mirroringrepo_osac's ownci-status-checks/merge_queuepatterns as closely as the wildcard/non-existent-branch constraints allow.release-0.4-merge-queuewill need a new sibling resource per future release branch (0.5, 0.6, ...) -- the wildcard ruleset only needed creating once.Important: this repo auto-applies on merge
apply.yamlrunstofu apply -auto-approveon every push tomain, with no PR-time plan preview. I validated this change withtofu validateagainst a scratch copy (did not touch the real S3 backend state from here). Recommend runningtofu planlocally against the real backend before merging, to confirm the import blocks produce a clean (zero-diff) adoption of the already-live resources.Test plan
tofu fmtclean.tofu validateagainst a scratch copy with the real provider plugin -- valid (only pre-existing, unrelated deprecation warnings).tofu planagainst the real backend (needs AWS credentials I don't have here) -- please run before merging.Summary
release-*branch ruleset for theosacrepository. It requires theCI,jira-reference, andE2Echecks, one code-owner approval, and dismissal of stale approvals. It blocks deletion and non-fast-forward updates.release-0.4. Both rulesets use the specified bypass actors and are imported into Terraform state.Risk classification
The applied risk label and its criteria cannot be established. The supplied material does not include the labeling instructions, and the repository search returned no matching risk-label guidance. Therefore, I cannot state whether this is
risk:ship,risk:show, orrisk:ask, or compare it with a nearby classification.