@mcp-consultant-tools/azure-devops-admin 28.0.0-beta.13 → 28.0.0-beta.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli/commands/agent-pool-commands.d.ts +7 -0
- package/build/cli/commands/agent-pool-commands.d.ts.map +1 -0
- package/build/cli/commands/agent-pool-commands.js +117 -0
- package/build/cli/commands/agent-pool-commands.js.map +1 -0
- package/build/cli/commands/artifact-feed-commands.d.ts +7 -0
- package/build/cli/commands/artifact-feed-commands.d.ts.map +1 -0
- package/build/cli/commands/artifact-feed-commands.js +62 -0
- package/build/cli/commands/artifact-feed-commands.js.map +1 -0
- package/build/cli/commands/classification-commands.d.ts +7 -0
- package/build/cli/commands/classification-commands.d.ts.map +1 -0
- package/build/cli/commands/classification-commands.js +192 -0
- package/build/cli/commands/classification-commands.js.map +1 -0
- package/build/cli/commands/environment-commands.d.ts +7 -0
- package/build/cli/commands/environment-commands.d.ts.map +1 -0
- package/build/cli/commands/environment-commands.js +172 -0
- package/build/cli/commands/environment-commands.js.map +1 -0
- package/build/cli/commands/index.d.ts +6 -0
- package/build/cli/commands/index.d.ts.map +1 -1
- package/build/cli/commands/index.js +18 -0
- package/build/cli/commands/index.js.map +1 -1
- package/build/cli/commands/pipeline-commands.d.ts.map +1 -1
- package/build/cli/commands/pipeline-commands.js +78 -0
- package/build/cli/commands/pipeline-commands.js.map +1 -1
- package/build/cli/commands/service-connection-commands.d.ts +7 -0
- package/build/cli/commands/service-connection-commands.d.ts.map +1 -0
- package/build/cli/commands/service-connection-commands.js +131 -0
- package/build/cli/commands/service-connection-commands.js.map +1 -0
- package/build/cli/commands/variable-group-commands.d.ts +7 -0
- package/build/cli/commands/variable-group-commands.d.ts.map +1 -0
- package/build/cli/commands/variable-group-commands.js +120 -0
- package/build/cli/commands/variable-group-commands.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Pool CLI Commands - list, get, agents, update, enable/disable
|
|
3
|
+
*/
|
|
4
|
+
import type { Command } from 'commander';
|
|
5
|
+
import type { ServiceContext } from '../../types.js';
|
|
6
|
+
export declare function registerAgentPoolCommands(program: Command, ctx: ServiceContext): void;
|
|
7
|
+
//# sourceMappingURL=agent-pool-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-pool-commands.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/agent-pool-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAiHrF"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Pool CLI Commands - list, get, agents, update, enable/disable
|
|
3
|
+
*/
|
|
4
|
+
import { getGlobalFlags, handleCliError } from '@mcp-consultant-tools/core';
|
|
5
|
+
import { outputResult } from '../output.js';
|
|
6
|
+
export function registerAgentPoolCommands(program, ctx) {
|
|
7
|
+
const agentPool = program.command('agent-pool').alias('ap').description('Agent pool operations');
|
|
8
|
+
agentPool
|
|
9
|
+
.command('list')
|
|
10
|
+
.description('List all agent pools in the organization')
|
|
11
|
+
.option('--pool-type <type>', 'Filter by pool type (e.g., automation, deployment)')
|
|
12
|
+
.action(async (opts) => {
|
|
13
|
+
try {
|
|
14
|
+
const result = await ctx.agentPools.listAgentPools(opts.poolType);
|
|
15
|
+
outputResult({ fileName: 'agent-pools', data: result, summary: `Agent pools` }, getGlobalFlags(program));
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
handleCliError(error, 'list agent pools');
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
agentPool
|
|
22
|
+
.command('get')
|
|
23
|
+
.description('Get detailed agent pool information')
|
|
24
|
+
.argument('<poolId>', 'Agent pool ID')
|
|
25
|
+
.action(async (poolId) => {
|
|
26
|
+
try {
|
|
27
|
+
const result = await ctx.agentPools.getAgentPool(parseInt(poolId));
|
|
28
|
+
outputResult({ fileName: `agent-pool-${poolId}`, data: result, summary: `Agent pool #${poolId}` }, getGlobalFlags(program));
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
handleCliError(error, 'get agent pool');
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
agentPool
|
|
35
|
+
.command('agents')
|
|
36
|
+
.description('List agents in an agent pool')
|
|
37
|
+
.argument('<poolId>', 'Agent pool ID')
|
|
38
|
+
.option('-c, --capabilities', 'Include agent capabilities')
|
|
39
|
+
.action(async (poolId, opts) => {
|
|
40
|
+
try {
|
|
41
|
+
const result = await ctx.agentPools.listAgents(parseInt(poolId), opts.capabilities || false);
|
|
42
|
+
outputResult({ fileName: `agents-pool-${poolId}`, data: result, summary: `Agents in pool #${poolId}` }, getGlobalFlags(program));
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
handleCliError(error, 'list agents');
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
agentPool
|
|
49
|
+
.command('agent')
|
|
50
|
+
.description('Get detailed agent information')
|
|
51
|
+
.argument('<poolId>', 'Agent pool ID')
|
|
52
|
+
.argument('<agentId>', 'Agent ID')
|
|
53
|
+
.action(async (poolId, agentId) => {
|
|
54
|
+
try {
|
|
55
|
+
const result = await ctx.agentPools.getAgent(parseInt(poolId), parseInt(agentId));
|
|
56
|
+
outputResult({ fileName: `agent-${poolId}-${agentId}`, data: result, summary: `Agent #${agentId} in pool #${poolId}` }, getGlobalFlags(program));
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
handleCliError(error, 'get agent');
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
agentPool
|
|
63
|
+
.command('update')
|
|
64
|
+
.description('Update agent pool settings')
|
|
65
|
+
.argument('<poolId>', 'Agent pool ID')
|
|
66
|
+
.option('--auto-provision <bool>', 'Enable auto-provisioning')
|
|
67
|
+
.option('--auto-update <bool>', 'Enable auto-update')
|
|
68
|
+
.option('--auto-size <bool>', 'Enable auto-sizing')
|
|
69
|
+
.option('--target-size <n>', 'Target pool size')
|
|
70
|
+
.action(async (poolId, opts) => {
|
|
71
|
+
try {
|
|
72
|
+
const updates = {};
|
|
73
|
+
if (opts.autoProvision !== undefined)
|
|
74
|
+
updates.autoProvision = opts.autoProvision === 'true';
|
|
75
|
+
if (opts.autoUpdate !== undefined)
|
|
76
|
+
updates.autoUpdate = opts.autoUpdate === 'true';
|
|
77
|
+
if (opts.autoSize !== undefined)
|
|
78
|
+
updates.autoSize = opts.autoSize === 'true';
|
|
79
|
+
if (opts.targetSize !== undefined)
|
|
80
|
+
updates.targetSize = parseInt(opts.targetSize);
|
|
81
|
+
const result = await ctx.agentPools.updateAgentPool(parseInt(poolId), updates);
|
|
82
|
+
outputResult({ fileName: `agent-pool-updated-${poolId}`, data: result, summary: `Updated agent pool #${poolId}` }, getGlobalFlags(program));
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
handleCliError(error, 'update agent pool');
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
agentPool
|
|
89
|
+
.command('enable-agent')
|
|
90
|
+
.description('Enable an agent in a pool')
|
|
91
|
+
.argument('<poolId>', 'Agent pool ID')
|
|
92
|
+
.argument('<agentId>', 'Agent ID')
|
|
93
|
+
.action(async (poolId, agentId) => {
|
|
94
|
+
try {
|
|
95
|
+
const result = await ctx.agentPools.enableAgent(parseInt(poolId), parseInt(agentId));
|
|
96
|
+
outputResult({ fileName: `agent-enabled-${poolId}-${agentId}`, data: result, summary: `Enabled agent #${agentId} in pool #${poolId}` }, getGlobalFlags(program));
|
|
97
|
+
}
|
|
98
|
+
catch (error) {
|
|
99
|
+
handleCliError(error, 'enable agent');
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
agentPool
|
|
103
|
+
.command('disable-agent')
|
|
104
|
+
.description('Disable an agent in a pool')
|
|
105
|
+
.argument('<poolId>', 'Agent pool ID')
|
|
106
|
+
.argument('<agentId>', 'Agent ID')
|
|
107
|
+
.action(async (poolId, agentId) => {
|
|
108
|
+
try {
|
|
109
|
+
const result = await ctx.agentPools.disableAgent(parseInt(poolId), parseInt(agentId));
|
|
110
|
+
outputResult({ fileName: `agent-disabled-${poolId}-${agentId}`, data: result, summary: `Disabled agent #${agentId} in pool #${poolId}` }, getGlobalFlags(program));
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
handleCliError(error, 'disable agent');
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=agent-pool-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-pool-commands.js","sourceRoot":"","sources":["../../../src/cli/commands/agent-pool-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Artifact Feed CLI Commands - list packages, get versions
|
|
3
|
+
*/
|
|
4
|
+
import type { Command } from 'commander';
|
|
5
|
+
import type { ServiceContext } from '../../types.js';
|
|
6
|
+
export declare function registerArtifactFeedCommands(program: Command, ctx: ServiceContext): void;
|
|
7
|
+
//# sourceMappingURL=artifact-feed-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifact-feed-commands.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/artifact-feed-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAiDxF"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Artifact Feed CLI Commands - list packages, get versions
|
|
3
|
+
*/
|
|
4
|
+
import { getGlobalFlags, handleCliError } from '@mcp-consultant-tools/core';
|
|
5
|
+
import { outputResult } from '../output.js';
|
|
6
|
+
export function registerArtifactFeedCommands(program, ctx) {
|
|
7
|
+
const feed = program.command('feed').alias('af').description('Artifact feed operations');
|
|
8
|
+
feed
|
|
9
|
+
.command('packages')
|
|
10
|
+
.description('List packages in an artifact feed')
|
|
11
|
+
.argument('<feedName>', 'Feed name')
|
|
12
|
+
.option('-p, --project <project>', 'Project-scoped feed (omit for org-scoped)')
|
|
13
|
+
.option('--name-prefix <prefix>', 'Filter by package name prefix')
|
|
14
|
+
.option('--package-type <type>', 'Filter by package type (npm, nuget, maven, etc.)')
|
|
15
|
+
.option('-t, --top <n>', 'Maximum number of results')
|
|
16
|
+
.action(async (feedName, opts) => {
|
|
17
|
+
try {
|
|
18
|
+
const options = {};
|
|
19
|
+
if (opts.project)
|
|
20
|
+
options.project = opts.project;
|
|
21
|
+
if (opts.namePrefix)
|
|
22
|
+
options.namePrefix = opts.namePrefix;
|
|
23
|
+
if (opts.packageType)
|
|
24
|
+
options.packageType = opts.packageType;
|
|
25
|
+
if (opts.top)
|
|
26
|
+
options.top = parseInt(opts.top);
|
|
27
|
+
const result = await ctx.artifactFeeds.listFeedPackages(feedName, options);
|
|
28
|
+
outputResult({ fileName: `feed-packages-${feedName}`, data: result, summary: `Packages in feed '${feedName}'` }, getGlobalFlags(program));
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
handleCliError(error, 'list feed packages');
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
feed
|
|
35
|
+
.command('versions')
|
|
36
|
+
.description('Get version history for a package')
|
|
37
|
+
.argument('<feedName>', 'Feed name')
|
|
38
|
+
.argument('<packageName>', 'Package name')
|
|
39
|
+
.option('-p, --project <project>', 'Project-scoped feed (omit for org-scoped)')
|
|
40
|
+
.option('--package-type <type>', 'Package protocol type (npm, nuget, maven, etc.)')
|
|
41
|
+
.option('-t, --top <n>', 'Maximum number of versions')
|
|
42
|
+
.option('--include-delisted', 'Include delisted versions')
|
|
43
|
+
.action(async (feedName, packageName, opts) => {
|
|
44
|
+
try {
|
|
45
|
+
const options = {};
|
|
46
|
+
if (opts.project)
|
|
47
|
+
options.project = opts.project;
|
|
48
|
+
if (opts.packageType)
|
|
49
|
+
options.packageType = opts.packageType;
|
|
50
|
+
if (opts.top)
|
|
51
|
+
options.top = parseInt(opts.top);
|
|
52
|
+
if (opts.includeDelisted)
|
|
53
|
+
options.includeDelisted = true;
|
|
54
|
+
const result = await ctx.artifactFeeds.getPackageVersions(feedName, packageName, options);
|
|
55
|
+
outputResult({ fileName: `feed-versions-${feedName}-${packageName}`, data: result, summary: `Versions of '${packageName}' in feed '${feedName}'` }, getGlobalFlags(program));
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
handleCliError(error, 'get package versions');
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=artifact-feed-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifact-feed-commands.js","sourceRoot":"","sources":["../../../src/cli/commands/artifact-feed-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classification CLI Commands - Iterations and Areas (list, get, CRUD, team assignment)
|
|
3
|
+
*/
|
|
4
|
+
import type { Command } from 'commander';
|
|
5
|
+
import type { ServiceContext } from '../../types.js';
|
|
6
|
+
export declare function registerClassificationCommands(program: Command, ctx: ServiceContext): void;
|
|
7
|
+
//# sourceMappingURL=classification-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classification-commands.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/classification-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAiM1F"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classification CLI Commands - Iterations and Areas (list, get, CRUD, team assignment)
|
|
3
|
+
*/
|
|
4
|
+
import { getGlobalFlags, handleCliError } from '@mcp-consultant-tools/core';
|
|
5
|
+
import { outputResult } from '../output.js';
|
|
6
|
+
export function registerClassificationCommands(program, ctx) {
|
|
7
|
+
// --- Iteration commands ---
|
|
8
|
+
const iteration = program.command('iteration').alias('it').description('Iteration (sprint) operations');
|
|
9
|
+
iteration
|
|
10
|
+
.command('list')
|
|
11
|
+
.description('List all iterations in a project')
|
|
12
|
+
.argument('<project>', 'Project name')
|
|
13
|
+
.option('-d, --depth <n>', 'Tree depth to retrieve', '10')
|
|
14
|
+
.action(async (project, opts) => {
|
|
15
|
+
try {
|
|
16
|
+
const result = await ctx.classification.listClassificationNodes(project, 'iterations', parseInt(opts.depth));
|
|
17
|
+
outputResult({ fileName: `iterations-${project}`, data: result, summary: `Iterations in '${project}'` }, getGlobalFlags(program));
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
handleCliError(error, 'list iterations');
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
iteration
|
|
24
|
+
.command('get')
|
|
25
|
+
.description('Get a specific iteration node')
|
|
26
|
+
.argument('<project>', 'Project name')
|
|
27
|
+
.argument('<path>', 'Iteration path (e.g., Sprint 1 or Release\\Sprint 1)')
|
|
28
|
+
.action(async (project, path) => {
|
|
29
|
+
try {
|
|
30
|
+
const result = await ctx.classification.getClassificationNode(project, 'iterations', path);
|
|
31
|
+
outputResult({ fileName: `iteration-${path.replace(/\\/g, '-')}`, data: result, summary: `Iteration '${path}'` }, getGlobalFlags(program));
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
handleCliError(error, 'get iteration');
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
iteration
|
|
38
|
+
.command('create')
|
|
39
|
+
.description('Create a new iteration')
|
|
40
|
+
.argument('<project>', 'Project name')
|
|
41
|
+
.argument('<name>', 'Iteration name')
|
|
42
|
+
.option('-p, --parent-path <path>', 'Parent iteration path')
|
|
43
|
+
.option('--start-date <date>', 'Start date (YYYY-MM-DD)')
|
|
44
|
+
.option('--finish-date <date>', 'Finish date (YYYY-MM-DD)')
|
|
45
|
+
.action(async (project, name, opts) => {
|
|
46
|
+
try {
|
|
47
|
+
const attrs = {};
|
|
48
|
+
if (opts.startDate)
|
|
49
|
+
attrs.startDate = opts.startDate;
|
|
50
|
+
if (opts.finishDate)
|
|
51
|
+
attrs.finishDate = opts.finishDate;
|
|
52
|
+
const result = await ctx.classification.createClassificationNode(project, 'iterations', name, opts.parentPath, Object.keys(attrs).length > 0 ? attrs : undefined);
|
|
53
|
+
outputResult({ fileName: `iteration-created-${name}`, data: result, summary: `Created iteration '${name}'` }, getGlobalFlags(program));
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
handleCliError(error, 'create iteration');
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
iteration
|
|
60
|
+
.command('update')
|
|
61
|
+
.description('Update an iteration')
|
|
62
|
+
.argument('<project>', 'Project name')
|
|
63
|
+
.argument('<path>', 'Iteration path')
|
|
64
|
+
.option('-n, --name <name>', 'New iteration name')
|
|
65
|
+
.option('--start-date <date>', 'New start date (YYYY-MM-DD)')
|
|
66
|
+
.option('--finish-date <date>', 'New finish date (YYYY-MM-DD)')
|
|
67
|
+
.action(async (project, path, opts) => {
|
|
68
|
+
try {
|
|
69
|
+
const updates = {};
|
|
70
|
+
if (opts.name)
|
|
71
|
+
updates.name = opts.name;
|
|
72
|
+
if (opts.startDate)
|
|
73
|
+
updates.startDate = opts.startDate;
|
|
74
|
+
if (opts.finishDate)
|
|
75
|
+
updates.finishDate = opts.finishDate;
|
|
76
|
+
const result = await ctx.classification.updateClassificationNode(project, 'iterations', path, updates);
|
|
77
|
+
outputResult({ fileName: `iteration-updated-${path.replace(/\\/g, '-')}`, data: result, summary: `Updated iteration '${path}'` }, getGlobalFlags(program));
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
handleCliError(error, 'update iteration');
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
iteration
|
|
84
|
+
.command('delete')
|
|
85
|
+
.description('Delete an iteration (DESTRUCTIVE)')
|
|
86
|
+
.argument('<project>', 'Project name')
|
|
87
|
+
.argument('<path>', 'Iteration path to delete')
|
|
88
|
+
.argument('<reclassifyId>', 'Node ID to reclassify work items into')
|
|
89
|
+
.action(async (project, path, reclassifyId) => {
|
|
90
|
+
try {
|
|
91
|
+
const result = await ctx.classification.deleteClassificationNode(project, 'iterations', path, parseInt(reclassifyId));
|
|
92
|
+
outputResult({ fileName: `iteration-deleted-${path.replace(/\\/g, '-')}`, data: result, summary: `Deleted iteration '${path}'` }, getGlobalFlags(program));
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
handleCliError(error, 'delete iteration');
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
iteration
|
|
99
|
+
.command('add-to-team')
|
|
100
|
+
.description('Add an iteration to a team\'s backlog')
|
|
101
|
+
.argument('<project>', 'Project name')
|
|
102
|
+
.argument('<team>', 'Team name')
|
|
103
|
+
.argument('<iterationId>', 'Iteration identifier (GUID)')
|
|
104
|
+
.action(async (project, team, iterationId) => {
|
|
105
|
+
try {
|
|
106
|
+
const result = await ctx.classification.addIterationToTeam(project, team, iterationId);
|
|
107
|
+
outputResult({ fileName: `iteration-team-${team}-${iterationId}`, data: result, summary: `Added iteration to team '${team}'` }, getGlobalFlags(program));
|
|
108
|
+
}
|
|
109
|
+
catch (error) {
|
|
110
|
+
handleCliError(error, 'add iteration to team');
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
// --- Area commands ---
|
|
114
|
+
const area = program.command('area').alias('ar').description('Area path operations');
|
|
115
|
+
area
|
|
116
|
+
.command('list')
|
|
117
|
+
.description('List all area paths in a project')
|
|
118
|
+
.argument('<project>', 'Project name')
|
|
119
|
+
.option('-d, --depth <n>', 'Tree depth to retrieve', '10')
|
|
120
|
+
.action(async (project, opts) => {
|
|
121
|
+
try {
|
|
122
|
+
const result = await ctx.classification.listClassificationNodes(project, 'areas', parseInt(opts.depth));
|
|
123
|
+
outputResult({ fileName: `areas-${project}`, data: result, summary: `Areas in '${project}'` }, getGlobalFlags(program));
|
|
124
|
+
}
|
|
125
|
+
catch (error) {
|
|
126
|
+
handleCliError(error, 'list areas');
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
area
|
|
130
|
+
.command('get')
|
|
131
|
+
.description('Get a specific area path node')
|
|
132
|
+
.argument('<project>', 'Project name')
|
|
133
|
+
.argument('<path>', 'Area path (e.g., Frontend or Platform\\API)')
|
|
134
|
+
.action(async (project, path) => {
|
|
135
|
+
try {
|
|
136
|
+
const result = await ctx.classification.getClassificationNode(project, 'areas', path);
|
|
137
|
+
outputResult({ fileName: `area-${path.replace(/\\/g, '-')}`, data: result, summary: `Area '${path}'` }, getGlobalFlags(program));
|
|
138
|
+
}
|
|
139
|
+
catch (error) {
|
|
140
|
+
handleCliError(error, 'get area');
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
area
|
|
144
|
+
.command('create')
|
|
145
|
+
.description('Create a new area path')
|
|
146
|
+
.argument('<project>', 'Project name')
|
|
147
|
+
.argument('<name>', 'Area name')
|
|
148
|
+
.option('-p, --parent-path <path>', 'Parent area path')
|
|
149
|
+
.action(async (project, name, opts) => {
|
|
150
|
+
try {
|
|
151
|
+
const result = await ctx.classification.createClassificationNode(project, 'areas', name, opts.parentPath);
|
|
152
|
+
outputResult({ fileName: `area-created-${name}`, data: result, summary: `Created area '${name}'` }, getGlobalFlags(program));
|
|
153
|
+
}
|
|
154
|
+
catch (error) {
|
|
155
|
+
handleCliError(error, 'create area');
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
area
|
|
159
|
+
.command('update')
|
|
160
|
+
.description('Update an area path')
|
|
161
|
+
.argument('<project>', 'Project name')
|
|
162
|
+
.argument('<path>', 'Area path')
|
|
163
|
+
.option('-n, --name <name>', 'New area name')
|
|
164
|
+
.action(async (project, path, opts) => {
|
|
165
|
+
try {
|
|
166
|
+
const updates = {};
|
|
167
|
+
if (opts.name)
|
|
168
|
+
updates.name = opts.name;
|
|
169
|
+
const result = await ctx.classification.updateClassificationNode(project, 'areas', path, updates);
|
|
170
|
+
outputResult({ fileName: `area-updated-${path.replace(/\\/g, '-')}`, data: result, summary: `Updated area '${path}'` }, getGlobalFlags(program));
|
|
171
|
+
}
|
|
172
|
+
catch (error) {
|
|
173
|
+
handleCliError(error, 'update area');
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
area
|
|
177
|
+
.command('delete')
|
|
178
|
+
.description('Delete an area path (DESTRUCTIVE)')
|
|
179
|
+
.argument('<project>', 'Project name')
|
|
180
|
+
.argument('<path>', 'Area path to delete')
|
|
181
|
+
.argument('<reclassifyId>', 'Node ID to reclassify work items into')
|
|
182
|
+
.action(async (project, path, reclassifyId) => {
|
|
183
|
+
try {
|
|
184
|
+
const result = await ctx.classification.deleteClassificationNode(project, 'areas', path, parseInt(reclassifyId));
|
|
185
|
+
outputResult({ fileName: `area-deleted-${path.replace(/\\/g, '-')}`, data: result, summary: `Deleted area '${path}'` }, getGlobalFlags(program));
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
handleCliError(error, 'delete area');
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=classification-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classification-commands.js","sourceRoot":"","sources":["../../../src/cli/commands/classification-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment CLI Commands - list, get, deployments, checks, CRUD
|
|
3
|
+
*/
|
|
4
|
+
import type { Command } from 'commander';
|
|
5
|
+
import type { ServiceContext } from '../../types.js';
|
|
6
|
+
export declare function registerEnvironmentCommands(program: Command, ctx: ServiceContext): void;
|
|
7
|
+
//# sourceMappingURL=environment-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment-commands.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/environment-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAyKvF"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment CLI Commands - list, get, deployments, checks, CRUD
|
|
3
|
+
*/
|
|
4
|
+
import { getGlobalFlags, handleCliError } from '@mcp-consultant-tools/core';
|
|
5
|
+
import { outputResult } from '../output.js';
|
|
6
|
+
export function registerEnvironmentCommands(program, ctx) {
|
|
7
|
+
const env = program.command('env').alias('e').description('Environment operations');
|
|
8
|
+
env
|
|
9
|
+
.command('list')
|
|
10
|
+
.description('List all environments in a project')
|
|
11
|
+
.argument('<project>', 'Project name')
|
|
12
|
+
.action(async (project) => {
|
|
13
|
+
try {
|
|
14
|
+
const result = await ctx.environments.listEnvironments(project);
|
|
15
|
+
outputResult({ fileName: `environments-${project}`, data: result, summary: `Environments in '${project}'` }, getGlobalFlags(program));
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
handleCliError(error, 'list environments');
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
env
|
|
22
|
+
.command('get')
|
|
23
|
+
.description('Get detailed environment information')
|
|
24
|
+
.argument('<project>', 'Project name')
|
|
25
|
+
.argument('<envId>', 'Environment ID')
|
|
26
|
+
.action(async (project, envId) => {
|
|
27
|
+
try {
|
|
28
|
+
const result = await ctx.environments.getEnvironment(project, parseInt(envId));
|
|
29
|
+
outputResult({ fileName: `environment-${envId}`, data: result, summary: `Environment #${envId}` }, getGlobalFlags(program));
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
handleCliError(error, 'get environment');
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
env
|
|
36
|
+
.command('deployments')
|
|
37
|
+
.description('Get deployment history for an environment')
|
|
38
|
+
.argument('<project>', 'Project name')
|
|
39
|
+
.argument('<envId>', 'Environment ID')
|
|
40
|
+
.option('-t, --top <n>', 'Maximum number of results', '10')
|
|
41
|
+
.action(async (project, envId, opts) => {
|
|
42
|
+
try {
|
|
43
|
+
const result = await ctx.environments.getEnvironmentDeployments(project, parseInt(envId), parseInt(opts.top));
|
|
44
|
+
outputResult({ fileName: `env-deployments-${envId}`, data: result, summary: `Deployments for environment #${envId}` }, getGlobalFlags(program));
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
handleCliError(error, 'get environment deployments');
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
env
|
|
51
|
+
.command('checks')
|
|
52
|
+
.description('Get checks/gates configured for an environment')
|
|
53
|
+
.argument('<project>', 'Project name')
|
|
54
|
+
.argument('<envId>', 'Environment ID')
|
|
55
|
+
.action(async (project, envId) => {
|
|
56
|
+
try {
|
|
57
|
+
const result = await ctx.environments.getEnvironmentChecks(project, parseInt(envId));
|
|
58
|
+
outputResult({ fileName: `env-checks-${envId}`, data: result, summary: `Checks for environment #${envId}` }, getGlobalFlags(program));
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
handleCliError(error, 'get environment checks');
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
env
|
|
65
|
+
.command('create')
|
|
66
|
+
.description('Create a new environment')
|
|
67
|
+
.argument('<project>', 'Project name')
|
|
68
|
+
.argument('<name>', 'Environment name')
|
|
69
|
+
.option('-d, --description <text>', 'Environment description')
|
|
70
|
+
.action(async (project, name, opts) => {
|
|
71
|
+
try {
|
|
72
|
+
const result = await ctx.environments.createEnvironment(project, name, opts.description);
|
|
73
|
+
outputResult({ fileName: `env-created-${name}`, data: result, summary: `Created environment '${name}'` }, getGlobalFlags(program));
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
handleCliError(error, 'create environment');
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
env
|
|
80
|
+
.command('update')
|
|
81
|
+
.description('Update an environment')
|
|
82
|
+
.argument('<project>', 'Project name')
|
|
83
|
+
.argument('<envId>', 'Environment ID')
|
|
84
|
+
.option('-n, --name <name>', 'New environment name')
|
|
85
|
+
.option('-d, --description <text>', 'New description')
|
|
86
|
+
.action(async (project, envId, opts) => {
|
|
87
|
+
try {
|
|
88
|
+
const updates = {};
|
|
89
|
+
if (opts.name)
|
|
90
|
+
updates.name = opts.name;
|
|
91
|
+
if (opts.description)
|
|
92
|
+
updates.description = opts.description;
|
|
93
|
+
const result = await ctx.environments.updateEnvironment(project, parseInt(envId), updates);
|
|
94
|
+
outputResult({ fileName: `env-updated-${envId}`, data: result, summary: `Updated environment #${envId}` }, getGlobalFlags(program));
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
handleCliError(error, 'update environment');
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
env
|
|
101
|
+
.command('delete')
|
|
102
|
+
.description('Delete an environment (DESTRUCTIVE)')
|
|
103
|
+
.argument('<project>', 'Project name')
|
|
104
|
+
.argument('<envId>', 'Environment ID')
|
|
105
|
+
.action(async (project, envId) => {
|
|
106
|
+
try {
|
|
107
|
+
const result = await ctx.environments.deleteEnvironment(project, parseInt(envId));
|
|
108
|
+
outputResult({ fileName: `env-deleted-${envId}`, data: result, summary: `Deleted environment #${envId}` }, getGlobalFlags(program));
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
handleCliError(error, 'delete environment');
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
env
|
|
115
|
+
.command('add-check')
|
|
116
|
+
.description('Add a check/gate to an environment')
|
|
117
|
+
.argument('<project>', 'Project name')
|
|
118
|
+
.argument('<envId>', 'Environment ID')
|
|
119
|
+
.argument('<type>', 'Check type (e.g., Approval, ExclusiveLock, TaskCheck)')
|
|
120
|
+
.option('-s, --settings <json>', 'Check settings as JSON')
|
|
121
|
+
.option('--timeout <minutes>', 'Timeout in minutes')
|
|
122
|
+
.action(async (project, envId, type, opts) => {
|
|
123
|
+
try {
|
|
124
|
+
const config = {};
|
|
125
|
+
if (opts.settings)
|
|
126
|
+
config.settings = JSON.parse(opts.settings);
|
|
127
|
+
if (opts.timeout)
|
|
128
|
+
config.timeout = parseInt(opts.timeout);
|
|
129
|
+
const result = await ctx.environments.addEnvironmentCheck(project, parseInt(envId), type, config);
|
|
130
|
+
outputResult({ fileName: `env-check-added-${envId}`, data: result, summary: `Added ${type} check to environment #${envId}` }, getGlobalFlags(program));
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
handleCliError(error, 'add environment check');
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
env
|
|
137
|
+
.command('update-check')
|
|
138
|
+
.description('Update an environment check')
|
|
139
|
+
.argument('<project>', 'Project name')
|
|
140
|
+
.argument('<checkId>', 'Check configuration ID')
|
|
141
|
+
.option('-s, --settings <json>', 'Updated settings as JSON')
|
|
142
|
+
.option('--timeout <minutes>', 'Updated timeout in minutes')
|
|
143
|
+
.action(async (project, checkId, opts) => {
|
|
144
|
+
try {
|
|
145
|
+
const updates = {};
|
|
146
|
+
if (opts.settings)
|
|
147
|
+
updates.settings = JSON.parse(opts.settings);
|
|
148
|
+
if (opts.timeout)
|
|
149
|
+
updates.timeout = parseInt(opts.timeout);
|
|
150
|
+
const result = await ctx.environments.updateEnvironmentCheck(project, parseInt(checkId), updates);
|
|
151
|
+
outputResult({ fileName: `env-check-updated-${checkId}`, data: result, summary: `Updated check #${checkId}` }, getGlobalFlags(program));
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
handleCliError(error, 'update environment check');
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
env
|
|
158
|
+
.command('delete-check')
|
|
159
|
+
.description('Delete an environment check (DESTRUCTIVE)')
|
|
160
|
+
.argument('<project>', 'Project name')
|
|
161
|
+
.argument('<checkId>', 'Check configuration ID')
|
|
162
|
+
.action(async (project, checkId) => {
|
|
163
|
+
try {
|
|
164
|
+
const result = await ctx.environments.removeEnvironmentCheck(project, parseInt(checkId));
|
|
165
|
+
outputResult({ fileName: `env-check-deleted-${checkId}`, data: result, summary: `Deleted check #${checkId}` }, getGlobalFlags(program));
|
|
166
|
+
}
|
|
167
|
+
catch (error) {
|
|
168
|
+
handleCliError(error, 'delete environment check');
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=environment-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment-commands.js","sourceRoot":"","sources":["../../../src/cli/commands/environment-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,4 +5,10 @@ import type { Command } from 'commander';
|
|
|
5
5
|
import type { ServiceContext } from '../../types.js';
|
|
6
6
|
export declare function registerAllCommands(program: Command, ctx: ServiceContext): void;
|
|
7
7
|
export { registerPipelineCommands } from './pipeline-commands.js';
|
|
8
|
+
export { registerEnvironmentCommands } from './environment-commands.js';
|
|
9
|
+
export { registerServiceConnectionCommands } from './service-connection-commands.js';
|
|
10
|
+
export { registerVariableGroupCommands } from './variable-group-commands.js';
|
|
11
|
+
export { registerAgentPoolCommands } from './agent-pool-commands.js';
|
|
12
|
+
export { registerClassificationCommands } from './classification-commands.js';
|
|
13
|
+
export { registerArtifactFeedCommands } from './artifact-feed-commands.js';
|
|
8
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AASrD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAQ/E;AAED,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -2,8 +2,26 @@
|
|
|
2
2
|
* CLI Commands barrel export + combined registration
|
|
3
3
|
*/
|
|
4
4
|
import { registerPipelineCommands } from './pipeline-commands.js';
|
|
5
|
+
import { registerEnvironmentCommands } from './environment-commands.js';
|
|
6
|
+
import { registerServiceConnectionCommands } from './service-connection-commands.js';
|
|
7
|
+
import { registerVariableGroupCommands } from './variable-group-commands.js';
|
|
8
|
+
import { registerAgentPoolCommands } from './agent-pool-commands.js';
|
|
9
|
+
import { registerClassificationCommands } from './classification-commands.js';
|
|
10
|
+
import { registerArtifactFeedCommands } from './artifact-feed-commands.js';
|
|
5
11
|
export function registerAllCommands(program, ctx) {
|
|
6
12
|
registerPipelineCommands(program, ctx);
|
|
13
|
+
registerEnvironmentCommands(program, ctx);
|
|
14
|
+
registerServiceConnectionCommands(program, ctx);
|
|
15
|
+
registerVariableGroupCommands(program, ctx);
|
|
16
|
+
registerAgentPoolCommands(program, ctx);
|
|
17
|
+
registerClassificationCommands(program, ctx);
|
|
18
|
+
registerArtifactFeedCommands(program, ctx);
|
|
7
19
|
}
|
|
8
20
|
export { registerPipelineCommands } from './pipeline-commands.js';
|
|
21
|
+
export { registerEnvironmentCommands } from './environment-commands.js';
|
|
22
|
+
export { registerServiceConnectionCommands } from './service-connection-commands.js';
|
|
23
|
+
export { registerVariableGroupCommands } from './variable-group-commands.js';
|
|
24
|
+
export { registerAgentPoolCommands } from './agent-pool-commands.js';
|
|
25
|
+
export { registerClassificationCommands } from './classification-commands.js';
|
|
26
|
+
export { registerArtifactFeedCommands } from './artifact-feed-commands.js';
|
|
9
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAE3E,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAE,GAAmB;IACvE,wBAAwB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACvC,2BAA2B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC1C,iCAAiC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAChD,6BAA6B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC5C,yBAAyB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACxC,8BAA8B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC7C,4BAA4B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC;AAED,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline-commands.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/pipeline-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"pipeline-commands.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/pipeline-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAyRpF"}
|
|
@@ -171,6 +171,84 @@ export function registerPipelineCommands(program, ctx) {
|
|
|
171
171
|
handleCliError(error, 'queue build');
|
|
172
172
|
}
|
|
173
173
|
});
|
|
174
|
+
pipeline
|
|
175
|
+
.command('build-status')
|
|
176
|
+
.description('Get build status and details')
|
|
177
|
+
.argument('<project>', 'Project name')
|
|
178
|
+
.argument('<buildId>', 'Build ID')
|
|
179
|
+
.option('-d, --detail <level>', 'Detail level: summary, full', 'summary')
|
|
180
|
+
.option('-s, --scope <scope>', 'Timeline scope: stages, jobs, all, problems', 'problems')
|
|
181
|
+
.option('--max-issues <n>', 'Maximum issues to return', '5')
|
|
182
|
+
.action(async (project, buildId, opts) => {
|
|
183
|
+
try {
|
|
184
|
+
const result = await ctx.pipelines.getBuildStatus(project, parseInt(buildId), opts.detail, opts.scope, parseInt(opts.maxIssues));
|
|
185
|
+
outputResult({ fileName: `build-status-${buildId}`, data: result, summary: `Build #${buildId} status` }, getGlobalFlags(program));
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
handleCliError(error, 'get build status');
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
pipeline
|
|
192
|
+
.command('build-timeline')
|
|
193
|
+
.description('Get build timeline with stage/job/task details')
|
|
194
|
+
.argument('<project>', 'Project name')
|
|
195
|
+
.argument('<buildId>', 'Build ID')
|
|
196
|
+
.option('-s, --scope <scope>', 'Timeline scope: stages, jobs, all, problems', 'problems')
|
|
197
|
+
.option('--max-issues <n>', 'Maximum issues to return', '5')
|
|
198
|
+
.action(async (project, buildId, opts) => {
|
|
199
|
+
try {
|
|
200
|
+
const result = await ctx.pipelines.getBuildTimeline(project, parseInt(buildId), opts.scope, parseInt(opts.maxIssues));
|
|
201
|
+
outputResult({ fileName: `build-timeline-${buildId}`, data: result, summary: `Build #${buildId} timeline` }, getGlobalFlags(program));
|
|
202
|
+
}
|
|
203
|
+
catch (error) {
|
|
204
|
+
handleCliError(error, 'get build timeline');
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
pipeline
|
|
208
|
+
.command('build-logs')
|
|
209
|
+
.description('Get build logs')
|
|
210
|
+
.argument('<project>', 'Project name')
|
|
211
|
+
.argument('<buildId>', 'Build ID')
|
|
212
|
+
.option('-l, --log-id <id>', 'Specific log ID to retrieve')
|
|
213
|
+
.option('-m, --mode <mode>', 'Log mode: summary, full, errors', 'summary')
|
|
214
|
+
.action(async (project, buildId, opts) => {
|
|
215
|
+
try {
|
|
216
|
+
const logId = opts.logId ? parseInt(opts.logId) : undefined;
|
|
217
|
+
const result = await ctx.pipelines.getBuildLogs(project, parseInt(buildId), logId, opts.mode);
|
|
218
|
+
outputResult({ fileName: `build-logs-${buildId}`, data: result, summary: `Build #${buildId} logs` }, getGlobalFlags(program));
|
|
219
|
+
}
|
|
220
|
+
catch (error) {
|
|
221
|
+
handleCliError(error, 'get build logs');
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
pipeline
|
|
225
|
+
.command('cancel')
|
|
226
|
+
.description('Cancel a running build')
|
|
227
|
+
.argument('<project>', 'Project name')
|
|
228
|
+
.argument('<buildId>', 'Build ID to cancel')
|
|
229
|
+
.action(async (project, buildId) => {
|
|
230
|
+
try {
|
|
231
|
+
const result = await ctx.pipelines.cancelBuild(project, parseInt(buildId));
|
|
232
|
+
outputResult({ fileName: `build-cancelled-${buildId}`, data: result, summary: `Cancelled build #${buildId}` }, getGlobalFlags(program));
|
|
233
|
+
}
|
|
234
|
+
catch (error) {
|
|
235
|
+
handleCliError(error, 'cancel build');
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
pipeline
|
|
239
|
+
.command('retry')
|
|
240
|
+
.description('Retry a failed build')
|
|
241
|
+
.argument('<project>', 'Project name')
|
|
242
|
+
.argument('<buildId>', 'Build ID to retry')
|
|
243
|
+
.action(async (project, buildId) => {
|
|
244
|
+
try {
|
|
245
|
+
const result = await ctx.pipelines.retryBuild(project, parseInt(buildId));
|
|
246
|
+
outputResult({ fileName: `build-retried-${buildId}`, data: result, summary: `Retried build #${buildId}` }, getGlobalFlags(program));
|
|
247
|
+
}
|
|
248
|
+
catch (error) {
|
|
249
|
+
handleCliError(error, 'retry build');
|
|
250
|
+
}
|
|
251
|
+
});
|
|
174
252
|
pipeline
|
|
175
253
|
.command('approve')
|
|
176
254
|
.description('Approve or reject a pipeline stage gate')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline-commands.js","sourceRoot":"","sources":["../../../src/cli/commands/pipeline-commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipeline-commands.js","sourceRoot":"","sources":["../../../src/cli/commands/pipeline-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service Connection CLI Commands - list, get, types, CRUD, share
|
|
3
|
+
*/
|
|
4
|
+
import type { Command } from 'commander';
|
|
5
|
+
import type { ServiceContext } from '../../types.js';
|
|
6
|
+
export declare function registerServiceConnectionCommands(program: Command, ctx: ServiceContext): void;
|
|
7
|
+
//# sourceMappingURL=service-connection-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-connection-commands.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/service-connection-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CA2H7F"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service Connection CLI Commands - list, get, types, CRUD, share
|
|
3
|
+
*/
|
|
4
|
+
import { getGlobalFlags, handleCliError } from '@mcp-consultant-tools/core';
|
|
5
|
+
import { outputResult } from '../output.js';
|
|
6
|
+
export function registerServiceConnectionCommands(program, ctx) {
|
|
7
|
+
const svcConn = program.command('svc-conn').alias('sc').description('Service connection operations');
|
|
8
|
+
svcConn
|
|
9
|
+
.command('list')
|
|
10
|
+
.description('List all service connections in a project')
|
|
11
|
+
.argument('<project>', 'Project name')
|
|
12
|
+
.action(async (project) => {
|
|
13
|
+
try {
|
|
14
|
+
const result = await ctx.serviceConnections.listServiceConnections(project);
|
|
15
|
+
outputResult({ fileName: `svc-conns-${project}`, data: result, summary: `Service connections in '${project}'` }, getGlobalFlags(program));
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
handleCliError(error, 'list service connections');
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
svcConn
|
|
22
|
+
.command('get')
|
|
23
|
+
.description('Get detailed service connection information')
|
|
24
|
+
.argument('<project>', 'Project name')
|
|
25
|
+
.argument('<connectionId>', 'Service connection ID (GUID)')
|
|
26
|
+
.action(async (project, connectionId) => {
|
|
27
|
+
try {
|
|
28
|
+
const result = await ctx.serviceConnections.getServiceConnection(project, connectionId);
|
|
29
|
+
outputResult({ fileName: `svc-conn-${connectionId}`, data: result, summary: `Service connection '${connectionId}'` }, getGlobalFlags(program));
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
handleCliError(error, 'get service connection');
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
svcConn
|
|
36
|
+
.command('types')
|
|
37
|
+
.description('List available service connection types')
|
|
38
|
+
.action(async () => {
|
|
39
|
+
try {
|
|
40
|
+
const result = await ctx.serviceConnections.getServiceConnectionTypes();
|
|
41
|
+
outputResult({ fileName: 'svc-conn-types', data: result, summary: `Service connection types` }, getGlobalFlags(program));
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
handleCliError(error, 'get service connection types');
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
svcConn
|
|
48
|
+
.command('create')
|
|
49
|
+
.description('Create a new service connection')
|
|
50
|
+
.argument('<project>', 'Project name')
|
|
51
|
+
.argument('<name>', 'Connection name')
|
|
52
|
+
.argument('<type>', 'Connection type (e.g., AzureRM, GitHub, Docker)')
|
|
53
|
+
.option('-u, --url <url>', 'Service URL')
|
|
54
|
+
.option('-d, --description <text>', 'Connection description')
|
|
55
|
+
.option('--auth <json>', 'Authorization config as JSON (e.g., {"scheme":"Token","parameters":{"apitoken":"..."}})')
|
|
56
|
+
.option('--data <json>', 'Additional data as JSON')
|
|
57
|
+
.action(async (project, name, type, opts) => {
|
|
58
|
+
try {
|
|
59
|
+
const config = {};
|
|
60
|
+
if (opts.url)
|
|
61
|
+
config.url = opts.url;
|
|
62
|
+
if (opts.description)
|
|
63
|
+
config.description = opts.description;
|
|
64
|
+
if (opts.auth)
|
|
65
|
+
config.authorization = JSON.parse(opts.auth);
|
|
66
|
+
if (opts.data)
|
|
67
|
+
config.data = JSON.parse(opts.data);
|
|
68
|
+
const result = await ctx.serviceConnections.createServiceConnection(project, name, type, config);
|
|
69
|
+
outputResult({ fileName: `svc-conn-created-${name}`, data: result, summary: `Created service connection '${name}'` }, getGlobalFlags(program));
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
handleCliError(error, 'create service connection');
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
svcConn
|
|
76
|
+
.command('update')
|
|
77
|
+
.description('Update a service connection')
|
|
78
|
+
.argument('<project>', 'Project name')
|
|
79
|
+
.argument('<connectionId>', 'Service connection ID (GUID)')
|
|
80
|
+
.option('-n, --name <name>', 'New connection name')
|
|
81
|
+
.option('-d, --description <text>', 'New description')
|
|
82
|
+
.option('-u, --url <url>', 'New service URL')
|
|
83
|
+
.option('--data <json>', 'Updated data as JSON')
|
|
84
|
+
.action(async (project, connectionId, opts) => {
|
|
85
|
+
try {
|
|
86
|
+
const updates = {};
|
|
87
|
+
if (opts.name)
|
|
88
|
+
updates.name = opts.name;
|
|
89
|
+
if (opts.description)
|
|
90
|
+
updates.description = opts.description;
|
|
91
|
+
if (opts.url)
|
|
92
|
+
updates.url = opts.url;
|
|
93
|
+
if (opts.data)
|
|
94
|
+
updates.data = JSON.parse(opts.data);
|
|
95
|
+
const result = await ctx.serviceConnections.updateServiceConnection(project, connectionId, updates);
|
|
96
|
+
outputResult({ fileName: `svc-conn-updated-${connectionId}`, data: result, summary: `Updated service connection '${connectionId}'` }, getGlobalFlags(program));
|
|
97
|
+
}
|
|
98
|
+
catch (error) {
|
|
99
|
+
handleCliError(error, 'update service connection');
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
svcConn
|
|
103
|
+
.command('share')
|
|
104
|
+
.description('Share a service connection with other projects')
|
|
105
|
+
.argument('<connectionId>', 'Service connection ID (GUID)')
|
|
106
|
+
.argument('<projectIds...>', 'Project IDs to share with')
|
|
107
|
+
.action(async (connectionId, projectIds) => {
|
|
108
|
+
try {
|
|
109
|
+
const result = await ctx.serviceConnections.shareServiceConnection(connectionId, projectIds);
|
|
110
|
+
outputResult({ fileName: `svc-conn-shared-${connectionId}`, data: result, summary: `Shared connection '${connectionId}' with ${projectIds.length} project(s)` }, getGlobalFlags(program));
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
handleCliError(error, 'share service connection');
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
svcConn
|
|
117
|
+
.command('delete')
|
|
118
|
+
.description('Delete a service connection (DESTRUCTIVE)')
|
|
119
|
+
.argument('<project>', 'Project name')
|
|
120
|
+
.argument('<connectionId>', 'Service connection ID (GUID)')
|
|
121
|
+
.action(async (project, connectionId) => {
|
|
122
|
+
try {
|
|
123
|
+
const result = await ctx.serviceConnections.deleteServiceConnection(project, connectionId);
|
|
124
|
+
outputResult({ fileName: `svc-conn-deleted-${connectionId}`, data: result, summary: `Deleted service connection '${connectionId}'` }, getGlobalFlags(program));
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
handleCliError(error, 'delete service connection');
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=service-connection-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-connection-commands.js","sourceRoot":"","sources":["../../../src/cli/commands/service-connection-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Variable Group CLI Commands - list, get, CRUD, set/remove variables
|
|
3
|
+
*/
|
|
4
|
+
import type { Command } from 'commander';
|
|
5
|
+
import type { ServiceContext } from '../../types.js';
|
|
6
|
+
export declare function registerVariableGroupCommands(program: Command, ctx: ServiceContext): void;
|
|
7
|
+
//# sourceMappingURL=variable-group-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable-group-commands.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/variable-group-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAsHzF"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Variable Group CLI Commands - list, get, CRUD, set/remove variables
|
|
3
|
+
*/
|
|
4
|
+
import { getGlobalFlags, handleCliError } from '@mcp-consultant-tools/core';
|
|
5
|
+
import { outputResult } from '../output.js';
|
|
6
|
+
export function registerVariableGroupCommands(program, ctx) {
|
|
7
|
+
const varGroup = program.command('var-group').alias('vg').description('Variable group operations');
|
|
8
|
+
varGroup
|
|
9
|
+
.command('list')
|
|
10
|
+
.description('List all variable groups in a project')
|
|
11
|
+
.argument('<project>', 'Project name')
|
|
12
|
+
.action(async (project) => {
|
|
13
|
+
try {
|
|
14
|
+
const result = await ctx.variableGroups.getVariableGroups(project);
|
|
15
|
+
outputResult({ fileName: `var-groups-${project}`, data: result, summary: `Variable groups in '${project}'` }, getGlobalFlags(program));
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
handleCliError(error, 'list variable groups');
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
varGroup
|
|
22
|
+
.command('get')
|
|
23
|
+
.description('Get detailed variable group information')
|
|
24
|
+
.argument('<project>', 'Project name')
|
|
25
|
+
.argument('<groupId>', 'Variable group ID')
|
|
26
|
+
.action(async (project, groupId) => {
|
|
27
|
+
try {
|
|
28
|
+
const result = await ctx.variableGroups.getVariableGroup(project, parseInt(groupId));
|
|
29
|
+
outputResult({ fileName: `var-group-${groupId}`, data: result, summary: `Variable group #${groupId}` }, getGlobalFlags(program));
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
handleCliError(error, 'get variable group');
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
varGroup
|
|
36
|
+
.command('create')
|
|
37
|
+
.description('Create a new variable group')
|
|
38
|
+
.argument('<project>', 'Project name')
|
|
39
|
+
.argument('<name>', 'Variable group name')
|
|
40
|
+
.option('-d, --description <text>', 'Group description')
|
|
41
|
+
.option('--variables <json>', 'Initial variables as JSON (e.g., {"VAR1":{"value":"val1"},"SECRET":{"value":"s","isSecret":true}})')
|
|
42
|
+
.action(async (project, name, opts) => {
|
|
43
|
+
try {
|
|
44
|
+
const variables = opts.variables ? JSON.parse(opts.variables) : undefined;
|
|
45
|
+
const result = await ctx.variableGroups.createVariableGroup(project, name, opts.description, variables);
|
|
46
|
+
outputResult({ fileName: `var-group-created-${name}`, data: result, summary: `Created variable group '${name}'` }, getGlobalFlags(program));
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
handleCliError(error, 'create variable group');
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
varGroup
|
|
53
|
+
.command('update')
|
|
54
|
+
.description('Update variable group metadata')
|
|
55
|
+
.argument('<project>', 'Project name')
|
|
56
|
+
.argument('<groupId>', 'Variable group ID')
|
|
57
|
+
.option('-n, --name <name>', 'New group name')
|
|
58
|
+
.option('-d, --description <text>', 'New description')
|
|
59
|
+
.action(async (project, groupId, opts) => {
|
|
60
|
+
try {
|
|
61
|
+
const updates = {};
|
|
62
|
+
if (opts.name)
|
|
63
|
+
updates.name = opts.name;
|
|
64
|
+
if (opts.description)
|
|
65
|
+
updates.description = opts.description;
|
|
66
|
+
const result = await ctx.variableGroups.updateVariableGroupMetadata(project, parseInt(groupId), updates);
|
|
67
|
+
outputResult({ fileName: `var-group-updated-${groupId}`, data: result, summary: `Updated variable group #${groupId}` }, getGlobalFlags(program));
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
handleCliError(error, 'update variable group');
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
varGroup
|
|
74
|
+
.command('set-var')
|
|
75
|
+
.description('Set a variable in a variable group')
|
|
76
|
+
.argument('<project>', 'Project name')
|
|
77
|
+
.argument('<groupId>', 'Variable group ID')
|
|
78
|
+
.argument('<varName>', 'Variable name')
|
|
79
|
+
.argument('<value>', 'Variable value')
|
|
80
|
+
.option('-s, --secret', 'Mark variable as secret')
|
|
81
|
+
.action(async (project, groupId, varName, value, opts) => {
|
|
82
|
+
try {
|
|
83
|
+
const result = await ctx.variableGroups.setVariable(project, parseInt(groupId), varName, value, opts.secret || false);
|
|
84
|
+
outputResult({ fileName: `var-set-${groupId}-${varName}`, data: result, summary: `Set variable '${varName}' in group #${groupId}` }, getGlobalFlags(program));
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
handleCliError(error, 'set variable');
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
varGroup
|
|
91
|
+
.command('remove-var')
|
|
92
|
+
.description('Remove a variable from a variable group')
|
|
93
|
+
.argument('<project>', 'Project name')
|
|
94
|
+
.argument('<groupId>', 'Variable group ID')
|
|
95
|
+
.argument('<varName>', 'Variable name to remove')
|
|
96
|
+
.action(async (project, groupId, varName) => {
|
|
97
|
+
try {
|
|
98
|
+
const result = await ctx.variableGroups.removeVariable(project, parseInt(groupId), varName);
|
|
99
|
+
outputResult({ fileName: `var-removed-${groupId}-${varName}`, data: result, summary: `Removed variable '${varName}' from group #${groupId}` }, getGlobalFlags(program));
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
handleCliError(error, 'remove variable');
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
varGroup
|
|
106
|
+
.command('delete')
|
|
107
|
+
.description('Delete a variable group (DESTRUCTIVE)')
|
|
108
|
+
.argument('<project>', 'Project name')
|
|
109
|
+
.argument('<groupId>', 'Variable group ID')
|
|
110
|
+
.action(async (project, groupId) => {
|
|
111
|
+
try {
|
|
112
|
+
const result = await ctx.variableGroups.deleteVariableGroup(project, parseInt(groupId));
|
|
113
|
+
outputResult({ fileName: `var-group-deleted-${groupId}`, data: result, summary: `Deleted variable group #${groupId}` }, getGlobalFlags(program));
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
handleCliError(error, 'delete variable group');
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=variable-group-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable-group-commands.js","sourceRoot":"","sources":["../../../src/cli/commands/variable-group-commands.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mcp-consultant-tools/azure-devops-admin",
|
|
3
|
-
"version": "28.0.0-beta.
|
|
3
|
+
"version": "28.0.0-beta.14",
|
|
4
4
|
"description": "MCP server for Azure DevOps admin operations - pipelines, service connections, agent pools, and environments",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./build/index.js",
|