You've already forked setup-msbuild
mirror of
https://github.com/microsoft/setup-msbuild.git
synced 2025-07-04 06:03:16 +07:00
Compare commits
9 Commits
Author | SHA1 | Date | |
---|---|---|---|
cc48120b57 | |||
645e3f7313 | |||
1ccd12233c | |||
750ad4a08c | |||
8c3da926c2 | |||
e0b9f539d1 | |||
e38c2fa359 | |||
1bba226ea3 | |||
0b44c6745b |
21
.github/workflows/test.yml
vendored
21
.github/workflows/test.yml
vendored
@ -10,6 +10,14 @@ on:
|
|||||||
- dev
|
- dev
|
||||||
paths-ignore:
|
paths-ignore:
|
||||||
- '*.md'
|
- '*.md'
|
||||||
|
workflow_dispatch:
|
||||||
|
branches:
|
||||||
|
- dev
|
||||||
|
- arm64
|
||||||
|
- master
|
||||||
|
paths-ignore:
|
||||||
|
- '*.md'
|
||||||
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
@ -34,16 +42,27 @@ jobs:
|
|||||||
PATH: ''
|
PATH: ''
|
||||||
|
|
||||||
- name: Setup MSBuild (x64)
|
- name: Setup MSBuild (x64)
|
||||||
id: setup_msbuild_path
|
if: always()
|
||||||
|
id: setup_msbuild_path_x64
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
vs-prerelease: true
|
vs-prerelease: true
|
||||||
msbuild-architecture: 'x64'
|
msbuild-architecture: 'x64'
|
||||||
|
|
||||||
|
- name: Setup MSBuild (arm64)
|
||||||
|
if: always()
|
||||||
|
id: setup_msbuild_path_arm
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
vs-prerelease: true
|
||||||
|
msbuild-architecture: 'arm64'
|
||||||
|
|
||||||
- name: echo msbuild path
|
- name: echo msbuild path
|
||||||
run: |
|
run: |
|
||||||
echo "vswhere-path: ${{ steps.setup_msbuild_explicit.outputs.msbuildPath }}"
|
echo "vswhere-path: ${{ steps.setup_msbuild_explicit.outputs.msbuildPath }}"
|
||||||
echo "PATH: ${{ steps.setup_msbuild_path.outputs.msbuildPath }}"
|
echo "PATH: ${{ steps.setup_msbuild_path.outputs.msbuildPath }}"
|
||||||
|
echo "ARM PATH: ${{ steps.setup_msbuild_path_arm.outputs.msbuildPath }}"
|
||||||
|
echo "ARM PATH: ${{ steps.setup_msbuild_path_x64.outputs.msbuildPath }}"
|
||||||
echo "Fallback: ${{ steps.setup_msbuild_fallback.outputs.msbuildPath }}"
|
echo "Fallback: ${{ steps.setup_msbuild_fallback.outputs.msbuildPath }}"
|
||||||
|
|
||||||
- name: echo MSBuild
|
- name: echo MSBuild
|
||||||
|
@ -39,7 +39,7 @@ If you need your Actions runner to target a pre-release version of Visual Studio
|
|||||||
```
|
```
|
||||||
|
|
||||||
### Specifying MSBuild architecture (optional)
|
### Specifying MSBuild architecture (optional)
|
||||||
By default the action will use the x86 architecture for MSBuild, but it is possible to target the x64 versions instead. Simply add the `msbuild-architecture` input. Valid input values are `x86` (default) and `x64`.
|
By default the action will use the x86 architecture for MSBuild, but it is possible to target the x64 versions instead. Simply add the `msbuild-architecture` input. Valid input values are `x86` (default), `x64`, and `arm64`. Note that the success of these will rely on the runner OS.
|
||||||
|
|
||||||
```yml
|
```yml
|
||||||
- name: Add msbuild to PATH
|
- name: Add msbuild to PATH
|
||||||
|
6
dist/index.js
vendored
6
dist/index.js
vendored
@ -1701,9 +1701,9 @@ function run() {
|
|||||||
stdout: (data) => {
|
stdout: (data) => {
|
||||||
const installationPath = data.toString().trim();
|
const installationPath = data.toString().trim();
|
||||||
core.debug(`Found installation path: ${installationPath}`);
|
core.debug(`Found installation path: ${installationPath}`);
|
||||||
// x64 only exists in one possible location, so no fallback probing
|
// x64 and arm64 only exist in one possible location, so no fallback probing
|
||||||
if (MSBUILD_ARCH === "x64") {
|
if (MSBUILD_ARCH === 'x64' || MSBUILD_ARCH === 'arm64') {
|
||||||
let toolPath = path.join(installationPath, 'MSBuild\\Current\\Bin\\amd64\\MSBuild.exe');
|
let toolPath = path.join(installationPath, `MSBuild\\Current\\Bin\\${MSBUILD_ARCH}\\MSBuild.exe`);
|
||||||
core.debug(`Checking for path: ${toolPath}`);
|
core.debug(`Checking for path: ${toolPath}`);
|
||||||
if (!fs.existsSync(toolPath)) {
|
if (!fs.existsSync(toolPath)) {
|
||||||
return;
|
return;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "setup-msbuild",
|
"name": "setup-msbuild",
|
||||||
"version": "1.1.3",
|
"version": "1.2.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"description": "Helps set up specific MSBuild tool into PATH for later usage.",
|
"description": "Helps set up specific MSBuild tool into PATH for later usage.",
|
||||||
"main": "lib/main.js",
|
"main": "lib/main.js",
|
||||||
|
@ -71,12 +71,12 @@ async function run(): Promise<void> {
|
|||||||
const installationPath = data.toString().trim()
|
const installationPath = data.toString().trim()
|
||||||
core.debug(`Found installation path: ${installationPath}`)
|
core.debug(`Found installation path: ${installationPath}`)
|
||||||
|
|
||||||
// x64 only exists in one possible location, so no fallback probing
|
// x64 and arm64 only exist in one possible location, so no fallback probing
|
||||||
if (MSBUILD_ARCH === "x64") {
|
if (MSBUILD_ARCH === 'x64' || MSBUILD_ARCH === 'arm64') {
|
||||||
let toolPath = path.join(
|
let toolPath = path.join(
|
||||||
installationPath,
|
installationPath,
|
||||||
'MSBuild\\Current\\Bin\\amd64\\MSBuild.exe'
|
`MSBuild\\Current\\Bin\\${MSBUILD_ARCH}\\MSBuild.exe`
|
||||||
);
|
)
|
||||||
core.debug(`Checking for path: ${toolPath}`)
|
core.debug(`Checking for path: ${toolPath}`)
|
||||||
if (!fs.existsSync(toolPath)) {
|
if (!fs.existsSync(toolPath)) {
|
||||||
return
|
return
|
||||||
|
Reference in New Issue
Block a user