Setting Release Automatically #755
Description
Problem Statement
Releases are not being consistently set across all SDKs. There are varying attempts to detect release variables and set them, but it is not consistent.
Leading to first and subsequent releases not being set.
Methods per SDK
SDK - Platfrom | Approach | Approach |
---|---|---|
Content Cell | Content Cell | Content Cell |
Python | - release parameter SENTRY_RELEASE env variable - Output of git rev-parse HEAD | see |
Rust SDK | falls back to SENTRY_RELEASE env if nothing was explicitly sent. & example snippets include release: sentry::release_name!() |
|
Node SDK | 1. release parameter 2. SENTRY_RELEASE env var 3. SENTRY_RELEASE.id global var 4. variety of `env variables |
Content Cell |
Solution Brainstorm
Referencing different SDKs strategies we should collect and apply them all where it makes sense, with prioritized order for setting the release when a customer is not doing it manually.
Ruby SDKAttempts->
getsentry/sentry-ruby#873 (comment)
https://docs.sentry.io/platforms/ruby/guides/rails/configuration/releases/
Comment explanation should be in docs
Node SDK Attempts->
Something similar to Ruby witch checking for sentry variable, and different platforms like vercel. But this is not doc'd
Go SDK Attempts->
if it is a git repo then it will always use the SHA if it is a GH repo
No mention in docs
https://docs.sentry.io/platforms/go/performance/