Repository navigation
ci(release): dispatch homebrew + chocolatey auto-update on every release - #2320
Merged
Merged
Conversation
Fires `repository_dispatch` events of type `wheels-released` to wheels-dev/homebrew-wheels and wheels-dev/chocolatey-wheels after the GitHub release (snapshot or final) is published. Their auto-update workflows already accept the trigger; this drops the "wheels release -> package manager bump" latency from up to 24h (cron) to ~5min. Requires a DOWNSTREAM_DISPATCH_TOKEN secret (fine-grained PAT or app token with `metadata: read` + `actions: write` on the two downstream repos). When the secret is missing, the step warns and exits 0 so the release itself is never blocked — cron picks up. Static event type and a fixed repo list, no untrusted input flows into the curl arguments. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
bpamiri
force-pushed
the
ci/dispatch-downstream-package-managers
branch
from
April 27, 2026 01:08
74253dc to
bd9d3e7
Compare
bpamiri
added a commit
that referenced
this pull request
Apr 27, 2026
…ml (#2324) The release.yml workflow runs in two modes: 1. Push to main — secrets are inherited from the workflow run 2. workflow_call from snapshot.yml — secrets must be explicitly declared on the callee and explicitly passed through on the caller #2320 added the dispatch step + read of secrets.DOWNSTREAM_DISPATCH_TOKEN but only handled mode 1. In mode 2 (which is what snapshot.yml does on every develop push) the secret is invisible regardless of whether the repo has it set, so the dispatch step always hits its graceful-degrade warning branch. Fix is a 7-line passthrough: declare the secret as optional in the workflow_call.secrets block of release.yml, then pass it through from snapshot.yml. Since the step exits 0 when the secret is missing, no release ever breaks if the secret is unset — this just makes the secret actually visible when it IS set. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.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
After the GitHub release artifact upload, fires `repository_dispatch` events of type `wheels-released` to:
Both downstream repos already accept this trigger via companion PRs above (and chocolatey-wheels gains a new `publish-on-merge.yml` that pushes to chocolatey.org once auto-update lands).
This closes a real onboarding latency problem: today, when wheels-dev/wheels publishes a snapshot, Homebrew and Chocolatey users wait up to 24h for the next cron tick before `brew upgrade wheels` / `choco upgrade wheels` does anything useful. With this PR, the chain fires within ~5 minutes.
Setup required
Add a repository secret `DOWNSTREAM_DISPATCH_TOKEN` — a fine-grained PAT (or GitHub App token) with:
If the secret is missing, the step warns and exits 0 — the release itself is never blocked, and cron catches up the next morning.
Security
Test plan
Related
🤖 Generated with Claude Code