From 824e0d04da1692328c74a94024450355b90da86b Mon Sep 17 00:00:00 2001 From: Artur Stolear Date: Tue, 10 Dec 2024 04:12:50 +0000 Subject: [PATCH] dist update --- dist/tools/libs/gitreleasemanager.mjs | 7 +++---- dist/tools/libs/gitreleasemanager.mjs.map | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/dist/tools/libs/gitreleasemanager.mjs b/dist/tools/libs/gitreleasemanager.mjs index d7529dcaa..ece010cca 100644 --- a/dist/tools/libs/gitreleasemanager.mjs +++ b/dist/tools/libs/gitreleasemanager.mjs @@ -57,13 +57,11 @@ class GitReleaseManagerSettingsProvider extends SettingsProvider { } getCommonSettings() { const milestone = this.buildAgent.getInput("milestone"); - const owner = this.buildAgent.getInput("owner"); const repository = this.buildAgent.getInput("repository"); const token = this.buildAgent.getInput("token"); const targetDirectory = this.buildAgent.getInput("targetDirectory"); const logFilePath = this.buildAgent.getInput("logFilePath"); return { - owner, repository, token, targetDirectory, @@ -121,8 +119,9 @@ class GitReleaseManagerTool extends DotnetTool { } async getCommonArguments(settings) { const args = []; - args.push("--owner", settings.owner); - args.push("--repository", settings.repository); + const [owner, repository] = settings.repository.split("/"); + args.push("--owner", owner); + args.push("--repository", repository); args.push("--token", settings.token); settings.targetDirectory = await this.getRepoDir(settings); args.push("--targetDirectory", settings.targetDirectory); diff --git a/dist/tools/libs/gitreleasemanager.mjs.map b/dist/tools/libs/gitreleasemanager.mjs.map index 550c9cbda..ac82510cb 100644 --- a/dist/tools/libs/gitreleasemanager.mjs.map +++ b/dist/tools/libs/gitreleasemanager.mjs.map @@ -1 +1 @@ -{"version":3,"file":"gitreleasemanager.mjs","sources":["../../../src/tools/gitreleasemanager/settings.ts","../../../src/tools/gitreleasemanager/tool.ts","../../../src/tools/gitreleasemanager/runner.ts"],"sourcesContent":["import { type ISettingsProvider, SettingsProvider } from '@tools/common'\nimport {\n type AddAssetSettings,\n type CloseSettings,\n type CreateSettings,\n type DiscardSettings,\n type OpenSettings,\n type PublishSettings,\n type CommonSettings\n} from './models'\nexport interface IGitReleaseManagerSettingsProvider extends ISettingsProvider {\n getCreateSettings(): CreateSettings\n\n getDiscardSettings(): DiscardSettings\n\n getCloseSettings(): CloseSettings\n\n getOpenSettings(): OpenSettings\n\n getPublishSettings(): PublishSettings\n\n getAddAssetSettings(): AddAssetSettings\n\n getCommonSettings(): CommonSettings\n}\n\nexport class GitReleaseManagerSettingsProvider extends SettingsProvider implements IGitReleaseManagerSettingsProvider {\n getCreateSettings(): CreateSettings {\n const name = this.buildAgent.getInput('name')\n const inputFileName = this.buildAgent.getInput('inputFileName')\n const isPreRelease = this.buildAgent.getBooleanInput('isPreRelease')\n const commit = this.buildAgent.getInput('commit')\n const assets = this.buildAgent.getListInput('assets')\n\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings,\n name,\n inputFileName,\n isPreRelease,\n commit,\n assets\n }\n }\n\n getDiscardSettings(): DiscardSettings {\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings\n }\n }\n\n getCloseSettings(): CloseSettings {\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings\n }\n }\n\n getOpenSettings(): OpenSettings {\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings\n }\n }\n\n getPublishSettings(): PublishSettings {\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings\n }\n }\n\n getAddAssetSettings(): AddAssetSettings {\n const assets = this.buildAgent.getListInput('assets')\n\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings,\n assets\n }\n }\n\n getCommonSettings(): CommonSettings {\n const milestone = this.buildAgent.getInput('milestone')\n const owner = this.buildAgent.getInput('owner')\n const repository = this.buildAgent.getInput('repository')\n const token = this.buildAgent.getInput('token')\n const targetDirectory = this.buildAgent.getInput('targetDirectory')\n const logFilePath = this.buildAgent.getInput('logFilePath')\n\n return {\n owner,\n repository,\n token,\n targetDirectory,\n milestone,\n logFilePath\n }\n }\n}\n","import * as path from 'path'\n\nimport { DotnetTool } from '@tools/common'\nimport { type ExecResult } from '@agents/common'\n\nimport {\n type AddAssetSettings,\n type CloseSettings,\n type CreateSettings,\n type DiscardSettings,\n type OpenSettings,\n type PublishSettings,\n type CommonSettings\n} from './models'\nimport { GitReleaseManagerSettingsProvider, IGitReleaseManagerSettingsProvider } from './settings'\n\nexport class GitReleaseManagerTool extends DotnetTool {\n get packageName(): string {\n return 'GitReleaseManager.Tool'\n }\n\n get toolName(): string {\n return 'dotnet-gitreleasemanager'\n }\n\n get toolPathVariable(): string {\n return 'GITRELEASEMANAGER_PATH'\n }\n\n get versionRange(): string | null {\n return '>=0.10.0 <0.20.0'\n }\n\n get settingsProvider(): IGitReleaseManagerSettingsProvider {\n return new GitReleaseManagerSettingsProvider(this.buildAgent)\n }\n\n async create(): Promise {\n const settings = this.settingsProvider.getCreateSettings()\n const args = await this.getCreateArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async discard(): Promise {\n const settings = this.settingsProvider.getDiscardSettings()\n const args = await this.getDiscardArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async close(): Promise {\n const settings = this.settingsProvider.getCloseSettings()\n const args = await this.getCloseArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async open(): Promise {\n const settings = this.settingsProvider.getOpenSettings()\n const args = await this.getOpenArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async publish(): Promise {\n const settings = this.settingsProvider.getPublishSettings()\n const args = await this.getPublishArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async addAsset(): Promise {\n const settings = this.settingsProvider.getAddAssetSettings()\n const args = await this.getAddAssetArguments(settings)\n\n return await this.executeTool(args)\n }\n\n protected async getCommonArguments(settings: CommonSettings): Promise {\n const args: string[] = []\n\n args.push('--owner', settings.owner)\n args.push('--repository', settings.repository)\n args.push('--token', settings.token)\n\n settings.targetDirectory = await this.getRepoDir(settings)\n\n args.push('--targetDirectory', settings.targetDirectory)\n\n if (settings.logFilePath) {\n args.push('--logFilePath', settings.logFilePath)\n }\n return args\n }\n\n protected async getCreateArguments(settings: CreateSettings): Promise {\n const args: string[] = ['create', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--milestone', settings.milestone)\n }\n if (settings.name) {\n args.push('--name', settings.name)\n }\n if (settings.commit) {\n args.push('--targetcommitish', settings.commit)\n }\n\n if (settings.inputFileName) {\n if (await this.buildAgent.fileExists(settings.inputFileName)) {\n args.push('--inputFilePath', settings.inputFileName)\n } else {\n throw new Error(`GitReleaseManager inputFilePath not found at ${settings.inputFileName}`)\n }\n }\n if (settings.isPreRelease) {\n args.push('--pre')\n }\n if (settings.assets && settings.assets.length > 0) {\n settings.assets = settings.assets.map(asset => {\n return path.join(settings.targetDirectory, asset)\n })\n\n args.push('--assets', settings.assets.join(','))\n }\n\n return args\n }\n\n protected async getDiscardArguments(settings: DiscardSettings): Promise {\n const args: string[] = ['discard', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--milestone', settings.milestone)\n }\n\n return args\n }\n\n protected async getCloseArguments(settings: CloseSettings): Promise {\n const args: string[] = ['close', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--milestone', settings.milestone)\n }\n\n return args\n }\n\n protected async getOpenArguments(settings: OpenSettings): Promise {\n const args: string[] = ['open', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--milestone', settings.milestone)\n }\n\n return args\n }\n\n protected async getPublishArguments(settings: PublishSettings): Promise {\n const args: string[] = ['publish', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--tagName', settings.milestone)\n }\n\n return args\n }\n\n protected async getAddAssetArguments(settings: AddAssetSettings): Promise {\n const args: string[] = ['addasset', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--tagName', settings.milestone)\n }\n if (settings.assets && settings.assets.length > 0) {\n settings.assets = settings.assets.map(asset => {\n return path.join(settings.targetDirectory, asset)\n })\n\n args.push('--assets', settings.assets.join(','))\n }\n\n return args\n }\n\n protected async getRepoDir(settings: CommonSettings): Promise {\n return await this.getRepoPath(settings.targetDirectory)\n }\n}\n","import { type ExecResult, type IBuildAgent } from '@agents/common'\nimport { type Commands } from './models'\nimport { GitReleaseManagerTool } from './tool'\nimport { RunnerBase } from '../common/runner'\n\nexport class Runner extends RunnerBase {\n protected readonly tool: GitReleaseManagerTool\n\n constructor(protected readonly buildAgent: IBuildAgent) {\n super(buildAgent)\n this.tool = new GitReleaseManagerTool(this.buildAgent)\n }\n\n async run(command: Commands): Promise {\n switch (command) {\n case 'setup':\n return await this.setup()\n case 'addasset':\n return await this.addAsset()\n case 'open':\n return await this.open()\n case 'close':\n return await this.close()\n case 'create':\n return await this.create()\n case 'discard':\n return await this.discard()\n case 'publish':\n return await this.publish()\n }\n }\n\n private async setup(): Promise {\n return this.safeExecute(async () => {\n await this.tool.install()\n return { code: 0 }\n }, 'GitReleaseManager setup successfully')\n }\n\n private async create(): Promise {\n return this.safeExecute(async () => await this.tool.create(), 'GitReleaseManager created release successfully')\n }\n\n private async discard(): Promise {\n return this.safeExecute(async () => await this.tool.discard(), 'GitReleaseManager discarded release successfully')\n }\n\n private async close(): Promise {\n return this.safeExecute(async () => await this.tool.close(), 'GitReleaseManager closed release successfully')\n }\n\n private async open(): Promise {\n return this.safeExecute(async () => await this.tool.open(), 'GitReleaseManager opened release successfully')\n }\n\n private async publish(): Promise {\n return this.safeExecute(async () => await this.tool.publish(), 'GitReleaseManager published release successfully')\n }\n\n private async addAsset(): Promise {\n return this.safeExecute(async () => await this.tool.addAsset(), 'GitReleaseManager added assets to release successfully')\n }\n}\n"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"gitreleasemanager.mjs","sources":["../../../src/tools/gitreleasemanager/settings.ts","../../../src/tools/gitreleasemanager/tool.ts","../../../src/tools/gitreleasemanager/runner.ts"],"sourcesContent":["import { type ISettingsProvider, SettingsProvider } from '@tools/common'\nimport {\n type AddAssetSettings,\n type CloseSettings,\n type CreateSettings,\n type DiscardSettings,\n type OpenSettings,\n type PublishSettings,\n type CommonSettings\n} from './models'\nexport interface IGitReleaseManagerSettingsProvider extends ISettingsProvider {\n getCreateSettings(): CreateSettings\n\n getDiscardSettings(): DiscardSettings\n\n getCloseSettings(): CloseSettings\n\n getOpenSettings(): OpenSettings\n\n getPublishSettings(): PublishSettings\n\n getAddAssetSettings(): AddAssetSettings\n\n getCommonSettings(): CommonSettings\n}\n\nexport class GitReleaseManagerSettingsProvider extends SettingsProvider implements IGitReleaseManagerSettingsProvider {\n getCreateSettings(): CreateSettings {\n const name = this.buildAgent.getInput('name')\n const inputFileName = this.buildAgent.getInput('inputFileName')\n const isPreRelease = this.buildAgent.getBooleanInput('isPreRelease')\n const commit = this.buildAgent.getInput('commit')\n const assets = this.buildAgent.getListInput('assets')\n\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings,\n name,\n inputFileName,\n isPreRelease,\n commit,\n assets\n }\n }\n\n getDiscardSettings(): DiscardSettings {\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings\n }\n }\n\n getCloseSettings(): CloseSettings {\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings\n }\n }\n\n getOpenSettings(): OpenSettings {\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings\n }\n }\n\n getPublishSettings(): PublishSettings {\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings\n }\n }\n\n getAddAssetSettings(): AddAssetSettings {\n const assets = this.buildAgent.getListInput('assets')\n\n const commonSettings = this.getCommonSettings()\n return {\n ...commonSettings,\n assets\n }\n }\n\n getCommonSettings(): CommonSettings {\n const milestone = this.buildAgent.getInput('milestone')\n const repository = this.buildAgent.getInput('repository')\n const token = this.buildAgent.getInput('token')\n const targetDirectory = this.buildAgent.getInput('targetDirectory')\n const logFilePath = this.buildAgent.getInput('logFilePath')\n\n return {\n repository,\n token,\n targetDirectory,\n milestone,\n logFilePath\n }\n }\n}\n","import * as path from 'path'\n\nimport { DotnetTool } from '@tools/common'\nimport { type ExecResult } from '@agents/common'\n\nimport {\n type AddAssetSettings,\n type CloseSettings,\n type CreateSettings,\n type DiscardSettings,\n type OpenSettings,\n type PublishSettings,\n type CommonSettings\n} from './models'\nimport { GitReleaseManagerSettingsProvider, IGitReleaseManagerSettingsProvider } from './settings'\n\nexport class GitReleaseManagerTool extends DotnetTool {\n get packageName(): string {\n return 'GitReleaseManager.Tool'\n }\n\n get toolName(): string {\n return 'dotnet-gitreleasemanager'\n }\n\n get toolPathVariable(): string {\n return 'GITRELEASEMANAGER_PATH'\n }\n\n get versionRange(): string | null {\n return '>=0.10.0 <0.20.0'\n }\n\n get settingsProvider(): IGitReleaseManagerSettingsProvider {\n return new GitReleaseManagerSettingsProvider(this.buildAgent)\n }\n\n async create(): Promise {\n const settings = this.settingsProvider.getCreateSettings()\n const args = await this.getCreateArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async discard(): Promise {\n const settings = this.settingsProvider.getDiscardSettings()\n const args = await this.getDiscardArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async close(): Promise {\n const settings = this.settingsProvider.getCloseSettings()\n const args = await this.getCloseArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async open(): Promise {\n const settings = this.settingsProvider.getOpenSettings()\n const args = await this.getOpenArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async publish(): Promise {\n const settings = this.settingsProvider.getPublishSettings()\n const args = await this.getPublishArguments(settings)\n\n return await this.executeTool(args)\n }\n\n async addAsset(): Promise {\n const settings = this.settingsProvider.getAddAssetSettings()\n const args = await this.getAddAssetArguments(settings)\n\n return await this.executeTool(args)\n }\n\n protected async getCommonArguments(settings: CommonSettings): Promise {\n const args: string[] = []\n\n const [owner, repository] = settings.repository.split('/') // this is the github repository\n args.push('--owner', owner)\n args.push('--repository', repository)\n args.push('--token', settings.token)\n\n settings.targetDirectory = await this.getRepoDir(settings)\n\n args.push('--targetDirectory', settings.targetDirectory)\n\n if (settings.logFilePath) {\n args.push('--logFilePath', settings.logFilePath)\n }\n return args\n }\n\n protected async getCreateArguments(settings: CreateSettings): Promise {\n const args: string[] = ['create', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--milestone', settings.milestone)\n }\n if (settings.name) {\n args.push('--name', settings.name)\n }\n if (settings.commit) {\n args.push('--targetcommitish', settings.commit)\n }\n\n if (settings.inputFileName) {\n if (await this.buildAgent.fileExists(settings.inputFileName)) {\n args.push('--inputFilePath', settings.inputFileName)\n } else {\n throw new Error(`GitReleaseManager inputFilePath not found at ${settings.inputFileName}`)\n }\n }\n if (settings.isPreRelease) {\n args.push('--pre')\n }\n if (settings.assets && settings.assets.length > 0) {\n settings.assets = settings.assets.map(asset => {\n return path.join(settings.targetDirectory, asset)\n })\n\n args.push('--assets', settings.assets.join(','))\n }\n\n return args\n }\n\n protected async getDiscardArguments(settings: DiscardSettings): Promise {\n const args: string[] = ['discard', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--milestone', settings.milestone)\n }\n\n return args\n }\n\n protected async getCloseArguments(settings: CloseSettings): Promise {\n const args: string[] = ['close', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--milestone', settings.milestone)\n }\n\n return args\n }\n\n protected async getOpenArguments(settings: OpenSettings): Promise {\n const args: string[] = ['open', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--milestone', settings.milestone)\n }\n\n return args\n }\n\n protected async getPublishArguments(settings: PublishSettings): Promise {\n const args: string[] = ['publish', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--tagName', settings.milestone)\n }\n\n return args\n }\n\n protected async getAddAssetArguments(settings: AddAssetSettings): Promise {\n const args: string[] = ['addasset', ...(await this.getCommonArguments(settings))]\n\n if (settings.milestone) {\n args.push('--tagName', settings.milestone)\n }\n if (settings.assets && settings.assets.length > 0) {\n settings.assets = settings.assets.map(asset => {\n return path.join(settings.targetDirectory, asset)\n })\n\n args.push('--assets', settings.assets.join(','))\n }\n\n return args\n }\n\n protected async getRepoDir(settings: CommonSettings): Promise {\n return await this.getRepoPath(settings.targetDirectory)\n }\n}\n","import { type ExecResult, type IBuildAgent } from '@agents/common'\nimport { type Commands } from './models'\nimport { GitReleaseManagerTool } from './tool'\nimport { RunnerBase } from '../common/runner'\n\nexport class Runner extends RunnerBase {\n protected readonly tool: GitReleaseManagerTool\n\n constructor(protected readonly buildAgent: IBuildAgent) {\n super(buildAgent)\n this.tool = new GitReleaseManagerTool(this.buildAgent)\n }\n\n async run(command: Commands): Promise {\n switch (command) {\n case 'setup':\n return await this.setup()\n case 'addasset':\n return await this.addAsset()\n case 'open':\n return await this.open()\n case 'close':\n return await this.close()\n case 'create':\n return await this.create()\n case 'discard':\n return await this.discard()\n case 'publish':\n return await this.publish()\n }\n }\n\n private async setup(): Promise {\n return this.safeExecute(async () => {\n await this.tool.install()\n return { code: 0 }\n }, 'GitReleaseManager setup successfully')\n }\n\n private async create(): Promise {\n return this.safeExecute(async () => await this.tool.create(), 'GitReleaseManager created release successfully')\n }\n\n private async discard(): Promise {\n return this.safeExecute(async () => await this.tool.discard(), 'GitReleaseManager discarded release successfully')\n }\n\n private async close(): Promise {\n return this.safeExecute(async () => await this.tool.close(), 'GitReleaseManager closed release successfully')\n }\n\n private async open(): Promise {\n return this.safeExecute(async () => await this.tool.open(), 'GitReleaseManager opened release successfully')\n }\n\n private async publish(): Promise {\n return this.safeExecute(async () => await this.tool.publish(), 'GitReleaseManager published release successfully')\n }\n\n private async addAsset(): Promise {\n return this.safeExecute(async () => await this.tool.addAsset(), 'GitReleaseManager added assets to release successfully')\n }\n}\n"],"names":[],"mappings":"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"} \ No newline at end of file