mirror of
https://github.com/actions/setup-dotnet.git
synced 2025-08-20 15:40:20 +00:00
Added run-restore option.
Fixes https://github.com/actions/setup-dotnet/issues/199.
This commit is contained in:
parent
bf3c3eb1fd
commit
5c91ca7fee
@ -16,6 +16,9 @@ inputs:
|
||||
include-prerelease:
|
||||
description: 'Whether prerelease versions should be matched with non-exact versions (for example 5.0.0-preview.6 being matched by 5, 5.0, 5.x or 5.0.x). Defaults to false if not provided.'
|
||||
required: False
|
||||
run-restore:
|
||||
description: 'Optionally run dotnet restore on the project after the target .NET SDK is installed.'
|
||||
required: False
|
||||
runs:
|
||||
using: 'node12'
|
||||
main: 'dist/index.js'
|
||||
|
@ -1,4 +1,5 @@
|
||||
import * as core from '@actions/core';
|
||||
import * as exec from '@actions/exec';
|
||||
import * as installer from './installer';
|
||||
import * as fs from 'fs';
|
||||
import * as path from 'path';
|
||||
@ -14,6 +15,7 @@ export async function run() {
|
||||
// Proxy, auth, (etc) are still set up, even if no version is identified
|
||||
//
|
||||
let version = core.getInput('dotnet-version');
|
||||
let runrestore = core.getInput('run-restore');
|
||||
if (!version) {
|
||||
// Try to fall back to global.json
|
||||
core.debug('No version found, trying to find version from global.json');
|
||||
@ -39,6 +41,35 @@ export async function run() {
|
||||
includePrerelease
|
||||
);
|
||||
await dotnetInstaller.installDotnet();
|
||||
if (runrestore)
|
||||
{
|
||||
var options: ExecOptions = {
|
||||
listeners: {
|
||||
stdout: (data: Buffer) => {
|
||||
output += data.toString();
|
||||
}
|
||||
},
|
||||
env: envVariables
|
||||
};
|
||||
const powershellPath = await io.which('powershell', true);
|
||||
let resultCode = await exec.exec(
|
||||
`"${powershellPath}"`,
|
||||
[
|
||||
'-NoLogo',
|
||||
'-Sta',
|
||||
'-NoProfile',
|
||||
'-NonInteractive',
|
||||
'-ExecutionPolicy',
|
||||
'Unrestricted',
|
||||
'-Command',
|
||||
'dotnet restore'
|
||||
],
|
||||
options
|
||||
);
|
||||
if (resultCode != 0) {
|
||||
throw new Error(`Failed to restore projects. Err Code=${resultCode} ${output}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const sourceUrl: string = core.getInput('source-url');
|
||||
|
Loading…
x
Reference in New Issue
Block a user