From 40e375ad42933a8289b4517465a27d4462c14cb1 Mon Sep 17 00:00:00 2001 From: Fernando Date: Thu, 5 Mar 2026 20:27:34 -0400 Subject: [PATCH 1/2] Fix CI release build failures in Sentry debug symbol steps - Linux: Add sudo to objcopy/strip (binary owned by root from sudo make) - macOS: Add sudo to dsymutil/strip (same root ownership issue) - Windows: Download sentry-cli binary directly instead of npm install (PATH override excluded Node.js, causing npm not found error) Co-Authored-By: Claude Opus 4.6 --- .github/workflows/deploy.yml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 6e4bfce..833e21b 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -239,13 +239,14 @@ jobs: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} SENTRY_ORG: ${{ secrets.SENTRY_ORG }} SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }} - PATH: "D:/a/QtMeshEditor/Qt/Tools/mingw1310_64/bin;D:/a/QtMeshEditor/Qt/Tools/CMake_64/bin;${{ env.PATH }}" run: | Copy-Item "${{github.workspace}}/bin/QtMeshEditor.exe" "${{github.workspace}}/bin/QtMeshEditor.debug.exe" - strip.exe --strip-debug "${{github.workspace}}/bin/QtMeshEditor.exe" - npm install -g @sentry/cli - sentry-cli debug-files upload --include-sources "${{github.workspace}}/bin/QtMeshEditor.debug.exe" + & "D:/a/QtMeshEditor/Qt/Tools/mingw1310_64/bin/strip.exe" --strip-debug "${{github.workspace}}/bin/QtMeshEditor.exe" + # Install sentry-cli via PowerShell (npm may not be in PATH) + Invoke-WebRequest -Uri "https://release-registry.services.sentry.io/apps/sentry-cli/latest?response=download&arch=x86_64&platform=Windows&package=sentry-cli" -OutFile "${{github.workspace}}/sentry-cli.exe" + & "${{github.workspace}}/sentry-cli.exe" debug-files upload --include-sources "${{github.workspace}}/bin/QtMeshEditor.debug.exe" Remove-Item "${{github.workspace}}/bin/QtMeshEditor.debug.exe" + Remove-Item "${{github.workspace}}/sentry-cli.exe" -ErrorAction SilentlyContinue shell: powershell - name: Copy assimp dll to the binary folder @@ -506,12 +507,12 @@ jobs: SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }} run: | # Extract debug symbols, strip binary, upload to Sentry - objcopy --only-keep-debug ./bin/QtMeshEditor ./bin/QtMeshEditor.debug - strip --strip-debug --strip-unneeded ./bin/QtMeshEditor - objcopy --add-gnu-debuglink=./bin/QtMeshEditor.debug ./bin/QtMeshEditor + sudo objcopy --only-keep-debug ./bin/QtMeshEditor ./bin/QtMeshEditor.debug + sudo strip --strip-debug --strip-unneeded ./bin/QtMeshEditor + sudo objcopy --add-gnu-debuglink=./bin/QtMeshEditor.debug ./bin/QtMeshEditor curl -sL https://sentry.io/get-cli/ | bash sentry-cli debug-files upload --include-sources ./bin/QtMeshEditor.debug - rm -f ./bin/QtMeshEditor.debug + sudo rm -f ./bin/QtMeshEditor.debug - name: Add missing libraries run: | @@ -1204,8 +1205,8 @@ jobs: SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }} run: | BIN_PATH="${{github.workspace}}/bin/QtMeshEditor.app/Contents/MacOS/QtMeshEditor" - dsymutil "$BIN_PATH" -o "${{github.workspace}}/bin/QtMeshEditor.dSYM" - strip "$BIN_PATH" + sudo dsymutil "$BIN_PATH" -o "${{github.workspace}}/bin/QtMeshEditor.dSYM" + sudo strip "$BIN_PATH" curl -sL https://sentry.io/get-cli/ | bash sentry-cli debug-files upload --include-sources "${{github.workspace}}/bin/QtMeshEditor.dSYM" From d0c3ffa93c8a30115e5776a16994cbbef49e6c6f Mon Sep 17 00:00:00 2001 From: Fernando Date: Thu, 5 Mar 2026 20:40:33 -0400 Subject: [PATCH 2/2] Use consistent sentry-cli install method across all platforms Address CodeRabbit review: replace unpinned binary download with the same curl-based install used by Linux/macOS (via Git Bash on Windows). Co-Authored-By: Claude Opus 4.6 --- .github/workflows/deploy.yml | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 833e21b..fc63c91 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -240,14 +240,12 @@ jobs: SENTRY_ORG: ${{ secrets.SENTRY_ORG }} SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }} run: | - Copy-Item "${{github.workspace}}/bin/QtMeshEditor.exe" "${{github.workspace}}/bin/QtMeshEditor.debug.exe" - & "D:/a/QtMeshEditor/Qt/Tools/mingw1310_64/bin/strip.exe" --strip-debug "${{github.workspace}}/bin/QtMeshEditor.exe" - # Install sentry-cli via PowerShell (npm may not be in PATH) - Invoke-WebRequest -Uri "https://release-registry.services.sentry.io/apps/sentry-cli/latest?response=download&arch=x86_64&platform=Windows&package=sentry-cli" -OutFile "${{github.workspace}}/sentry-cli.exe" - & "${{github.workspace}}/sentry-cli.exe" debug-files upload --include-sources "${{github.workspace}}/bin/QtMeshEditor.debug.exe" - Remove-Item "${{github.workspace}}/bin/QtMeshEditor.debug.exe" - Remove-Item "${{github.workspace}}/sentry-cli.exe" -ErrorAction SilentlyContinue - shell: powershell + cp "${{github.workspace}}/bin/QtMeshEditor.exe" "${{github.workspace}}/bin/QtMeshEditor.debug.exe" + "D:/a/QtMeshEditor/Qt/Tools/mingw1310_64/bin/strip.exe" --strip-debug "${{github.workspace}}/bin/QtMeshEditor.exe" + curl -sL https://sentry.io/get-cli/ | bash + sentry-cli debug-files upload --include-sources "${{github.workspace}}/bin/QtMeshEditor.debug.exe" + rm -f "${{github.workspace}}/bin/QtMeshEditor.debug.exe" + shell: bash - name: Copy assimp dll to the binary folder run: |