prepare the execute part
This commit is contained in:
23
dist/github/execute/index.js
vendored
23
dist/github/execute/index.js
vendored
@@ -7613,10 +7613,9 @@ const buildAgent = ioc_1.ioc.get(types_1.TYPES.IBuildAgent);
|
||||
function run() {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
try {
|
||||
const version = "5.1.2";
|
||||
const includePrerelease = false;
|
||||
buildAgent.exportVariable("DOTNET_CLI_TELEMETRY_OPTOUT", "1");
|
||||
yield gitVersionTool.install(version, includePrerelease);
|
||||
const inputOptions = getGitVersionOptions();
|
||||
yield gitVersionTool.run(inputOptions);
|
||||
buildAgent.setSucceeded("GitVersion installed successfully", true);
|
||||
}
|
||||
catch (error) {
|
||||
@@ -7625,8 +7624,24 @@ function run() {
|
||||
});
|
||||
}
|
||||
exports.run = run;
|
||||
function getGitVersionOptions() {
|
||||
const targetPath = buildAgent.getInput(types_1.RunOptions.targetPath);
|
||||
const useConfigFile = buildAgent.getBooleanInput(types_1.RunOptions.useConfigFile);
|
||||
const configFilePath = buildAgent.getInput(types_1.RunOptions.configFilePath);
|
||||
const updateAssemblyInfo = buildAgent.getBooleanInput(types_1.RunOptions.updateAssemblyInfo);
|
||||
const updateAssemblyInfoFilename = buildAgent.getInput(types_1.RunOptions.updateAssemblyInfoFilename);
|
||||
const additionalArguments = buildAgent.getInput(types_1.RunOptions.additionalArguments);
|
||||
return {
|
||||
targetPath,
|
||||
useConfigFile,
|
||||
configFilePath,
|
||||
updateAssemblyInfo,
|
||||
updateAssemblyInfoFilename,
|
||||
additionalArguments,
|
||||
};
|
||||
}
|
||||
run();
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZpbGU6Ly8vRDovUHJvamVjdHMvT1NTL0dpdFRvb2xzL3VzZS1naXR2ZXJzaW9uL3NyYy9naXRodWIvZXhlY3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLDRCQUEwQjtBQUcxQixvQ0FBaUM7QUFDakMsK0JBQTRCO0FBRTVCLE1BQU0sY0FBYyxHQUFHLFNBQUcsQ0FBQyxHQUFHLENBQWtCLGFBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUN2RSxNQUFNLFVBQVUsR0FBRyxTQUFHLENBQUMsR0FBRyxDQUFjLGFBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUUzRCxTQUFzQixHQUFHOztRQUNyQixJQUFJO1lBRUEsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDO1lBQ3hCLE1BQU0saUJBQWlCLEdBQUcsS0FBSyxDQUFDO1lBRWhDLFVBQVUsQ0FBQyxjQUFjLENBQUMsNkJBQTZCLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDOUQsTUFBTSxjQUFjLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1lBRXpELFVBQVUsQ0FBQyxZQUFZLENBQUMsbUNBQW1DLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDdEU7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNaLFVBQVUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztTQUM3QztJQUNMLENBQUM7Q0FBQTtBQWJELGtCQWFDO0FBRUQsR0FBRyxFQUFFLENBQUMifQ==
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZpbGU6Ly8vRDovUHJvamVjdHMvT1NTL0dpdFRvb2xzL3VzZS1naXR2ZXJzaW9uL3NyYy9naXRodWIvZXhlY3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLDRCQUEwQjtBQUcxQixvQ0FBNkM7QUFDN0MsK0JBQTRCO0FBRTVCLE1BQU0sY0FBYyxHQUFHLFNBQUcsQ0FBQyxHQUFHLENBQWtCLGFBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUN2RSxNQUFNLFVBQVUsR0FBRyxTQUFHLENBQUMsR0FBRyxDQUFjLGFBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUUzRCxTQUFzQixHQUFHOztRQUNyQixJQUFJO1lBRUEsVUFBVSxDQUFDLGNBQWMsQ0FBQyw2QkFBNkIsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUU5RCxNQUFNLFlBQVksR0FBdUIsb0JBQW9CLEVBQUUsQ0FBQztZQUVoRSxNQUFNLGNBQWMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7WUFFdkMsVUFBVSxDQUFDLFlBQVksQ0FBQyxtQ0FBbUMsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUN0RTtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ1osVUFBVSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzdDO0lBQ0wsQ0FBQztDQUFBO0FBYkQsa0JBYUM7QUFFRCxTQUFTLG9CQUFvQjtJQUV6QixNQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLGtCQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFOUQsTUFBTSxhQUFhLEdBQUcsVUFBVSxDQUFDLGVBQWUsQ0FBQyxrQkFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzNFLE1BQU0sY0FBYyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsa0JBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUV0RSxNQUFNLGtCQUFrQixHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsa0JBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3JGLE1BQU0sMEJBQTBCLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxrQkFBVSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFFOUYsTUFBTSxtQkFBbUIsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLGtCQUFVLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUVoRixPQUFPO1FBQ0gsVUFBVTtRQUNWLGFBQWE7UUFDYixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLDBCQUEwQjtRQUMxQixtQkFBbUI7S0FDdEIsQ0FBQztBQUNOLENBQUM7QUFFRCxHQUFHLEVBQUUsQ0FBQyJ9
|
||||
|
||||
/***/ }),
|
||||
|
||||
|
||||
34
execute/action.yml
Normal file
34
execute/action.yml
Normal file
@@ -0,0 +1,34 @@
|
||||
name: execute
|
||||
description: GitHub Action for Easy Semantic Versioning with GitVersion. Execute GitVersion to obtain version information
|
||||
author: GitTools
|
||||
branding:
|
||||
color: gray-dark
|
||||
icon: git-pull-request
|
||||
inputs:
|
||||
targetPath:
|
||||
description: Optionally supply the path to the working directory
|
||||
required: false
|
||||
default: ''
|
||||
useConfigFile:
|
||||
description: Whether to use a custom configuration file
|
||||
required: false
|
||||
default: 'false'
|
||||
configFilePath:
|
||||
description: Optional path to config file (defaults to GitVersion.yml)
|
||||
required: false
|
||||
default: ''
|
||||
updateAssemblyInfo:
|
||||
description: Whether to update versions in the AssemblyInfo files
|
||||
required: false
|
||||
default: 'false'
|
||||
updateAssemblyInfoFilename:
|
||||
description: Update versions in specified file
|
||||
required: false
|
||||
default: ''
|
||||
updateAssemblyInfoFilename:
|
||||
description: Additional arguments to send to GitVersion
|
||||
required: false
|
||||
default: ''
|
||||
runs:
|
||||
using: node12
|
||||
main: ../dist/github/execute/index.js
|
||||
@@ -6,7 +6,7 @@ branding:
|
||||
icon: git-pull-request
|
||||
inputs:
|
||||
versionSpec:
|
||||
description: Required version in the form of 5.x or exact version like 5.0.0'
|
||||
description: Required version in the form of 5.x or exact version like 5.0.0
|
||||
required: true
|
||||
default: ''
|
||||
includePrerelease:
|
||||
|
||||
@@ -7,7 +7,7 @@ import * as http from "typed-rest-client/HttpClient";
|
||||
|
||||
import { inject, injectable } from "inversify";
|
||||
|
||||
import { Argument, IBuildAgent, IDotnetTool, IExecResult, IGitVersionTool, IVersionManager } from "./interfaces";
|
||||
import { Argument, IBuildAgent, IDotnetTool, IExecResult, IGitVersionOptions, IGitVersionTool, IVersionManager } from "./interfaces";
|
||||
import { TYPES } from "./types";
|
||||
|
||||
@injectable()
|
||||
@@ -157,7 +157,8 @@ class GitVersionTool implements IGitVersionTool {
|
||||
const toolPath = await this.dotnetTool.toolInstall("GitVersion.Tool", versionSpec, false, includePrerelease);
|
||||
}
|
||||
|
||||
public run(...params: Argument[]): Promise<IExecResult> {
|
||||
public run(options: IGitVersionOptions): Promise<IExecResult> {
|
||||
console.log(options);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import "reflect-metadata";
|
||||
|
||||
import { IBuildAgent, IGitVersionTool } from "../interfaces";
|
||||
import { TYPES } from "../types";
|
||||
import { IBuildAgent, IGitVersionOptions, IGitVersionTool } from "../interfaces";
|
||||
import { RunOptions, TYPES } from "../types";
|
||||
import { ioc } from "./ioc";
|
||||
|
||||
const gitVersionTool = ioc.get<IGitVersionTool>(TYPES.IGitVersionTool);
|
||||
@@ -10,11 +10,11 @@ const buildAgent = ioc.get<IBuildAgent>(TYPES.IBuildAgent);
|
||||
export async function run() {
|
||||
try {
|
||||
|
||||
const version = "5.1.2";
|
||||
const includePrerelease = false;
|
||||
|
||||
buildAgent.exportVariable("DOTNET_CLI_TELEMETRY_OPTOUT", "1");
|
||||
await gitVersionTool.install(version, includePrerelease);
|
||||
|
||||
const inputOptions: IGitVersionOptions = getGitVersionOptions();
|
||||
|
||||
await gitVersionTool.run(inputOptions);
|
||||
|
||||
buildAgent.setSucceeded("GitVersion installed successfully", true);
|
||||
} catch (error) {
|
||||
@@ -22,4 +22,26 @@ export async function run() {
|
||||
}
|
||||
}
|
||||
|
||||
function getGitVersionOptions(): IGitVersionOptions {
|
||||
|
||||
const targetPath = buildAgent.getInput(RunOptions.targetPath);
|
||||
|
||||
const useConfigFile = buildAgent.getBooleanInput(RunOptions.useConfigFile);
|
||||
const configFilePath = buildAgent.getInput(RunOptions.configFilePath);
|
||||
|
||||
const updateAssemblyInfo = buildAgent.getBooleanInput(RunOptions.updateAssemblyInfo);
|
||||
const updateAssemblyInfoFilename = buildAgent.getInput(RunOptions.updateAssemblyInfoFilename);
|
||||
|
||||
const additionalArguments = buildAgent.getInput(RunOptions.additionalArguments);
|
||||
|
||||
return {
|
||||
targetPath,
|
||||
useConfigFile,
|
||||
configFilePath,
|
||||
updateAssemblyInfo,
|
||||
updateAssemblyInfoFilename,
|
||||
additionalArguments,
|
||||
};
|
||||
}
|
||||
|
||||
run();
|
||||
|
||||
@@ -32,7 +32,7 @@ export class Argument {
|
||||
}
|
||||
export interface IGitVersionTool {
|
||||
install: (versionSpec: string, includePrerelease: boolean) => Promise<void>;
|
||||
run: (...params: Argument[]) => Promise<IExecResult>;
|
||||
run: (options: IGitVersionOptions) => Promise<IExecResult>;
|
||||
}
|
||||
export interface IExecResult {
|
||||
stdout: string;
|
||||
@@ -40,3 +40,12 @@ export interface IExecResult {
|
||||
code: number;
|
||||
error: Error;
|
||||
}
|
||||
|
||||
export interface IGitVersionOptions {
|
||||
targetPath: string;
|
||||
useConfigFile: boolean;
|
||||
configFilePath: string;
|
||||
updateAssemblyInfo: boolean;
|
||||
updateAssemblyInfoFilename: string;
|
||||
additionalArguments: string;
|
||||
}
|
||||
|
||||
14
src/types.ts
14
src/types.ts
@@ -10,4 +10,16 @@ const SetupOptions = {
|
||||
versionSpec: "versionSpec",
|
||||
};
|
||||
|
||||
export { SetupOptions, TYPES };
|
||||
const RunOptions = {
|
||||
targetPath: "targetPath",
|
||||
|
||||
useConfigFile: "useConfigFile",
|
||||
configFilePath: "configFilePath",
|
||||
|
||||
updateAssemblyInfo: "configFilePath",
|
||||
updateAssemblyInfoFilename: "configFilePath",
|
||||
|
||||
additionalArguments: "additionalArguments",
|
||||
};
|
||||
|
||||
export { SetupOptions, RunOptions, TYPES };
|
||||
|
||||
@@ -7,7 +7,8 @@
|
||||
"rules": {
|
||||
"max-classes-per-file":false,
|
||||
"no-console":false,
|
||||
"no-var-requires":false
|
||||
"no-var-requires":false,
|
||||
"object-literal-sort-keys":false
|
||||
},
|
||||
"rulesDirectory": []
|
||||
}
|
||||
Reference in New Issue
Block a user