Fix review points

This commit is contained in:
IvanZosimov 2022-08-17 11:02:09 +02:00
parent 8ff94b70a1
commit fe51dba858
2 changed files with 46 additions and 50 deletions

40
dist/index.js vendored
View File

@ -182,7 +182,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod }; return (mod && mod.__esModule) ? mod : { "default": mod };
}; };
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.DotnetCoreInstaller = exports.DotnetVersionResolver = exports.DotnetQualityValidator = void 0; exports.logWarning = exports.DotnetCoreInstaller = exports.DotnetVersionResolver = exports.DotnetQualityValidator = void 0;
// Load tempDirectory before it gets wiped by tool-cache // Load tempDirectory before it gets wiped by tool-cache
const core = __importStar(__nccwpck_require__(2186)); const core = __importStar(__nccwpck_require__(2186));
const exec = __importStar(__nccwpck_require__(1514)); const exec = __importStar(__nccwpck_require__(1514));
@ -215,7 +215,7 @@ class DotnetVersionResolver {
const ValidatingRegEx = /^\d+.\d+/i; const ValidatingRegEx = /^\d+.\d+/i;
const ReplacingRegEx = /^(\d+.\d+).[x/*]$/i; const ReplacingRegEx = /^(\d+.\d+).[x/*]$/i;
if (!ValidatingRegEx.test(this.inputVersion)) { if (!ValidatingRegEx.test(this.inputVersion)) {
throw new Error(`dotnet-version was supplied in invalid format: ${this.inputVersion}! Supported: A.B.C, A.B.C-D, A.B, A.B.x, A.B.X, A.B.*`); throw new Error(`'dotnet-version' was supplied in invalid format: ${this.inputVersion}! Supported syntax: A.B.C, A.B.C-D, A.B, A.B.x, A.B.X, A.B.*`);
} }
if (semver_1.default.valid(this.inputVersion)) { if (semver_1.default.valid(this.inputVersion)) {
this.resolvedArgument.type = 'version'; this.resolvedArgument.type = 'version';
@ -224,31 +224,20 @@ class DotnetVersionResolver {
else { else {
this.resolvedArgument.type = 'channel'; this.resolvedArgument.type = 'channel';
this.resolvedArgument.qualityFlag = true; this.resolvedArgument.qualityFlag = true;
if (ReplacingRegEx.test(this.inputVersion)) { this.resolvedArgument.value = ReplacingRegEx.test(this.inputVersion)
this.resolvedArgument.value = (_a = this.inputVersion.match(ReplacingRegEx)) === null || _a === void 0 ? void 0 : _a[1]; ? (_a = this.inputVersion.match(ReplacingRegEx)) === null || _a === void 0 ? void 0 : _a[1]
} : this.inputVersion;
else {
this.resolvedArgument.value = this.inputVersion;
}
} }
} }
createVersionObject() { createVersionObject() {
this.resolveVersionInput(); this.resolveVersionInput();
if (IS_WINDOWS) { if (IS_WINDOWS) {
if (this.resolvedArgument.type === 'channel') { this.resolvedArgument.type =
this.resolvedArgument.type = '-Channel'; this.resolvedArgument.type === 'channel' ? '-Channel' : '-Version';
}
else {
this.resolvedArgument.type = '-Version';
}
} }
else { else {
if (this.resolvedArgument.type === 'channel') { this.resolvedArgument.type =
this.resolvedArgument.type = '--channel'; this.resolvedArgument.type === 'channel' ? '--channel' : '--version';
}
else {
this.resolvedArgument.type = '--version';
}
} }
return this.resolvedArgument; return this.resolvedArgument;
} }
@ -285,7 +274,7 @@ class DotnetCoreInstaller {
command += ` -Quality ${this.quality}`; command += ` -Quality ${this.quality}`;
} }
else { else {
core.warning(`'dotnet-quality' input can't be used with exact version: ${versionObject.value} of .NET. 'dotnet-quality' input is ignored.`); logWarning(`'dotnet-quality' input can't be used with exact version: ${versionObject.value} of .NET. 'dotnet-quality' input is ignored.`);
} }
} }
if (process.env['https_proxy'] != null) { if (process.env['https_proxy'] != null) {
@ -327,10 +316,10 @@ class DotnetCoreInstaller {
scriptArguments.push(versionObject.type, versionObject.value); scriptArguments.push(versionObject.type, versionObject.value);
if (this.quality) { if (this.quality) {
if (versionObject.qualityFlag) { if (versionObject.qualityFlag) {
scriptArguments.push("--quality", this.quality); scriptArguments.push('--quality', this.quality);
} }
else { else {
core.warning(`'dotnet-quality' input can't be used with exact version: ${versionObject.value} of .NET. 'dotnet-quality' input is ignored.`); logWarning(`'dotnet-quality' input can't be used with exact version: ${versionObject.value} of .NET. 'dotnet-quality' input is ignored.`);
} }
} }
if (IS_LINUX) { if (IS_LINUX) {
@ -372,6 +361,11 @@ class DotnetCoreInstaller {
} }
} }
exports.DotnetCoreInstaller = DotnetCoreInstaller; exports.DotnetCoreInstaller = DotnetCoreInstaller;
function logWarning(message) {
const warningPrefix = '[warning]';
core.info(`${warningPrefix}${message}`);
}
exports.logWarning = logWarning;
/***/ }), /***/ }),

View File

@ -7,7 +7,6 @@ import {chmodSync} from 'fs';
import * as path from 'path'; import * as path from 'path';
import semver from 'semver'; import semver from 'semver';
import {ExecOptions} from '@actions/exec/lib/interfaces'; import {ExecOptions} from '@actions/exec/lib/interfaces';
import {timingSafeEqual} from 'crypto';
const IS_WINDOWS = process.platform === 'win32'; const IS_WINDOWS = process.platform === 'win32';
const IS_LINUX = process.platform === 'linux'; const IS_LINUX = process.platform === 'linux';
@ -33,7 +32,7 @@ export class DotnetQualityValidator {
export class DotnetVersionResolver { export class DotnetVersionResolver {
private inputVersion: string; private inputVersion: string;
private resolvedArgument: {type: string; value: string, qualityFlag: boolean}; private resolvedArgument: {type: string; value: string; qualityFlag: boolean};
constructor(version: string) { constructor(version: string) {
this.inputVersion = version.trim(); this.inputVersion = version.trim();
@ -45,7 +44,7 @@ export class DotnetVersionResolver {
const ReplacingRegEx = /^(\d+.\d+).[x/*]$/i; const ReplacingRegEx = /^(\d+.\d+).[x/*]$/i;
if (!ValidatingRegEx.test(this.inputVersion)) { if (!ValidatingRegEx.test(this.inputVersion)) {
throw new Error( throw new Error(
`dotnet-version was supplied in invalid format: ${this.inputVersion}! Supported: A.B.C, A.B.C-D, A.B, A.B.x, A.B.X, A.B.*` `'dotnet-version' was supplied in invalid format: ${this.inputVersion}! Supported syntax: A.B.C, A.B.C-D, A.B, A.B.x, A.B.X, A.B.*`
); );
} }
if (semver.valid(this.inputVersion)) { if (semver.valid(this.inputVersion)) {
@ -54,30 +53,24 @@ export class DotnetVersionResolver {
} else { } else {
this.resolvedArgument.type = 'channel'; this.resolvedArgument.type = 'channel';
this.resolvedArgument.qualityFlag = true; this.resolvedArgument.qualityFlag = true;
if (ReplacingRegEx.test(this.inputVersion)) { this.resolvedArgument.value = ReplacingRegEx.test(this.inputVersion)
this.resolvedArgument.value = this.inputVersion.match( ? this.inputVersion.match(ReplacingRegEx)?.[1]!
ReplacingRegEx : this.inputVersion;
)?.[1]!;
} else {
this.resolvedArgument.value = this.inputVersion;
}
} }
} }
public createVersionObject(): {type: string; value: string, qualityFlag: boolean} { public createVersionObject(): {
type: string;
value: string;
qualityFlag: boolean;
} {
this.resolveVersionInput(); this.resolveVersionInput();
if (IS_WINDOWS) { if (IS_WINDOWS) {
if (this.resolvedArgument.type === 'channel') { this.resolvedArgument.type =
this.resolvedArgument.type = '-Channel'; this.resolvedArgument.type === 'channel' ? '-Channel' : '-Version';
} else {
this.resolvedArgument.type = '-Version';
}
} else { } else {
if (this.resolvedArgument.type === 'channel') { this.resolvedArgument.type =
this.resolvedArgument.type = '--channel'; this.resolvedArgument.type === 'channel' ? '--channel' : '--version';
} else {
this.resolvedArgument.type = '--version';
}
} }
return this.resolvedArgument; return this.resolvedArgument;
} }
@ -120,10 +113,12 @@ export class DotnetCoreInstaller {
if (versionObject.qualityFlag) { if (versionObject.qualityFlag) {
command += ` -Quality ${this.quality}`; command += ` -Quality ${this.quality}`;
} else { } else {
core.warning(`'dotnet-quality' input can't be used with exact version: ${versionObject.value} of .NET. 'dotnet-quality' input is ignored.`); logWarning(
`'dotnet-quality' input can't be used with exact version: ${versionObject.value} of .NET. 'dotnet-quality' input is ignored.`
);
} }
} }
if (process.env['https_proxy'] != null) { if (process.env['https_proxy'] != null) {
command += ` -ProxyAddress ${process.env['https_proxy']}`; command += ` -ProxyAddress ${process.env['https_proxy']}`;
} }
@ -173,13 +168,15 @@ export class DotnetCoreInstaller {
scriptArguments.push(versionObject.type, versionObject.value); scriptArguments.push(versionObject.type, versionObject.value);
if (this.quality) { if (this.quality) {
if (versionObject.qualityFlag){ if (versionObject.qualityFlag) {
scriptArguments.push("--quality", this.quality); scriptArguments.push('--quality', this.quality);
} else { } else {
core.warning(`'dotnet-quality' input can't be used with exact version: ${versionObject.value} of .NET. 'dotnet-quality' input is ignored.`); logWarning(
`'dotnet-quality' input can't be used with exact version: ${versionObject.value} of .NET. 'dotnet-quality' input is ignored.`
);
} }
} }
if (IS_LINUX) { if (IS_LINUX) {
scriptArguments.push('--install-dir', installationDirectoryLinux); scriptArguments.push('--install-dir', installationDirectoryLinux);
} }
@ -227,3 +224,8 @@ export class DotnetCoreInstaller {
console.log(process.env['PATH']); console.log(process.env['PATH']);
} }
} }
export function logWarning(message: string): void {
const warningPrefix = '[warning]';
core.info(`${warningPrefix}${message}`);
}