Installation

Learn about the different methods available to install `sentry-cli`.

Depending on your platform, there are different methods available to install sentry-cli.

You can find the list of releases on the GitHub release page. We provide executables for Linux, OS X and Windows. It’s a single file download and upon receiving the file you can rename it to just sentry-cli or sentry-cli.exe to use it.

If you are on OS X or Linux, you can use the automated downloader which will fetch the latest release version for you and install it:

Copied
curl -sL https://sentry.io/get-cli/ | sh

We do however, encourage you to pin the specific version of the CLI, so your builds are always reproducible. To do that, you can use the exact same method, with an additional version specifier:

Copied
curl -sL https://sentry.io/get-cli/ | SENTRY_CLI_VERSION="2.33.1" sh

This will automatically download the correct version of sentry-cli for your operating system and install it. If necessary, it will prompt for your admin password for sudo. For a different installation location or for systems without sudo (like Windows), you can export INSTALL_DIR=/custom/installation/path before running this command.

To verify it's installed correctly you can bring up the help:

Copied
sentry-cli --help

There is also the option to install sentry-cli via npm for specialized use cases. This, for instance, is useful for build servers. The package is called @sentry/cli and in the post installation it will download the appropriate release binary:

Copied
npm install @sentry/cli

You can then find it in the .bin folder:

Copied
./node_modules/.bin/sentry-cli --help

In case you want to install this with npm system wide with sudo you will need to pass --unsafe-perm to it:

Copied
sudo npm install -g @sentry/cli --unsafe-perm

This installation is not recommended however.

By default, this package will download sentry-cli from the CDN managed by Fastly. To use a custom CDN, set the npm config property sentrycli_cdnurl. The downloader will append "/<version>/sentry-cli-<dist>".

Copied
npm install @sentry/cli --sentrycli_cdnurl=https://mymirror.local/path

Or add property into your .npmrc file (https://docs.npmjs.com/files/npmrc)

Copied
sentrycli_cdnurl=https://mymirror.local/path

Another option is to use the environment variable SENTRYCLI_CDNURL.

Copied
SENTRYCLI_CDNURL=https://mymirror.local/path npm install @sentry/cli

Options listed below control how sentry-cli install script behaves, when installed through npm.

SENTRYCLI_CDNURL:

If set, the script will use given URL for fetching the binary. Defaults to https://downloads.sentry-cdn.com/sentry-cli.

SENTRYCLI_USE_LOCAL:

If set to 1, sentry-cli binary will be discovered from your $PATH and copied locally instead of being downloaded from external servers. It will still verify the version number, which has to match.

SENTRYCLI_SKIP_DOWNLOAD:

If set to 1, the script will skip downloading the binary completely.

SENTRYCLI_SKIP_CHECKSUM_VALIDATION:

If set to 1, the script will skip the checksum validation phase. You can manually verify the checksums by visiting Build Checksums page.

SENTRYCLI_NO_PROGRESS_BAR:

If set to 1, the script will not display download progress bars. This is a default behavior for CI environments.

SENTRYCLI_LOG_STREAM:

If set, the script will change where it writes its output. Possible values are stdout and stderr. Defaults to stdout.

If you are on OS X, you can install sentry-cli via homebrew:

Copied
brew install getsentry/tools/sentry-cli

If you are on Windows, you can install sentry-cli via Scoop:

Copied
> scoop install sentry-cli

For unsupported distributions and CI systems, we offer a Docker image that comes with sentry-cli preinstalled. It is recommended to use the latest tag, but you can also pin to a specific version. By default, the command runs inside the /work directory. Mount relevant project folders and build outputs there to allow sentry-cli to scan for resources:

Copied
docker pull getsentry/sentry-cli
docker run --rm -v $(pwd):/work getsentry/sentry-cli --help

You can use sentry-cli update and sentry-cli uninstall to update or uninstall the sentry-cli binary. These commands may be unavailable in certain situations, generally when sentry-cli has been installed by a tool like homebrew or yarn, either directly or as a dependency of another package. In those cases, the same tool will need to be used for updating and removal. If you find that sentry-cli update and sentry-cli uninstall aren't working and you don't know how the package was installed, running which sentry-cli will often provide a clue as to which tool to use.

When downloading an executable from a remote server, it's often a good practice to verify, that what has been downloaded, is in fact what we expect it to be. To make sure that this is the case, we can use checksum validation. A checksum is the value calculated from the contents of a file, in a form of hash, in our case SHA256, and it acts as the data integrity check, as it's always producing the same output, for a given input.

Below is the table of SHA256 checksums for all available build targets that our CLI supports. To calculate the hash of a downloaded file, you can use sha256sum utility, which is preinstalled in OSX and most Linux distributions.

Filename (v2.33.1)Integrity Checksum
sentry-cli-Darwin-arm64sha384-b84ef1ad86bf6cb17968c277f8ffa529428ce7012ee309469b029989e60f5d4d
sentry-cli-Darwin-universalsha384-29de180bb210628110fa1048e46dd856a9a27bcc4c6e57873427538f5b624a75
sentry-cli-Darwin-x86_64sha384-c5559c2abc93b29d8e3173960af3d27d071182efe2398124a8d3461c107619e9
sentry-cli-Linux-aarch64sha384-93b3a39c0498410b873f6c2c6d6ee281703aa389afa149acffdb9a9e45167add
sentry-cli-Linux-armv7sha384-3afa6e8b49b8826fea4fd137d3ac78879410629db6c09baf6caf22da4d1fd1da
sentry-cli-Linux-i686sha384-7fa5b500256d9726f74882b7117fe19605831931a0c3e9df9b56e0146e98b9e6
sentry-cli-Linux-x86_64sha384-f67c549d58467be3c2d387b42e52dc62502b14af0fee74c11c23e3fa75574d96
sentry-cli-Windows-i686.exesha384-afbb9e75b784203ef8b15bdadd217aff29551ad8120768b277a052cf50bebbab
sentry-cli-Windows-x86_64.exesha384-8076284bb41d2616641f9aea0c5fc13e1d5ff3b41990dc953b5b4298bf74108d
sentry_cli-2.33.1-py3-none-macosx_10_15_x86_64.whlsha384-ab9df0fbdcf94548ec058fa24ae678bf2366aab21a0e28901a5d64e6ca6d876d
sentry_cli-2.33.1-py3-none-macosx_11_0_arm64.whlsha384-7fa413af9b1ee990b5ccfa4c80b040063bcde5c626d391c639cb032a178fbb06
sentry_cli-2.33.1-py3-none-macosx_11_0_universal2.whlsha384-bfee86bf8954c40668e68cfd3203e7e80800dedb49778e17c17aa8042b440136
sentry_cli-2.33.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_2_aarch64.whlsha384-db5e1010a5b6b89c14c0b8b75ead34f326893d3600bac46d1e4ec887f548282e
sentry_cli-2.33.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.musllinux_1_2_armv7l.whlsha384-8e22db3440b0bbebfa907e14a7eadfaaf82f5e7c0d62ea00dd91d87baf93319b
sentry_cli-2.33.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.musllinux_1_2_i686.whlsha384-6486c639f5029a0533947e669bb361740760a4ffcb4aebdda1fddc6a23f3c35c
sentry_cli-2.33.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.musllinux_1_2_x86_64.whlsha384-98db834929f591e38baa54da1b8d4b440b3d20c3d2235dbd8dab3a25a0eca953
sentry_cli-2.33.1-py3-none-win32.whlsha384-b6e15c80627807a1b127f704bab90f56f4074b6bd0344628825ebf4cf79e2284
sentry_cli-2.33.1-py3-none-win_amd64.whlsha384-6b34edd5d5867e24d8f18c1206c2a4f56442989bb5597c288c080f28409843fd
sentry_cli-2.33.1.tar.gzsha384-44a8f2373ae3aeea39a448e0caba24e076a66f83a4603f6fdee40b0eb2187f6c

If you would like to verify checksums for historic versions of the sentry-cli, please refer to our release registry directly, which can be found at https://release-registry.services.sentry.io/apps/sentry-cli/{version}. For example, https://release-registry.services.sentry.io/apps/sentry-cli/1.74.4.

Help improve this content
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").