chore: migrate from brews to homebrew_casks#829
Closed
patrickhoefler wants to merge 6 commits intomainfrom
Closed
Conversation
- Replace `dockers` with `dockers_v2` for multi-arch builds - Replace `brews` with `homebrew_casks` - Update Dockerfile to use ARG TARGETPLATFORM for multi-arch support - Add VS Code workspace file Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Without a default, the integration test's docker build fails because the binary is at the project root, not linux/amd64/dockerfilegraph. GoReleaser sets TARGETPLATFORM explicitly; local builds now fall back to . Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Migrates release/distribution configuration to newer GoReleaser keys to support multi-arch container publishing and Homebrew cask-based distribution, with corresponding Dockerfile changes to align with the new Docker build layout.
Changes:
- Update
.goreleaser.yamlto usedockers_v2for multi-arch images andhomebrew_casksfor Homebrew distribution. - Update
Dockerfileto copy the binary from aTARGETPLATFORM-keyed path for GoReleaser multi-arch builds. - Add a VS Code workspace file to open this repo alongside the
homebrew-taprepo.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
homebrew.code-workspace |
Adds a workspace that includes this repo and a sibling homebrew-tap checkout. |
Dockerfile |
Switches binary COPY to use ARG TARGETPLATFORM to support GoReleaser dockers_v2 layout. |
.goreleaser.yaml |
Migrates deprecated GoReleaser keys to dockers_v2 and homebrew_casks, and configures linux/amd64 + linux/arm64 platforms. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
dockers_v2 requires a proper buildx builder (docker-container driver) for multi-platform builds. The default docker driver doesn't set TARGETPLATFORM, causing builds to fail. Also update CI smoke tests to dynamically find the snapshot image tag, since dockers_v2 in snapshot mode produces per-platform tags instead of the plain `latest` tag. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
dockers_v2 requires more careful Dockerfile changes. Reverting to the original dockers config while keeping the brews -> homebrew_casks migration. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 2 out of 3 changed files in this pull request and generated no new comments.
Comments suppressed due to low confidence (1)
.goreleaser.yaml:37
- Switching GoReleaser from
brewstohomebrew_caskslikely changes how users install via Homebrew. The current README still instructsbrew install patrickhoefler/tap/dockerfilegraph(formula-style); if the tap no longer provides a formula, this command will fail for new installs unless Homebrew migration covers that path. Please update the installation docs (or add an explicit note) to reflect the cask install command and expected migration behavior.
homebrew_casks:
- repository:
owner: patrickhoefler
name: homebrew-tap
token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
The tap now distributes a cask instead of a formula, so the install command requires the --cask flag. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Owner
Author
|
Postponed |
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
brewswithhomebrew_casksin.goreleaser.yaml— the correct Homebrew mechanism for distributing pre-built binaries, and the recommended migration path per GoReleaser's deprecation noticegraphvizdependency to use the newformula:prefix syntaxbrew install --cask*.code-workspaceto.gitignoreThe
homebrew-taprepo has already been updated separately:dockerfilegraph.rb) removedtap_migrations.jsonadded so existingbrewusers auto-migrate to the caskcloudbuildgraphandghtopformulas also removedTest plan
brewsdeprecation warningCasks/dockerfilegraph.rbin the tap🤖 Generated with Claude Code