ci: auto-sync helm-charts chart on stable release - #259
Conversation
Add a notify-helm-charts job to release-please.yml that fires a repository_dispatch (github-app-released, version in client_payload) to chrisleekr/helm-charts when a stable main release is cut, so the chart-sync workflow there opens the chart-bump PR automatically instead of by hand. The job runs after both release-please and docker, so the dispatch never references an image tag that has not been pushed, and a failed image build suppresses the sync. Gated to release_created && ref_name == 'main' (beta prereleases do not sync the chart). Docs (CLAUDE.md + docs/build/conventions.md) note the new cross-repo dispatch. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HSfo6xtYqiQsQgEB2ht8Tv
|
Warning Review limit reached
Next review available in: 44 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughAdds a ChangesHelm Charts Dispatch on Stable Releases
Estimated code review effort: 2 (Simple) | ~10 minutes Sequence Diagram(s)sequenceDiagram
participant ReleasePlease as release-please job
participant Docker as docker job
participant NotifyHelmCharts as notify-helm-charts job
participant HelmCharts as chrisleekr/helm-charts
ReleasePlease->>NotifyHelmCharts: release_created == true
Docker->>NotifyHelmCharts: docker job completed
NotifyHelmCharts->>NotifyHelmCharts: verify github.ref_name == main
NotifyHelmCharts->>HelmCharts: gh api repos/dispatches (event_type=github-app-released, version)
Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Remove the RELEASE_TOKEN release-please setup sentence from CLAUDE.md and docs/build/conventions.md. The token requirement is not advertised in docs to avoid signalling attack surface on a public repo; the workflow still references the secret in code where it is unavoidable. The env-var config reference and security-invariant docs are unaffected. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HSfo6xtYqiQsQgEB2ht8Tv
What
Adds a
notify-helm-chartsjob torelease-please.ymlso that cutting a stablemainrelease automatically opens the chart-bump PR inchrisleekr/helm-charts, instead of running that sync workflow by hand.On
release_created && ref_name == 'main', the job sends arepository_dispatch(github-app-released, version inclient_payload) to helm-charts, whosegithub-app-syncworkflow listens for it (paired PR in that repo).Design notes
docker(needs: [release-please, docker]) so the dispatch never references an image tag that has not been pushed yet, and a failed image build suppresses the sync.permissions: {}: the cross-repo call uses the release PAT, notGITHUB_TOKEN.Merge ordering⚠️
The helm-charts receiver PR must be on helm-charts
mainbefore this fires (arepository_dispatchonly runs a workflow present on the default branch, and the POST returns 204 even if nothing listens, so a dropped delivery is silent). Merge order: helm-charts receiver → this → the release PR.Reviewer notes addressed
Cross-repo ordering / silent-drop hazard,
needs: dockercoupling, and doc-sync (CLAUDE.md +docs/build/conventions.md) all handled. The receiver-side PR carries the version-injection guard, guard tightening, and CDN-lag retry.Summary by CodeRabbit
New Features
mainreleases, triggering a downstream chart update workflow after a successful release and container build.Documentation