Skip to content

Sentry Release Registry

Updates the Sentry release registry with the latest version.

Configuration

OptionDescription
appsDict of app configs keyed by canonical name (e.g., app:craft)
sdksDict of SDK configs keyed by canonical name (e.g., maven:io.sentry:sentry)

App/SDK Options

OptionDescription
urlTemplateURL template for download links
linkPrereleasesUpdate for preview releases. Default: false
checksumsList of checksum configs
onlyIfPresentOnly run if matching file exists
nameHuman-readable name (used when creating new packages)
packageUrlLink to package registry page, e.g., npmjs.com (used when creating new packages)
mainDocsUrlLink to main documentation (used when creating new packages)
apiDocsUrlLink to API documentation (used when creating new packages)

Checksum Configuration

checksums:
- algorithm: sha256 # or sha384, sha512
format: hex # or base64

Example

targets:
- name: registry
sdks:
'npm:@sentry/browser':
apps:
'app:craft':
urlTemplate: 'https://example.com/{{version}}/{{file}}'
checksums:
- algorithm: sha256
format: hex

Package Types

  • sdk: Package uploaded to public registries (PyPI, NPM, etc.)
  • app: Standalone application with version files in the registry

Creating New Packages

When you introduce a new package that doesn’t yet exist in the release registry, Craft will automatically create the required directory structure and initial manifest.

targets:
- name: registry
sdks:
'npm:@sentry/wasm':
name: 'Sentry WASM'
packageUrl: 'https://www.npmjs.com/package/@sentry/wasm'
mainDocsUrl: 'https://docs.sentry.io/platforms/javascript/'
urlTemplate: 'https://example.com/{{version}}/{{file}}'

Manifest Metadata

The repo_url field is always derived from your GitHub repository configuration. When specified, the metadata fields (name, packageUrl, mainDocsUrl, apiDocsUrl) are applied to every release, allowing you to update package metadata by changing your .craft.yml configuration.