mirror of
https://github.com/actions/setup-dotnet.git
synced 2024-11-25 12:53:06 +07:00
Eliminate hard dependency on version resolver in installer
This commit is contained in:
parent
9191e7ea2f
commit
d903b6184b
@ -274,18 +274,11 @@ export class DotnetCoreInstaller {
|
|||||||
}
|
}
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private version: string,
|
private dotnetVersion: DotnetVersion,
|
||||||
private quality: QualityOptions,
|
private quality: QualityOptions,
|
||||||
private preferInstalled = false
|
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
public async installDotnet(): Promise<string | null> {
|
public async installDotnet(): Promise<string | null> {
|
||||||
const versionResolver = new DotnetVersionResolver(
|
|
||||||
this.version,
|
|
||||||
this.preferInstalled
|
|
||||||
);
|
|
||||||
const dotnetVersion = await versionResolver.createDotnetVersion();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Install dotnet runitme first in order to get
|
* Install dotnet runitme first in order to get
|
||||||
* the latest stable version of dotnet CLI
|
* the latest stable version of dotnet CLI
|
||||||
@ -321,7 +314,7 @@ export class DotnetCoreInstaller {
|
|||||||
IS_WINDOWS ? '-SkipNonVersionedFiles' : '--skip-non-versioned-files'
|
IS_WINDOWS ? '-SkipNonVersionedFiles' : '--skip-non-versioned-files'
|
||||||
)
|
)
|
||||||
// Use version provided by user
|
// Use version provided by user
|
||||||
.useVersion(dotnetVersion, this.quality)
|
.useVersion(this.dotnetVersion, this.quality)
|
||||||
.execute();
|
.execute();
|
||||||
|
|
||||||
if (dotnetInstallOutput.exitCode) {
|
if (dotnetInstallOutput.exitCode) {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import {DotnetCoreInstaller, DotnetInstallDir} from './installer';
|
import {DotnetCoreInstaller, DotnetInstallDir, DotnetVersionResolver} from './installer';
|
||||||
import * as fs from 'fs';
|
import * as fs from 'fs';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import semver from 'semver';
|
import semver from 'semver';
|
||||||
@ -68,12 +68,14 @@ export async function run() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let dotnetInstaller: DotnetCoreInstaller;
|
let dotnetInstaller: DotnetCoreInstaller;
|
||||||
|
let dotnetVersionResolver: DotnetVersionResolver;
|
||||||
|
|
||||||
const uniqueVersions = new Set<string>(versions);
|
const uniqueVersions = new Set<string>(versions);
|
||||||
for (const version of uniqueVersions) {
|
for (const version of uniqueVersions) {
|
||||||
|
dotnetVersionResolver = new DotnetVersionResolver(version, preferInstalled);
|
||||||
dotnetInstaller = new DotnetCoreInstaller(
|
dotnetInstaller = new DotnetCoreInstaller(
|
||||||
version,
|
await dotnetVersionResolver.createDotnetVersion(),
|
||||||
quality,
|
quality,
|
||||||
preferInstalled
|
|
||||||
);
|
);
|
||||||
const installedVersion = await dotnetInstaller.installDotnet();
|
const installedVersion = await dotnetInstaller.installDotnet();
|
||||||
installedDotnetVersions.push(installedVersion);
|
installedDotnetVersions.push(installedVersion);
|
||||||
|
Loading…
Reference in New Issue
Block a user