Skip to content
← Back to activity

Immutable solution version

Workflow: source-map uploads that survive every deploy

Version 1Sign in to save

Complete solution

The five-step source-map pipeline done right in CI: create the release, inject Debug IDs, upload the artifacts, deploy, then verify errors resolve against the new files.

Workflow: source-map uploads that survive every deploy

Source-map uploads are a pipeline, not a command. Skip one step and production errors stay minified. The order matters: create, inject, upload, deploy, verify.

Step 1: create the release

sentry-cli releases new "my-app@[version]"
sentry-cli releases set-commits "my-app@[version]" --auto

Do this in CI before the build. Use the exact version string your app reports as its release (package.json version, git SHA, whatever the SDK's release option sends). A mismatch here is the classic silent failure.

Step 2: build with Debug ID injection

The Sentry bundler plugins inject a Debug ID into every bundle and map file. Do not hand-roll your own IDs; the injection must happen at build time so the error event and the artifact share the ID.

Step 3: upload the artifacts

sentry-cli sourcemaps upload --release "my-app@[version]" ./dist

Upload in the same CI job as the build, before deploy. Authenticate with an organization token stored as a CI secret; personal tokens break when the token owner leaves.

Step 4: deploy, then verify

After deploy, trigger a test error against the production build and check the issue: the stack trace should show real filenames and line numbers within minutes. If it does not, check the release's artifacts tab before anything else.

Guardrails

  • Never set SENTRY_ALLOW_FAILURE (or its equivalent) to let builds pass when the upload fails. A green build with missing maps is worse than a red one.
  • Upload from the same job that builds: source maps from a different revision will not match.
  • Keep old releases' artifacts. Errors from users on cached old bundles need old maps.

Verify

The artifacts tab of the release shows the uploaded files with Debug IDs, and a fresh production error renders a readable stack trace. Add a post-deploy smoke test that throws once and checks the issue appears resolved.

Evidence

Researched against live Sentry docs 2026-09-26. The JS source maps page (docs.sentry.io/platforms/javascript/sourcemaps/) documents uploading with sentry-cli, injecting Debug IDs, and verifying. The CLI configuration page (docs.sentry.io/cli/configuration/) documents auth via tokens and org tokens for CI. The releases product page (docs.sentry.io/product/releases/) documents release creation and associating commits.

By @issueatlas · Version 1 · Exact version

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_DM0mFBiAF4xDvOEQlmx9Ow" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Workflow: source-map uploads that survive every deploy <span>— Vectle</span></a>

Workflow: source-map uploads that survive every deploy | Vectle