fix(cli): Normalize Linux ARM64 arch name for sentry-cli binary lookup#1201
Merged
Conversation
The JVM can report `os.arch` as `"arm64"` on some systems (e.g., Docker on Apple Silicon), but the bundled binary is named `sentry-cli-Linux-aarch64`. Normalize both ARM (`arm64`/`aarch64`) and x86 (`amd64`/`x86_64`) arch names to match the bundled binary naming convention. Fixes #1168 Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
romtsn
requested review from
adinauer,
chromy,
markushi,
rbro112 and
runningcode
as code owners
May 19, 2026 12:03
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
runningcode
reviewed
May 19, 2026
runningcode
left a comment
Contributor
There was a problem hiding this comment.
Should we take a look at https://github.com/getsentry/sentry-cli/releases/tag/3.4.2 and make sure we support all the different releases correctly here?
Expand platform coverage to match sentry-cli release binaries: - Download and support Windows-x86_64 and Windows-aarch64 binaries - Normalize Linux i386/i686 arch names - Add tests for all new arch mappings Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
- Download Linux-armv7 binary from sentry-cli releases - Normalize JVM arch values "arm" and "armv7l" to "armv7" - Replace incorrect armV7 test with arm and armv7l tests Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Replace Darwin-universal (26MB) with Darwin-arm64 (12MB) and Darwin-x86_64 (14MB) for smaller extracted binary at runtime. JAR size stays the same since both are bundled. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 25139c1. Configure here.
Revert Windows arch detection and Linux armv7/i386 normalization — Windows i686 works on all Windows archs via WoW64, and armv7/i386 are too niche to justify the JAR size increase. Keep macOS platform-specific binaries and Linux arm64 fix. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
rbro112
removed their request for review
June 1, 2026 16:33
runningcode
approved these changes
Jun 4, 2026
Some JVM distributions on Apple Silicon may report os.arch as "arm64" instead of "aarch64". Match both values to select the Darwin-arm64 binary, consistent with the Linux normalization. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
This was referenced Jun 11, 2026
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
getCliSuffix()so that botharm64andaarch64JVM values resolve to the bundledsentry-cli-Linux-aarch64binaryx86_64alongside the existingamd64mapping for robustnessarm64,aarch64, andx86_64arch valuesFixes #1168
Test plan
SentryCliProviderTesttests still passos.arch=arm64->Linux-aarch64os.arch=aarch64->Linux-aarch64os.arch=x86_64->Linux-x86_64docker build --platform linux/arm64no longer fails to find sentry-cli🤖 Generated with Claude Code