From 6edbdc340d71feb86e221b2be2faf16492549b8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mats=20T=C3=B6rnberg?= Date: Sat, 19 Sep 2026 17:46:02 +0200 Subject: [PATCH] fix sourcemaps --- .gitea/workflows/build.yaml | 23 +++++++++++++++++++++++ otel-ui/vite.config.ts | 11 +++++++++++ 2 files changed, 34 insertions(+) diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml index 60f342b..90c41fd 100644 --- a/.gitea/workflows/build.yaml +++ b/.gitea/workflows/build.yaml @@ -34,6 +34,7 @@ jobs: - name: Build amd64 image run: | docker build \ + --build-arg APP_RELEASE=${{ needs.Metadata.outputs.version }} \ --build-arg VERSION=${{ needs.Metadata.outputs.version }} \ --build-arg GIT_COMMIT=${{ needs.Metadata.outputs.git_commit }} \ --build-arg BUILD_DATE=${{ needs.Metadata.outputs.build_date }} \ @@ -46,6 +47,28 @@ jobs: - name: Rollout amd64 otel deployment run: | kubectl rollout restart deployment/otel-debug-receiver -n monitoring + kubectl rollout status deployment/otel-debug-receiver -n monitoring + - name: Upload source maps + env: + RELEASE: ${{ needs.Metadata.outputs.version }} + OTEL_URL: https://otel.k6n.net + run: | + # Maps come from the exact UI build stage that went into the image + # (cached layers), so bundle hashes match what is deployed. + docker build --target ui-builder \ + --build-arg APP_RELEASE="$RELEASE" \ + -t otel-debug-ui-builder:"$RELEASE" . + maps_dir="$(mktemp -d)" + cid="$(docker create otel-debug-ui-builder:"$RELEASE")" + docker cp "$cid:/app/dist" "$maps_dir/dist" + docker rm "$cid" >/dev/null + found=0 + while IFS= read -r -d '' map; do + found=1 + ./scripts/upload-sourcemap.sh "${map%.map}" + done < <(find "$maps_dir" -type f -name '*.js.map' -print0) + rm -rf "$maps_dir" + [ "$found" = 1 ] || { echo "no source maps found in UI build" >&2; exit 1; } # - name: Rollout amd64 deployment (pin to version) # run: | # kubectl set image deployment/cart-actor-x86 -n cart cart-actor-amd64=registry.knatofs.se/go-otel-debug-amd64:${{ needs.Metadata.outputs.version }} diff --git a/otel-ui/vite.config.ts b/otel-ui/vite.config.ts index ab0ab06..f85f2a2 100644 --- a/otel-ui/vite.config.ts +++ b/otel-ui/vite.config.ts @@ -21,6 +21,17 @@ export default defineConfig({ target: target, changeOrigin: true, }, + // RUM script and its ingest endpoint. Without these Vite answers + // /static/otel-rum.js with index.html, OtelRUM never loads and main.tsx + // silently skips init. + "/static": { + target: target, + changeOrigin: true, + }, + "/v1/logs": { + target: target, + changeOrigin: true, + }, "/dev-auth": { target: authIssuer, changeOrigin: true,