Files
setup-msbuild/action.yml
Chet Husk fc127f2e68 Default to auto-detected 64-bit MSBuild on 64-bit hosts (breaking change, v4)
Fixes #88

- msbuild-architecture no longer hardcodes a default of "x86". When the
  input is left unspecified, the action now auto-detects: it prefers x64
  when running on a 64-bit machine and the resolved VS/MSBuild install is
  17.0+ (VS 2022+), and falls back to x86 otherwise. An explicit
  msbuild-architecture value is always respected.
- Extracted resolveMSBuildArchitecture()/parseMajorVersion() as pure,
  exported helpers and added jest tests covering the resolution matrix.
- Bumped package.json version to 4.0.0 (breaking change/new major version).
- Updated action.yml input description and README (usage examples now
  reference @v4, new "Breaking Changes in v4" section, and the
  architecture-selection docs rewritten to describe auto-detection).
- Rebuilt dist/index.js via ncc.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-09-22 11:15:16 -05:00

27 lines
1.0 KiB
YAML

name: "setup-msbuild"
description: "Helps set up MSBuild into PATH for later usage."
author: "Microsoft"
branding:
color: purple
icon: terminal
inputs:
vswhere-path:
required: false
description: "Folder location of where vswhere.exe is located if a self-hosted agent"
vs-version:
description: "Version of Visual Studio to search; defaults to latest if not specified"
required: false
vs-prerelease:
description: "Enable searching for pre-release versions of Visual Studio/MSBuild"
required: false
msbuild-architecture:
description: 'The preferred processor architecture of MSBuild. Can be either "x86", "x64", or "arm64". "x64" is only available from Visual Studio version 17.0 and later. If left unspecified, the action auto-detects the best option: "x64" on 64-bit machines when a Visual Studio/MSBuild 17.0+ install is found, otherwise "x86".'
required: false
outputs:
msbuildPath:
description: "The resulting location of msbuild for your inputs"
runs:
using: "node24"
main: "dist/index.js"