@mcp-consultant-tools/azure-devops-admin 27.0.0 → 28.0.0-beta.13
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/AzureDevOpsAdminService.d.ts +16 -0
- package/build/AzureDevOpsAdminService.d.ts.map +1 -1
- package/build/AzureDevOpsAdminService.js +117 -8
- package/build/AzureDevOpsAdminService.js.map +1 -1
- package/build/cli/commands/index.d.ts +8 -0
- package/build/cli/commands/index.d.ts.map +1 -0
- package/build/cli/commands/index.js +9 -0
- package/build/cli/commands/index.js.map +1 -0
- package/build/cli/commands/pipeline-commands.d.ts +7 -0
- package/build/cli/commands/pipeline-commands.d.ts.map +1 -0
- package/build/cli/commands/pipeline-commands.js +191 -0
- package/build/cli/commands/pipeline-commands.js.map +1 -0
- package/build/cli/output.d.ts +11 -0
- package/build/cli/output.d.ts.map +1 -0
- package/build/cli/output.js +10 -0
- package/build/cli/output.js.map +1 -0
- package/build/cli.d.ts +9 -0
- package/build/cli.d.ts.map +1 -0
- package/build/cli.js +27 -0
- package/build/cli.js.map +1 -0
- package/build/context-factory.d.ts +4 -0
- package/build/context-factory.d.ts.map +1 -0
- package/build/context-factory.js +78 -0
- package/build/context-factory.js.map +1 -0
- package/build/index.d.ts +7 -11
- package/build/index.d.ts.map +1 -1
- package/build/index.js +58 -1110
- package/build/index.js.map +1 -1
- package/build/services/admin-client.d.ts +19 -0
- package/build/services/admin-client.d.ts.map +1 -0
- package/build/services/admin-client.js +97 -0
- package/build/services/admin-client.js.map +1 -0
- package/build/services/agent-pool-service.d.ts +21 -0
- package/build/services/agent-pool-service.d.ts.map +1 -0
- package/build/services/agent-pool-service.js +118 -0
- package/build/services/agent-pool-service.js.map +1 -0
- package/build/services/artifact-feed-service.d.ts +21 -0
- package/build/services/artifact-feed-service.d.ts.map +1 -0
- package/build/services/artifact-feed-service.js +83 -0
- package/build/services/artifact-feed-service.js.map +1 -0
- package/build/services/classification-service.d.ts +23 -0
- package/build/services/classification-service.d.ts.map +1 -0
- package/build/services/classification-service.js +163 -0
- package/build/services/classification-service.js.map +1 -0
- package/build/services/environment-service.d.ts +25 -0
- package/build/services/environment-service.d.ts.map +1 -0
- package/build/services/environment-service.js +160 -0
- package/build/services/environment-service.js.map +1 -0
- package/build/services/index.d.ts +12 -0
- package/build/services/index.d.ts.map +1 -0
- package/build/services/index.js +12 -0
- package/build/services/index.js.map +1 -0
- package/build/services/pipeline-service.d.ts +37 -0
- package/build/services/pipeline-service.d.ts.map +1 -0
- package/build/services/pipeline-service.js +500 -0
- package/build/services/pipeline-service.js.map +1 -0
- package/build/services/service-connection-service.d.ts +29 -0
- package/build/services/service-connection-service.d.ts.map +1 -0
- package/build/services/service-connection-service.js +147 -0
- package/build/services/service-connection-service.js.map +1 -0
- package/build/services/variable-group-service.d.ts +22 -0
- package/build/services/variable-group-service.d.ts.map +1 -0
- package/build/services/variable-group-service.js +136 -0
- package/build/services/variable-group-service.js.map +1 -0
- package/build/tool-examples.d.ts +83 -0
- package/build/tool-examples.d.ts.map +1 -0
- package/build/tool-examples.js +106 -0
- package/build/tool-examples.js.map +1 -0
- package/build/tools/agent-pool-tools.d.ts +7 -0
- package/build/tools/agent-pool-tools.d.ts.map +1 -0
- package/build/tools/agent-pool-tools.js +133 -0
- package/build/tools/agent-pool-tools.js.map +1 -0
- package/build/tools/artifact-feed-tools.d.ts +7 -0
- package/build/tools/artifact-feed-tools.d.ts.map +1 -0
- package/build/tools/artifact-feed-tools.js +47 -0
- package/build/tools/artifact-feed-tools.js.map +1 -0
- package/build/tools/classification-tools.d.ts +7 -0
- package/build/tools/classification-tools.d.ts.map +1 -0
- package/build/tools/classification-tools.js +202 -0
- package/build/tools/classification-tools.js.map +1 -0
- package/build/tools/environment-tools.d.ts +7 -0
- package/build/tools/environment-tools.d.ts.map +1 -0
- package/build/tools/environment-tools.js +194 -0
- package/build/tools/environment-tools.js.map +1 -0
- package/build/tools/index.d.ts +13 -0
- package/build/tools/index.d.ts.map +1 -0
- package/build/tools/index.js +36 -0
- package/build/tools/index.js.map +1 -0
- package/build/tools/pipeline-tools.d.ts +7 -0
- package/build/tools/pipeline-tools.d.ts.map +1 -0
- package/build/tools/pipeline-tools.js +292 -0
- package/build/tools/pipeline-tools.js.map +1 -0
- package/build/tools/service-connection-tools.d.ts +7 -0
- package/build/tools/service-connection-tools.d.ts.map +1 -0
- package/build/tools/service-connection-tools.js +140 -0
- package/build/tools/service-connection-tools.js.map +1 -0
- package/build/tools/variable-group-tools.d.ts +7 -0
- package/build/tools/variable-group-tools.d.ts.map +1 -0
- package/build/tools/variable-group-tools.js +138 -0
- package/build/tools/variable-group-tools.js.map +1 -0
- package/build/types.d.ts +62 -0
- package/build/types.d.ts.map +1 -0
- package/build/types.js +2 -0
- package/build/types.js.map +1 -0
- package/package.json +5 -3
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
export class ClassificationService {
|
|
2
|
+
client;
|
|
3
|
+
constructor(client) {
|
|
4
|
+
this.client = client;
|
|
5
|
+
}
|
|
6
|
+
flattenClassificationNodes(node, parentPath = '') {
|
|
7
|
+
const result = [];
|
|
8
|
+
const currentPath = parentPath ? `${parentPath}\\${node.name}` : node.name;
|
|
9
|
+
result.push({
|
|
10
|
+
id: node.id,
|
|
11
|
+
identifier: node.identifier,
|
|
12
|
+
name: node.name,
|
|
13
|
+
path: currentPath,
|
|
14
|
+
structureType: node.structureType,
|
|
15
|
+
hasChildren: node.hasChildren || false,
|
|
16
|
+
attributes: node.attributes || {},
|
|
17
|
+
url: node.url
|
|
18
|
+
});
|
|
19
|
+
if (node.children && Array.isArray(node.children)) {
|
|
20
|
+
for (const child of node.children) {
|
|
21
|
+
result.push(...this.flattenClassificationNodes(child, currentPath));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return result;
|
|
25
|
+
}
|
|
26
|
+
async listClassificationNodes(project, structureType, depth = 10) {
|
|
27
|
+
this.client.validateProject(project);
|
|
28
|
+
const response = await this.client.makeRequest(`${project}/_apis/wit/classificationnodes/${structureType}?$depth=${depth}&api-version=${this.client.apiVersion}`);
|
|
29
|
+
const nodes = this.flattenClassificationNodes(response);
|
|
30
|
+
return {
|
|
31
|
+
project,
|
|
32
|
+
structureType,
|
|
33
|
+
totalCount: nodes.length,
|
|
34
|
+
nodes: nodes.map((node) => ({
|
|
35
|
+
id: node.id,
|
|
36
|
+
identifier: node.identifier,
|
|
37
|
+
name: node.name,
|
|
38
|
+
path: node.path,
|
|
39
|
+
hasChildren: node.hasChildren,
|
|
40
|
+
...(structureType === 'iterations' && node.attributes ? {
|
|
41
|
+
startDate: node.attributes.startDate,
|
|
42
|
+
finishDate: node.attributes.finishDate,
|
|
43
|
+
timeFrame: node.attributes.timeFrame
|
|
44
|
+
} : {})
|
|
45
|
+
}))
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
async getClassificationNode(project, structureType, path) {
|
|
49
|
+
this.client.validateProject(project);
|
|
50
|
+
const cleanPath = path.replace(/^\\/, '').replace(/\\/g, '/');
|
|
51
|
+
const encodedPath = encodeURIComponent(cleanPath).replace(/%2F/g, '/');
|
|
52
|
+
const response = await this.client.makeRequest(`${project}/_apis/wit/classificationnodes/${structureType}/${encodedPath}?api-version=${this.client.apiVersion}`);
|
|
53
|
+
return {
|
|
54
|
+
id: response.id,
|
|
55
|
+
identifier: response.identifier,
|
|
56
|
+
name: response.name,
|
|
57
|
+
structureType: response.structureType,
|
|
58
|
+
hasChildren: response.hasChildren || false,
|
|
59
|
+
path: response.path,
|
|
60
|
+
project,
|
|
61
|
+
...(structureType === 'iterations' && response.attributes ? {
|
|
62
|
+
startDate: response.attributes.startDate,
|
|
63
|
+
finishDate: response.attributes.finishDate,
|
|
64
|
+
timeFrame: response.attributes.timeFrame
|
|
65
|
+
} : {}),
|
|
66
|
+
url: response.url
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
async createClassificationNode(project, structureType, name, parentPath, attributes) {
|
|
70
|
+
this.client.validateProject(project);
|
|
71
|
+
const body = { name };
|
|
72
|
+
if (structureType === 'iterations' && attributes) {
|
|
73
|
+
body.attributes = {};
|
|
74
|
+
if (attributes.startDate)
|
|
75
|
+
body.attributes.startDate = this.client.formatDateForAdo(attributes.startDate);
|
|
76
|
+
if (attributes.finishDate)
|
|
77
|
+
body.attributes.finishDate = this.client.formatDateForAdo(attributes.finishDate);
|
|
78
|
+
}
|
|
79
|
+
let endpoint = `${project}/_apis/wit/classificationnodes/${structureType}`;
|
|
80
|
+
if (parentPath) {
|
|
81
|
+
const cleanPath = parentPath.replace(/^\\/, '').replace(/\\/g, '/');
|
|
82
|
+
const encodedPath = encodeURIComponent(cleanPath).replace(/%2F/g, '/');
|
|
83
|
+
endpoint = `${project}/_apis/wit/classificationnodes/${structureType}/${encodedPath}`;
|
|
84
|
+
}
|
|
85
|
+
const response = await this.client.makeRequest(`${endpoint}?api-version=${this.client.apiVersion}`, 'POST', body);
|
|
86
|
+
return {
|
|
87
|
+
id: response.id,
|
|
88
|
+
identifier: response.identifier,
|
|
89
|
+
name: response.name,
|
|
90
|
+
path: response.path,
|
|
91
|
+
structureType,
|
|
92
|
+
project,
|
|
93
|
+
...(structureType === 'iterations' && response.attributes ? {
|
|
94
|
+
startDate: response.attributes.startDate,
|
|
95
|
+
finishDate: response.attributes.finishDate
|
|
96
|
+
} : {}),
|
|
97
|
+
url: response.url
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
async addIterationToTeam(project, team, iterationId) {
|
|
101
|
+
this.client.validateProject(project);
|
|
102
|
+
const encodedTeam = encodeURIComponent(team);
|
|
103
|
+
const endpoint = `${project}/${encodedTeam}/_apis/work/teamsettings/iterations?api-version=${this.client.apiVersion}`;
|
|
104
|
+
const response = await this.client.makeRequest(endpoint, 'POST', { id: iterationId });
|
|
105
|
+
return {
|
|
106
|
+
id: response.id,
|
|
107
|
+
name: response.name,
|
|
108
|
+
path: response.path,
|
|
109
|
+
url: response.url,
|
|
110
|
+
attributes: response.attributes ? {
|
|
111
|
+
startDate: response.attributes.startDate,
|
|
112
|
+
finishDate: response.attributes.finishDate,
|
|
113
|
+
timeFrame: response.attributes.timeFrame,
|
|
114
|
+
} : undefined,
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
async updateClassificationNode(project, structureType, path, updates) {
|
|
118
|
+
this.client.validateProject(project);
|
|
119
|
+
const cleanPath = path.replace(/^\\/, '').replace(/\\/g, '/');
|
|
120
|
+
const encodedPath = encodeURIComponent(cleanPath).replace(/%2F/g, '/');
|
|
121
|
+
const body = {};
|
|
122
|
+
if (updates.name)
|
|
123
|
+
body.name = updates.name;
|
|
124
|
+
if (structureType === 'iterations') {
|
|
125
|
+
if (updates.startDate !== undefined || updates.finishDate !== undefined) {
|
|
126
|
+
body.attributes = {};
|
|
127
|
+
if (updates.startDate !== undefined)
|
|
128
|
+
body.attributes.startDate = this.client.formatDateForAdo(updates.startDate);
|
|
129
|
+
if (updates.finishDate !== undefined)
|
|
130
|
+
body.attributes.finishDate = this.client.formatDateForAdo(updates.finishDate);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
// Classification Nodes API uses regular JSON, not JSON Patch format
|
|
134
|
+
const response = await this.client.makeRequest(`${project}/_apis/wit/classificationnodes/${structureType}/${encodedPath}?api-version=${this.client.apiVersion}`, 'PATCH', body, undefined, 'application/json');
|
|
135
|
+
return {
|
|
136
|
+
id: response.id,
|
|
137
|
+
identifier: response.identifier,
|
|
138
|
+
name: response.name,
|
|
139
|
+
path: response.path,
|
|
140
|
+
structureType,
|
|
141
|
+
project,
|
|
142
|
+
...(structureType === 'iterations' && response.attributes ? {
|
|
143
|
+
startDate: response.attributes.startDate,
|
|
144
|
+
finishDate: response.attributes.finishDate
|
|
145
|
+
} : {}),
|
|
146
|
+
url: response.url
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
async deleteClassificationNode(project, structureType, path, reclassifyId) {
|
|
150
|
+
this.client.validateProject(project);
|
|
151
|
+
const cleanPath = path.replace(/^\\/, '').replace(/\\/g, '/');
|
|
152
|
+
const encodedPath = encodeURIComponent(cleanPath).replace(/%2F/g, '/');
|
|
153
|
+
await this.client.makeRequest(`${project}/_apis/wit/classificationnodes/${structureType}/${encodedPath}?$reclassifyId=${reclassifyId}&api-version=${this.client.apiVersion}`, 'DELETE');
|
|
154
|
+
return {
|
|
155
|
+
path,
|
|
156
|
+
structureType,
|
|
157
|
+
project,
|
|
158
|
+
reclassifyId,
|
|
159
|
+
deleted: true
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=classification-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classification-service.js","sourceRoot":"","sources":["../../src/services/classification-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment operations for Azure DevOps Admin.
|
|
3
|
+
*/
|
|
4
|
+
import type { AdminClient } from './admin-client.js';
|
|
5
|
+
export declare class EnvironmentService {
|
|
6
|
+
private client;
|
|
7
|
+
constructor(client: AdminClient);
|
|
8
|
+
listEnvironments(project: string): Promise<any>;
|
|
9
|
+
getEnvironment(project: string, environmentId: number): Promise<any>;
|
|
10
|
+
getEnvironmentDeployments(project: string, environmentId: number, top?: number): Promise<any>;
|
|
11
|
+
getEnvironmentChecks(project: string, environmentId: number): Promise<any>;
|
|
12
|
+
createEnvironment(project: string, name: string, description?: string): Promise<any>;
|
|
13
|
+
updateEnvironment(project: string, environmentId: number, updates: {
|
|
14
|
+
name?: string;
|
|
15
|
+
description?: string;
|
|
16
|
+
}): Promise<any>;
|
|
17
|
+
deleteEnvironment(project: string, environmentId: number): Promise<any>;
|
|
18
|
+
addEnvironmentCheck(project: string, environmentId: number, checkType: string, configuration: any): Promise<any>;
|
|
19
|
+
updateEnvironmentCheck(project: string, checkId: number, updates: {
|
|
20
|
+
settings?: any;
|
|
21
|
+
timeout?: number;
|
|
22
|
+
}): Promise<any>;
|
|
23
|
+
removeEnvironmentCheck(project: string, checkId: number): Promise<any>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=environment-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment-service.d.ts","sourceRoot":"","sources":["../../src/services/environment-service.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,qBAAa,kBAAkB;IACjB,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,WAAW;IAEjC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAsB/C,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAoBpE,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,GAAE,MAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IA4BjG,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IA0B1E,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAsBpF,iBAAiB,CACrB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAC/C,OAAO,CAAC,GAAG,CAAC;IAiBT,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAevE,mBAAmB,CACvB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,GAAG,GACjB,OAAO,CAAC,GAAG,CAAC;IA0BT,sBAAsB,CAC1B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QACP,QAAQ,CAAC,EAAE,GAAG,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GACA,OAAO,CAAC,GAAG,CAAC;IA4BT,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAc7E"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
export class EnvironmentService {
|
|
2
|
+
client;
|
|
3
|
+
constructor(client) {
|
|
4
|
+
this.client = client;
|
|
5
|
+
}
|
|
6
|
+
async listEnvironments(project) {
|
|
7
|
+
this.client.validateProject(project);
|
|
8
|
+
const response = await this.client.makeRequest(`${project}/_apis/distributedtask/environments?api-version=${this.client.apiVersion}`);
|
|
9
|
+
return {
|
|
10
|
+
project,
|
|
11
|
+
totalCount: response.value.length,
|
|
12
|
+
environments: response.value.map((env) => ({
|
|
13
|
+
id: env.id,
|
|
14
|
+
name: env.name,
|
|
15
|
+
description: env.description,
|
|
16
|
+
createdBy: env.createdBy?.displayName,
|
|
17
|
+
createdOn: env.createdOn,
|
|
18
|
+
lastModifiedBy: env.lastModifiedBy?.displayName,
|
|
19
|
+
lastModifiedOn: env.lastModifiedOn
|
|
20
|
+
}))
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
async getEnvironment(project, environmentId) {
|
|
24
|
+
this.client.validateProject(project);
|
|
25
|
+
const response = await this.client.makeRequest(`${project}/_apis/distributedtask/environments/${environmentId}?expands=resourceReferences&api-version=${this.client.apiVersion}`);
|
|
26
|
+
return {
|
|
27
|
+
id: response.id,
|
|
28
|
+
name: response.name,
|
|
29
|
+
description: response.description,
|
|
30
|
+
createdBy: response.createdBy?.displayName,
|
|
31
|
+
createdOn: response.createdOn,
|
|
32
|
+
lastModifiedBy: response.lastModifiedBy?.displayName,
|
|
33
|
+
lastModifiedOn: response.lastModifiedOn,
|
|
34
|
+
project,
|
|
35
|
+
resources: response.resources || []
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
async getEnvironmentDeployments(project, environmentId, top = 10) {
|
|
39
|
+
this.client.validateProject(project);
|
|
40
|
+
const response = await this.client.makeRequest(`${project}/_apis/distributedtask/environments/${environmentId}/environmentdeploymentrecords?top=${top}&api-version=${this.client.apiVersion}`);
|
|
41
|
+
return {
|
|
42
|
+
project,
|
|
43
|
+
environmentId,
|
|
44
|
+
totalCount: response.value.length,
|
|
45
|
+
deployments: response.value.map((dep) => ({
|
|
46
|
+
id: dep.id,
|
|
47
|
+
environmentId: dep.environmentId,
|
|
48
|
+
definition: dep.definition ? {
|
|
49
|
+
id: dep.definition.id,
|
|
50
|
+
name: dep.definition.name
|
|
51
|
+
} : null,
|
|
52
|
+
owner: dep.owner?.displayName,
|
|
53
|
+
planType: dep.planType,
|
|
54
|
+
startTime: dep.startTime,
|
|
55
|
+
finishTime: dep.finishTime,
|
|
56
|
+
result: dep.result,
|
|
57
|
+
queueTime: dep.queueTime
|
|
58
|
+
}))
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
async getEnvironmentChecks(project, environmentId) {
|
|
62
|
+
this.client.validateProject(project);
|
|
63
|
+
const response = await this.client.makeRequest(`${project}/_apis/pipelines/checks/configurations?resourceType=environment&resourceId=${environmentId}&api-version=7.1-preview.1`);
|
|
64
|
+
return {
|
|
65
|
+
project,
|
|
66
|
+
environmentId,
|
|
67
|
+
totalCount: response.value.length,
|
|
68
|
+
checks: response.value.map((check) => ({
|
|
69
|
+
id: check.id,
|
|
70
|
+
type: check.type?.name || check.type?.id,
|
|
71
|
+
settings: check.settings,
|
|
72
|
+
timeout: check.timeout,
|
|
73
|
+
retryInterval: check.retryInterval,
|
|
74
|
+
createdBy: check.createdBy?.displayName,
|
|
75
|
+
createdOn: check.createdOn,
|
|
76
|
+
modifiedBy: check.modifiedBy?.displayName,
|
|
77
|
+
modifiedOn: check.modifiedOn,
|
|
78
|
+
resource: check.resource
|
|
79
|
+
}))
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
async createEnvironment(project, name, description) {
|
|
83
|
+
this.client.validateProject(project);
|
|
84
|
+
const environment = {
|
|
85
|
+
name,
|
|
86
|
+
description: description || ''
|
|
87
|
+
};
|
|
88
|
+
const response = await this.client.makeRequest(`${project}/_apis/distributedtask/environments?api-version=${this.client.apiVersion}`, 'POST', environment);
|
|
89
|
+
return {
|
|
90
|
+
id: response.id,
|
|
91
|
+
name: response.name,
|
|
92
|
+
description: response.description,
|
|
93
|
+
project
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
async updateEnvironment(project, environmentId, updates) {
|
|
97
|
+
this.client.validateProject(project);
|
|
98
|
+
const response = await this.client.makeRequest(`${project}/_apis/distributedtask/environments/${environmentId}?api-version=${this.client.apiVersion}`, 'PATCH', updates);
|
|
99
|
+
return {
|
|
100
|
+
id: response.id,
|
|
101
|
+
name: response.name,
|
|
102
|
+
description: response.description,
|
|
103
|
+
project
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
async deleteEnvironment(project, environmentId) {
|
|
107
|
+
this.client.validateProject(project);
|
|
108
|
+
await this.client.makeRequest(`${project}/_apis/distributedtask/environments/${environmentId}?api-version=${this.client.apiVersion}`, 'DELETE');
|
|
109
|
+
return {
|
|
110
|
+
environmentId,
|
|
111
|
+
project,
|
|
112
|
+
deleted: true
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
async addEnvironmentCheck(project, environmentId, checkType, configuration) {
|
|
116
|
+
this.client.validateProject(project);
|
|
117
|
+
const check = {
|
|
118
|
+
type: { name: checkType },
|
|
119
|
+
settings: configuration,
|
|
120
|
+
resource: {
|
|
121
|
+
type: 'environment',
|
|
122
|
+
id: String(environmentId)
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
const response = await this.client.makeRequest(`${project}/_apis/pipelines/checks/configurations?api-version=7.1-preview.1`, 'POST', check);
|
|
126
|
+
return {
|
|
127
|
+
id: response.id,
|
|
128
|
+
type: response.type?.name,
|
|
129
|
+
environmentId,
|
|
130
|
+
project
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
async updateEnvironmentCheck(project, checkId, updates) {
|
|
134
|
+
this.client.validateProject(project);
|
|
135
|
+
const current = await this.client.makeRequest(`${project}/_apis/pipelines/checks/configurations/${checkId}?api-version=7.1-preview.1`);
|
|
136
|
+
const updated = {
|
|
137
|
+
...current,
|
|
138
|
+
settings: updates.settings !== undefined ? updates.settings : current.settings,
|
|
139
|
+
timeout: updates.timeout !== undefined ? updates.timeout : current.timeout
|
|
140
|
+
};
|
|
141
|
+
const response = await this.client.makeRequest(`${project}/_apis/pipelines/checks/configurations/${checkId}?api-version=7.1-preview.1`, 'PATCH', updated);
|
|
142
|
+
return {
|
|
143
|
+
id: response.id,
|
|
144
|
+
type: response.type?.name,
|
|
145
|
+
settings: response.settings,
|
|
146
|
+
timeout: response.timeout,
|
|
147
|
+
project
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
async removeEnvironmentCheck(project, checkId) {
|
|
151
|
+
this.client.validateProject(project);
|
|
152
|
+
await this.client.makeRequest(`${project}/_apis/pipelines/checks/configurations/${checkId}?api-version=7.1-preview.1`, 'DELETE');
|
|
153
|
+
return {
|
|
154
|
+
checkId,
|
|
155
|
+
project,
|
|
156
|
+
deleted: true
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=environment-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment-service.js","sourceRoot":"","sources":["../../src/services/environment-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Services barrel export
|
|
3
|
+
*/
|
|
4
|
+
export { AdminClient } from './admin-client.js';
|
|
5
|
+
export { PipelineService } from './pipeline-service.js';
|
|
6
|
+
export { ServiceConnectionService } from './service-connection-service.js';
|
|
7
|
+
export { VariableGroupService } from './variable-group-service.js';
|
|
8
|
+
export { AgentPoolService } from './agent-pool-service.js';
|
|
9
|
+
export { EnvironmentService } from './environment-service.js';
|
|
10
|
+
export { ClassificationService } from './classification-service.js';
|
|
11
|
+
export { ArtifactFeedService } from './artifact-feed-service.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Services barrel export
|
|
3
|
+
*/
|
|
4
|
+
export { AdminClient } from './admin-client.js';
|
|
5
|
+
export { PipelineService } from './pipeline-service.js';
|
|
6
|
+
export { ServiceConnectionService } from './service-connection-service.js';
|
|
7
|
+
export { VariableGroupService } from './variable-group-service.js';
|
|
8
|
+
export { AgentPoolService } from './agent-pool-service.js';
|
|
9
|
+
export { EnvironmentService } from './environment-service.js';
|
|
10
|
+
export { ClassificationService } from './classification-service.js';
|
|
11
|
+
export { ArtifactFeedService } from './artifact-feed-service.js';
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pipeline and build operations for Azure DevOps Admin.
|
|
3
|
+
* Includes pipeline CRUD, build management, and approval operations.
|
|
4
|
+
*/
|
|
5
|
+
import type { AdminClient } from './admin-client.js';
|
|
6
|
+
export declare class PipelineService {
|
|
7
|
+
private client;
|
|
8
|
+
constructor(client: AdminClient);
|
|
9
|
+
listPipelineDefinitions(project: string): Promise<any>;
|
|
10
|
+
getPipelineDefinition(project: string, definitionId: number): Promise<any>;
|
|
11
|
+
getPipelineYaml(project: string, definitionId: number): Promise<any>;
|
|
12
|
+
listPipelineRuns(project: string, definitionId: number, top?: number): Promise<any>;
|
|
13
|
+
getBuildStatus(project: string, buildId: number, detail?: string, timelineScope?: 'stages' | 'jobs' | 'all' | 'problems', maxIssues?: number): Promise<any>;
|
|
14
|
+
getBuildTimeline(project: string, buildId: number, scope?: 'stages' | 'jobs' | 'all' | 'problems', maxIssues?: number): Promise<any>;
|
|
15
|
+
private filterLogContent;
|
|
16
|
+
getBuildLogs(project: string, buildId: number, logId?: number, mode?: 'summary' | 'full' | 'errors'): Promise<any>;
|
|
17
|
+
listPendingApprovals(project: string, buildId: number): Promise<any>;
|
|
18
|
+
createPipelineDefinition(project: string, name: string, repositoryId: string, yamlPath: string, folder?: string, repositoryType?: 'TfsGit' | 'GitHub' | 'GitHubEnterprise', repositoryUrl?: string, defaultBranch?: string, serviceConnectionId?: string): Promise<any>;
|
|
19
|
+
updatePipelineDefinition(project: string, definitionId: number, updates: {
|
|
20
|
+
name?: string;
|
|
21
|
+
path?: string;
|
|
22
|
+
queueStatus?: string;
|
|
23
|
+
triggers?: any[];
|
|
24
|
+
variables?: Record<string, {
|
|
25
|
+
value: string;
|
|
26
|
+
isSecret?: boolean;
|
|
27
|
+
allowOverride?: boolean;
|
|
28
|
+
}>;
|
|
29
|
+
}): Promise<any>;
|
|
30
|
+
renamePipelineDefinition(project: string, definitionId: number, newName: string): Promise<any>;
|
|
31
|
+
queueBuild(project: string, definitionId: number, branch?: string, variables?: Record<string, string>, parameters?: Record<string, any>): Promise<any>;
|
|
32
|
+
cancelBuild(project: string, buildId: number): Promise<any>;
|
|
33
|
+
retryBuild(project: string, buildId: number): Promise<any>;
|
|
34
|
+
deletePipelineDefinition(project: string, definitionId: number): Promise<any>;
|
|
35
|
+
approveStage(project: string, approvalId: string, status: 'approved' | 'rejected', comment?: string): Promise<any>;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=pipeline-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline-service.d.ts","sourceRoot":"","sources":["../../src/services/pipeline-service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,qBAAa,eAAe;IACd,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,WAAW;IAEjC,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAiCtD,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAgD1E,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAmCpE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,GAAE,MAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAgCvF,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,MAAkB,EAC1B,aAAa,GAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,UAAuB,EAClE,SAAS,GAAE,MAAU,GACpB,OAAO,CAAC,GAAG,CAAC;IA0CT,gBAAgB,CACpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,KAAK,GAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,UAAuB,EAC1D,SAAS,GAAE,MAAU,GACpB,OAAO,CAAC,GAAG,CAAC;IAqGf,OAAO,CAAC,gBAAgB;IA2ClB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,GAAE,SAAS,GAAG,MAAM,GAAG,QAAoB,GAAG,OAAO,CAAC,GAAG,CAAC;IAwC7H,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAuDpE,wBAAwB,CAC5B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,EACf,cAAc,GAAE,QAAQ,GAAG,QAAQ,GAAG,kBAA6B,EACnE,aAAa,CAAC,EAAE,MAAM,EACtB,aAAa,CAAC,EAAE,MAAM,EACtB,mBAAmB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAAC,GAAG,CAAC;IAiET,wBAAwB,CAC5B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,aAAa,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;KAC5F,GACA,OAAO,CAAC,GAAG,CAAC;IA6BT,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI9F,UAAU,CACd,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAClC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC/B,OAAO,CAAC,GAAG,CAAC;IAqCT,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAkB3D,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAc1D,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAe7E,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAqBzH"}
|