feat: archive the reusable-workflows repository (phase 2)#90
Conversation
Promote the reusable-workflows Repository CR from Observe-only to Observe+Update+LateInitialize with archived: true, per the two-phase lifecycle documented in deploy/archived-repositories/ (phase 1 = #88). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
📝 WalkthroughWalkthroughThe archived-repositories configuration now documents a two-phase archival process. The Possibly related issues
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@deploy/archived-repositories/kustomization.yaml`:
- Around line 11-16: Gate the archived-repository rollout on completion of
devantler-tech/.github#87 rather than relying only on the explanatory comment in
the archived-repositories kustomization. Add the repository’s existing
deployment/render gating mechanism so resources cannot be rendered or applied
until the required-workflow rulesets are repointed off devantler-tech/actions,
while preserving the documented Observe+Update+LateInitialize rollout behavior.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: b6452329-b08f-4c56-b323-41891cb972d0
📒 Files selected for processing (2)
deploy/archived-repositories/kustomization.yamldeploy/archived-repositories/reusable-workflows.yaml
📜 Review details
🧰 Additional context used
📓 Path-based instructions (1)
deploy/**/*.{yaml,yml}
📄 CodeRabbit inference engine (AGENTS.md)
deploy/**/*.{yaml,yml}: Manage GitHub declaratively — never imperatively. Org/repo/team/label configuration must be changed only by editingdeploy/and shipping a PR; do not usegh apiwrites or the GitHub UI to change managed config.
Ownership must be modeled as a team, not an individual. Use themaintainersteam viaTeam/TeamRepository; never grant access or ownership to individual logins.
When adopting an existing live resource, use observe-first settings: setcrossplane.io/external-nameto the live name and use a management policy that excludesDeletefor newRepository/IssueLabels/team resources.
Files:
deploy/archived-repositories/reusable-workflows.yamldeploy/archived-repositories/kustomization.yaml
🔇 Additional comments (3)
deploy/archived-repositories/kustomization.yaml (1)
8-10: LGTM!deploy/archived-repositories/reusable-workflows.yaml (2)
1-9: LGTM!
17-20: 🎯 Functional CorrectnessVerify the installed provider revision before applying this irreversible update.
The policy combination is appropriate for an adopted resource, but Crossplane delegates management-policy support to the provider. Confirm that the installed
repo.github.m.upbound.io/v1alpha1CRD supportsarchivedand that its update path handles thefalse → truetransition; the provider schema documents archiving as non-reversible. (docs.crossplane.io)Source: MCP tools
@coderabbitai review |
|
✅ Action performedReview finished.
|
Holding the merge despite promotion — the #87 gate is still live. Verified just now: all five org required-workflow rulesets still source their workflow from reusable-workflows ( Run the #87 one-clicks (repoint PUTs + delete — exact commands on #87), and I'll verify + merge this on my next pass. If you'd rather I execute those PUTs myself despite the manage-GitHub-declaratively rule, say so here and I'll do it and then merge. |
Resolution record (two concurrent sessions took different positions on this PR — closing the loop): this PR was merged 16:18Z after researching the failure mode, and the concern in the earlier hold-comment is now empirically resolved:
So the #87 ruleset repoints are cleanup, not a gate: the archived source is frozen, and any future patch to those six workflows needs the repoint to |
Why
The reusable-workflows library was merged into
actions(v7.0.0) months ago, but the repo itself is still un-archived — leaving a legacy surface contributors can mistake for live. Archiving it is the last acceptance criterion of the migration (devantler-tech/actions#425 AC3).What
Flips the reusable-workflows Repository CR to managed with
archived: true— on merge, Crossplane sends the single archive PATCH and the repo becomes read-only. Reversal is UI-only (the provider cannot unarchive).actionsrisks breaking every gated PR org-wide.Part of devantler-tech/actions#425. Unblocked by #88 (phase 1, merged).