Fix Sentry build: disable telemetry, fix release version passing

- Disable Sentry Vite plugin telemetry (telemetry: false)
- Pass SENTRY_RELEASE as build-arg (not secret) since it's just the git sha
- Keep only SENTRY_AUTH_TOKEN as Docker secret

The release version was showing as *** because Docker secrets get masked
by GitHub Actions. Git sha is not sensitive — safe as a build arg.

The sourcemap warning from react-router is a known upstream issue (ships
without sourcemaps) and is harmless.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Ullrich Schäfer 2026-03-27 18:15:45 +01:00
parent cdfd23abc2
commit 5d7b8c82e8
No known key found for this signature in database
GPG key ID: A32FF691A0F752D9
5 changed files with 8 additions and 6 deletions

View file

@ -39,7 +39,6 @@ jobs:
chmod +x sops-v3.9.4.linux.amd64
SOPS_AGE_KEY="${{ secrets.AGE_SECRET_KEY }}" ./sops-v3.9.4.linux.amd64 -d infrastructure/secrets.app.env > /tmp/secrets.env
grep SENTRY_AUTH_TOKEN /tmp/secrets.env | cut -d= -f2- > /tmp/sentry_token
echo "${{ github.sha }}" > /tmp/sentry_release
- uses: docker/build-push-action@v7
with:
@ -49,9 +48,10 @@ jobs:
tags: |
ghcr.io/trails-cool/${{ matrix.app }}:latest
ghcr.io/trails-cool/${{ matrix.app }}:${{ github.sha }}
build-args: |
SENTRY_RELEASE=${{ github.sha }}
secrets: |
SENTRY_AUTH_TOKEN=/tmp/sentry_token
SENTRY_RELEASE=/tmp/sentry_release
deploy:
name: Deploy Apps

View file

@ -14,12 +14,12 @@ COPY packages/db/package.json packages/db/
RUN pnpm install --frozen-lockfile
FROM base AS build
ARG SENTRY_RELEASE
COPY --from=deps /app/ ./
COPY . .
RUN --mount=type=secret,id=SENTRY_AUTH_TOKEN \
--mount=type=secret,id=SENTRY_RELEASE \
SENTRY_AUTH_TOKEN="$(cat /run/secrets/SENTRY_AUTH_TOKEN 2>/dev/null)" \
SENTRY_RELEASE="$(cat /run/secrets/SENTRY_RELEASE 2>/dev/null)" \
SENTRY_RELEASE="$SENTRY_RELEASE" \
pnpm --filter @trails-cool/journal build
FROM base AS runtime

View file

@ -17,6 +17,7 @@ export default defineConfig({
release: { name: process.env.SENTRY_RELEASE },
sourcemaps: { filesToDeleteAfterUpload: ["./build/**/*.map"] },
disable: !process.env.SENTRY_AUTH_TOKEN,
telemetry: false,
}),
],
resolve: {

View file

@ -14,12 +14,12 @@ COPY packages/db/package.json packages/db/
RUN pnpm install --frozen-lockfile
FROM base AS build
ARG SENTRY_RELEASE
COPY --from=deps /app/ ./
COPY . .
RUN --mount=type=secret,id=SENTRY_AUTH_TOKEN \
--mount=type=secret,id=SENTRY_RELEASE \
SENTRY_AUTH_TOKEN="$(cat /run/secrets/SENTRY_AUTH_TOKEN 2>/dev/null)" \
SENTRY_RELEASE="$(cat /run/secrets/SENTRY_RELEASE 2>/dev/null)" \
SENTRY_RELEASE="$SENTRY_RELEASE" \
pnpm --filter @trails-cool/planner build
FROM base AS runtime

View file

@ -19,6 +19,7 @@ export default defineConfig({
release: { name: process.env.SENTRY_RELEASE },
sourcemaps: { filesToDeleteAfterUpload: ["./build/**/*.map"] },
disable: !process.env.SENTRY_AUTH_TOKEN,
telemetry: false,
}),
],
resolve: {