1818
1919env :
2020 platform : " ${{ inputs.client_target == 'emu' && 'Win32' || 'x64' }}"
21+ scoop_packages : " sentry-cli"
2122
2223jobs :
2324 build :
@@ -135,6 +136,60 @@ jobs:
135136 }
136137 $resourceFile | Set-Content $resourceFilePath
137138
139+ - name : Check Scoop Installation
140+ if : false # Disable scoop since we're not using sentry integration
141+ id : check_scoop
142+ shell : pwsh
143+ run : |
144+ $scoopPath = "$env:USERPROFILE\scoop"
145+ $packages = "${{ env.scoop_packages }}" -split '\s+'
146+ $allInstalled = $true
147+
148+ if (Test-Path $scoopPath) {
149+ foreach ($pkg in $packages) {
150+ if (-not (Test-Path "$scoopPath\apps\$pkg")) {
151+ $allInstalled = $false
152+ break
153+ }
154+ }
155+ } else {
156+ $allInstalled = $false
157+ }
158+
159+ $hash = (Get-FileHash -InputStream ([IO.MemoryStream]::new([Text.Encoding]::UTF8.GetBytes("${{ env.scoop_packages }}"))) -Algorithm SHA256).Hash.Substring(0,16)
160+
161+ echo "scoop_ready=$allInstalled" >> $env:GITHUB_OUTPUT
162+ echo "scoop_packages_hash=$hash" >> $env:GITHUB_OUTPUT
163+
164+ - name : Restore Scoop Cache
165+ if : false # Disable scoop since we're not using sentry integration
166+ # if: steps.check_scoop.outputs.scoop_ready != 'true'
167+ id : restore_scoop_cache
168+ uses : actions/cache@v4
169+ with :
170+ path : ' ~/scoop'
171+ key : ${{ runner.os }}-scoop-${{ steps.check_scoop.outputs.scoop_packages_hash }}
172+
173+ - name : Install Scoop
174+ if : false # Disable scoop since we're not using sentry integration
175+ # if: steps.check_scoop.outputs.scoop_ready != 'true' && steps.restore_scoop_cache.outputs.cache-hit != 'true'
176+ uses : MinoruSekine/setup-scoop@v4.0.2
177+ with :
178+ install_scoop : ' true'
179+ buckets : extras
180+ apps : ${{ env.scoop_packages }}
181+ scoop_update : ' true'
182+ update_path : ' true'
183+
184+ - name : Setup Scoop PATH
185+ if : false # Disable scoop since we're not using sentry integration
186+ # if: steps.check_scoop.outputs.scoop_ready == 'true' || steps.restore_scoop_cache.outputs.cache-hit == 'true'
187+ uses : MinoruSekine/setup-scoop@v4.0.2
188+ with :
189+ install_scoop : ' false'
190+ scoop_update : ' false'
191+ update_path : ' true'
192+
138193 - name : Setup MSBuild
139194 uses : microsoft/setup-msbuild@v2
140195 with :
@@ -147,8 +202,19 @@ jobs:
147202 run : |
148203 nuget restore src/MacroQuestCustom.sln
149204
150- - name : Handle vcpkg Cache
151- if : false # Disabled for build server speed improvements
205+ - name : Check vcpkg Installation
206+ id : check_vcpkg
207+ shell : pwsh
208+ run : |
209+ $installedPath = "${{ github.workspace }}/contrib/vcpkg/installed"
210+ if ((Test-Path $installedPath) -and (Get-ChildItem $installedPath -Directory | Measure-Object).Count -gt 0) {
211+ echo "vcpkg_installed=true" >> $env:GITHUB_OUTPUT
212+ } else {
213+ echo "vcpkg_installed=false" >> $env:GITHUB_OUTPUT
214+ }
215+
216+ - name : Restore vcpkg Cache
217+ if : steps.check_vcpkg.outputs.vcpkg_installed != 'true'
152218 uses : actions/cache@v4
153219 with :
154220 path : |
@@ -172,6 +238,16 @@ jobs:
172238 - name : Create Symbols Archive
173239 run : 7z a -tzip -r build/bin/MacroQuest-Symbols.zip build/bin/Release/*.exe build/bin/Release/*.dll build/bin/Release/*.pdb
174240
241+ - name : Upload Symbols to Sentry
242+ if : false # Disable sentry integration
243+ env :
244+ SENTRY_AUTH_TOKEN : ${{ secrets.SENTRY_AUTH_TOKEN }}
245+ SENTRY_ORG : macroquest
246+ SENTRY_PROJECT : macroquest
247+ shell : pwsh
248+ run : |
249+ sentry-cli debug-files upload --wait "${{ github.workspace }}\build\bin\Release"
250+
175251 - name : Upload Symbols Artifact
176252 uses : actions/upload-artifact@v4
177253 with :
0 commit comments