Skip to content

Commit d0a9f71

Browse files
committed
ci(github-release): update MSBuild detection logic
- Replace recursive file search with explicit known path checks - Add support for Visual Studio 2026 editions - Simplify output formatting for found MSBuild path - Improve error message clarity
1 parent f2d8b01 commit d0a9f71

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

.github/workflows/release.yml

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -213,12 +213,18 @@ jobs:
213213
id: find-msbuild
214214
shell: pwsh
215215
run: |
216-
$msbuild = Get-ChildItem -Path "C:\Program Files (x86)\Microsoft Visual Studio" -Recurse -Filter "MSBuild.exe" -ErrorAction SilentlyContinue | Where-Object { $_.FullName -match "\\Bin\\MSBuild\.exe$" } | Sort-Object { $_.FullName } -Descending | Select-Object -First 1
216+
$msbuildPaths = @(
217+
"C:\Program Files\Microsoft Visual Studio\2026\Enterprise\MSBuild\Current\Bin\MSBuild.exe",
218+
"C:\Program Files\Microsoft Visual Studio\2026\Professional\MSBuild\Current\Bin\MSBuild.exe",
219+
"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\MSBuild.exe",
220+
"C:\Program Files\Microsoft Visual Studio\2022\Professional\MSBuild\Current\Bin\MSBuild.exe"
221+
)
222+
$msbuild = $msbuildPaths | Where-Object { Test-Path $_ } | Select-Object -First 1
217223
if ($msbuild) {
218-
Write-Host "MSBuild found: $($msbuild.FullName)"
219-
"MSBUILD=$($msbuild.FullName)" >> $env:GITHUB_OUTPUT
224+
Write-Host "MSBuild found: $msbuild"
225+
"MSBUILD=$msbuild" >> $env:GITHUB_OUTPUT
220226
} else {
221-
Write-Error "MSBuild not found"
227+
Write-Error "MSBuild not found in expected locations"
222228
exit 1
223229
}
224230

0 commit comments

Comments
 (0)