@burdenoff/cli-sdk 2026.813.1 → 2026.825.1
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.
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
'use strict';require('graphql-request'),require('cross-fetch'),require('commander');var d=class extends Error{exitCode;hint;constructor(o,t){super(o),this.name="CliUserError",this.exitCode=t?.exitCode??1,this.hint=t?.hint;}},I=class extends d{constructor(o,t){super(o,{exitCode:2,hint:t?.hint??"Run `<product> auth login` to authenticate."}),this.name="CliAuthError";}},y=class extends Error{cause;constructor(o,t){super(o),this.name="CliInternalError",this.cause=t;}};var
|
|
1
|
+
'use strict';require('graphql-request'),require('cross-fetch'),require('commander');var d=class extends Error{exitCode;hint;constructor(o,t){super(o),this.name="CliUserError",this.exitCode=t?.exitCode??1,this.hint=t?.hint;}},I=class extends d{constructor(o,t){super(o,{exitCode:2,hint:t?.hint??"Run `<product> auth login` to authenticate."}),this.name="CliAuthError";}},y=class extends Error{cause;constructor(o,t){super(o),this.name="CliInternalError",this.cause=t;}};var w=null;function E(r){w=r;}function h(){if(!w)throw new y("vibecontrols module helpers used before setHelpersContext was called");return w}function xt(){let r=h();if(!r.auth.isAuthenticated())throw new I(`Authentication required. Run \`${r.productName} auth login\`.`)}async function a(r,o){return xt(),h().gql.workspace.request(r,o)}async function k(r,o){return h().gql.workspaceAuthOnly.request(r,o)}function i(r){let o=r instanceof Error?r.message:String(r);throw new d(o)}function s(r,o,t){h().output.formatAndOutput(r,o,t);}function c(r){h().output.printSuccess(r);}function u(r,o){return h().output.truncate(r,o)}var b=`
|
|
2
2
|
query AdaptercloudGetAdapter($id: ID!) {
|
|
3
3
|
adaAdapter(id: $id) {
|
|
4
4
|
id workspaceId name slug description kind status version vendor
|
|
5
5
|
capabilities configSchema tags createdAt updatedAt
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
|
-
`,
|
|
8
|
+
`,T=`
|
|
9
9
|
query AdaptercloudListAdapters(
|
|
10
10
|
$kind: AdaAdapterKind
|
|
11
11
|
$status: AdaAdapterStatus
|
|
@@ -18,25 +18,25 @@
|
|
|
18
18
|
pageInfo { cursor hasMore }
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
`,
|
|
21
|
+
`,O=`
|
|
22
22
|
mutation AdaptercloudCreateAdapter($input: AdaCreateAdapterInput!) {
|
|
23
23
|
adaCreateAdapter(input: $input) {
|
|
24
24
|
id workspaceId name slug description kind status version vendor
|
|
25
25
|
capabilities tags createdAt
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
-
`,
|
|
28
|
+
`,x=`
|
|
29
29
|
mutation AdaptercloudUpdateAdapter($id: ID!, $input: AdaUpdateAdapterInput!) {
|
|
30
30
|
adaUpdateAdapter(id: $id, input: $input) {
|
|
31
31
|
id name slug description kind status version vendor capabilities
|
|
32
32
|
tags updatedAt
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
`,
|
|
35
|
+
`,D=`
|
|
36
36
|
mutation AdaptercloudArchiveAdapter($id: ID!) {
|
|
37
37
|
adaArchiveAdapter(id: $id)
|
|
38
38
|
}
|
|
39
|
-
|
|
39
|
+
`,$=`
|
|
40
40
|
query AdaptercloudGetConnection($id: ID!) {
|
|
41
41
|
adaConnection(id: $id) {
|
|
42
42
|
id workspaceId adapterId name status authMethod environment region
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
createdAt updatedAt
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
|
|
47
|
+
`,P=`
|
|
48
48
|
query AdaptercloudListConnections(
|
|
49
49
|
$adapterId: ID
|
|
50
50
|
$status: AdaConnectionStatus
|
|
@@ -58,40 +58,40 @@
|
|
|
58
58
|
pageInfo { cursor hasMore }
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
`,
|
|
61
|
+
`,L=`
|
|
62
62
|
mutation AdaptercloudCreateConnection($input: AdaCreateConnectionInput!) {
|
|
63
63
|
adaCreateConnection(input: $input) {
|
|
64
64
|
id workspaceId adapterId name status authMethod environment region
|
|
65
65
|
targetRef secretRef config tags createdAt
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
`,
|
|
68
|
+
`,N=`
|
|
69
69
|
mutation AdaptercloudUpdateConnection($id: ID!, $input: AdaUpdateConnectionInput!) {
|
|
70
70
|
adaUpdateConnection(id: $id, input: $input) {
|
|
71
71
|
id adapterId name status authMethod environment region targetRef
|
|
72
72
|
secretRef config tags updatedAt
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
-
`,
|
|
75
|
+
`,_=`
|
|
76
76
|
mutation AdaptercloudDisableConnection($id: ID!) {
|
|
77
77
|
adaDisableConnection(id: $id) {
|
|
78
78
|
id name status updatedAt
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
-
`,
|
|
81
|
+
`,U=`
|
|
82
82
|
mutation AdaptercloudSetConnectionStatus($id: ID!, $status: AdaConnectionStatus!) {
|
|
83
83
|
adaSetConnectionStatus(id: $id, status: $status) {
|
|
84
84
|
id name status lastError updatedAt
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
`,
|
|
87
|
+
`,q=`
|
|
88
88
|
query AdaptercloudGetResource($id: ID!) {
|
|
89
89
|
adaResource(id: $id) {
|
|
90
90
|
id workspaceId connectionId externalId name resourceType region state
|
|
91
91
|
monthlyCost attributes providerTags tags lastSeenAt createdAt updatedAt
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
`,
|
|
94
|
+
`,F=`
|
|
95
95
|
query AdaptercloudListResources(
|
|
96
96
|
$connectionId: ID
|
|
97
97
|
$resourceType: String
|
|
@@ -111,7 +111,7 @@
|
|
|
111
111
|
pageInfo { cursor hasMore }
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
|
-
`,
|
|
114
|
+
`,M=`
|
|
115
115
|
mutation AdaptercloudRegisterResource($input: AdaRegisterResourceInput!) {
|
|
116
116
|
adaRegisterResource(input: $input) {
|
|
117
117
|
id workspaceId connectionId externalId name resourceType region state
|
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
appliesTo expression tags createdAt updatedAt
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
|
-
`,
|
|
128
|
+
`,G=`
|
|
129
129
|
query AdaptercloudListPolicies(
|
|
130
130
|
$kind: AdaPolicyKind
|
|
131
131
|
$isActive: Boolean
|
|
@@ -138,25 +138,25 @@
|
|
|
138
138
|
pageInfo { cursor hasMore }
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
|
-
`,
|
|
141
|
+
`,W=`
|
|
142
142
|
mutation AdaptercloudCreatePolicy($input: AdaCreatePolicyInput!) {
|
|
143
143
|
adaCreatePolicy(input: $input) {
|
|
144
144
|
id workspaceId name description kind severity enforcement isActive
|
|
145
145
|
appliesTo expression tags createdAt
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
|
-
`,
|
|
148
|
+
`,j=`
|
|
149
149
|
mutation AdaptercloudUpdatePolicy($id: ID!, $input: AdaUpdatePolicyInput!) {
|
|
150
150
|
adaUpdatePolicy(id: $id, input: $input) {
|
|
151
151
|
id name description kind severity enforcement isActive appliesTo
|
|
152
152
|
expression tags updatedAt
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
-
`,
|
|
155
|
+
`,Y=`
|
|
156
156
|
mutation AdaptercloudArchivePolicy($id: ID!) {
|
|
157
157
|
adaArchivePolicy(id: $id)
|
|
158
158
|
}
|
|
159
|
-
`,
|
|
159
|
+
`,J=`
|
|
160
160
|
query AdaptercloudListViolations(
|
|
161
161
|
$policyId: ID
|
|
162
162
|
$resourceId: ID
|
|
@@ -176,14 +176,14 @@
|
|
|
176
176
|
pageInfo { cursor hasMore }
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
|
-
`,
|
|
179
|
+
`,H=`
|
|
180
180
|
mutation AdaptercloudRecordViolation($input: AdaRecordViolationInput!) {
|
|
181
181
|
adaRecordViolation(input: $input) {
|
|
182
182
|
id workspaceId policyId resourceId severity status message evidence
|
|
183
183
|
detectedAt createdAt
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
|
-
`,
|
|
186
|
+
`,z=`
|
|
187
187
|
mutation AdaptercloudResolveViolation(
|
|
188
188
|
$id: ID!
|
|
189
189
|
$status: AdaViolationStatus!
|
|
@@ -194,7 +194,7 @@
|
|
|
194
194
|
resolvedAt resolvedById updatedAt
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
|
-
`,
|
|
197
|
+
`,B=`
|
|
198
198
|
query AdaptercloudGetSyncRun($id: ID!) {
|
|
199
199
|
adaSyncRun(id: $id) {
|
|
200
200
|
id workspaceId connectionId kind status discoveredCount reconciledCount
|
|
@@ -202,7 +202,7 @@
|
|
|
202
202
|
createdAt updatedAt
|
|
203
203
|
}
|
|
204
204
|
}
|
|
205
|
-
`,
|
|
205
|
+
`,K=`
|
|
206
206
|
query AdaptercloudListSyncRuns(
|
|
207
207
|
$connectionId: ID
|
|
208
208
|
$status: AdaSyncStatus
|
|
@@ -216,40 +216,40 @@
|
|
|
216
216
|
pageInfo { cursor hasMore }
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
|
-
`,
|
|
219
|
+
`,Q=`
|
|
220
220
|
mutation AdaptercloudStartSyncRun($input: AdaStartSyncRunInput!) {
|
|
221
221
|
adaStartSyncRun(input: $input) {
|
|
222
222
|
id workspaceId connectionId kind status discoveredCount reconciledCount
|
|
223
223
|
driftCount violationCount startedAt createdAt
|
|
224
224
|
}
|
|
225
225
|
}
|
|
226
|
-
`,
|
|
226
|
+
`,X=`
|
|
227
227
|
mutation AdaptercloudCompleteSyncRun($id: ID!, $input: AdaCompleteSyncRunInput) {
|
|
228
228
|
adaCompleteSyncRun(id: $id, input: $input) {
|
|
229
229
|
id connectionId kind status discoveredCount reconciledCount driftCount
|
|
230
230
|
violationCount summary finishedAt updatedAt
|
|
231
231
|
}
|
|
232
232
|
}
|
|
233
|
-
`,
|
|
233
|
+
`,Z=`
|
|
234
234
|
mutation AdaptercloudCancelSyncRun($id: ID!) {
|
|
235
235
|
adaCancelSyncRun(id: $id) {
|
|
236
236
|
id connectionId kind status finishedAt updatedAt
|
|
237
237
|
}
|
|
238
238
|
}
|
|
239
|
-
`,
|
|
239
|
+
`,tt=`
|
|
240
240
|
mutation AdaptercloudFailSyncRun($id: ID!, $error: String!) {
|
|
241
241
|
adaFailSyncRun(id: $id, error: $error) {
|
|
242
242
|
id connectionId kind status error finishedAt updatedAt
|
|
243
243
|
}
|
|
244
244
|
}
|
|
245
|
-
`,
|
|
245
|
+
`,et=`
|
|
246
246
|
query AdaptercloudCostSummary($connectionId: ID) {
|
|
247
247
|
adaCostSummary(connectionId: $connectionId) {
|
|
248
248
|
currency total
|
|
249
249
|
lines { service total }
|
|
250
250
|
}
|
|
251
251
|
}
|
|
252
|
-
`,
|
|
252
|
+
`,nt=`
|
|
253
253
|
query AdaptercloudListCostRecords(
|
|
254
254
|
$connectionId: ID
|
|
255
255
|
$resourceId: ID
|
|
@@ -260,49 +260,52 @@
|
|
|
260
260
|
periodStart periodEnd breakdown createdAt updatedAt
|
|
261
261
|
}
|
|
262
262
|
}
|
|
263
|
-
`,
|
|
263
|
+
`,ot=`
|
|
264
264
|
mutation AdaptercloudIngestCost($input: AdaIngestCostInput!) {
|
|
265
265
|
adaIngestCost(input: $input) {
|
|
266
266
|
id workspaceId connectionId resourceId service amount currency
|
|
267
267
|
periodStart periodEnd breakdown createdAt
|
|
268
268
|
}
|
|
269
269
|
}
|
|
270
|
-
`,
|
|
270
|
+
`,rt=`
|
|
271
271
|
query AdaptercloudListDriftRecords($resourceId: ID, $status: AdaDriftStatus) {
|
|
272
272
|
adaListDriftRecords(resourceId: $resourceId, status: $status) {
|
|
273
273
|
id workspaceId resourceId attributePath severity status expectedValue
|
|
274
274
|
observedValue detectedAt remediatedAt createdAt updatedAt
|
|
275
275
|
}
|
|
276
276
|
}
|
|
277
|
-
`,
|
|
277
|
+
`,it=`
|
|
278
278
|
mutation AdaptercloudRecordDrift($input: AdaRecordDriftInput!) {
|
|
279
279
|
adaRecordDrift(input: $input) {
|
|
280
280
|
id workspaceId resourceId attributePath severity status expectedValue
|
|
281
281
|
observedValue detectedAt createdAt
|
|
282
282
|
}
|
|
283
283
|
}
|
|
284
|
-
`,
|
|
284
|
+
`,st=`
|
|
285
285
|
mutation AdaptercloudRemediateDrift($id: ID!) {
|
|
286
286
|
adaRemediateDrift(id: $id) {
|
|
287
287
|
id resourceId attributePath severity status remediatedAt updatedAt
|
|
288
288
|
}
|
|
289
289
|
}
|
|
290
|
-
`,
|
|
291
|
-
query AdaptercloudListTopologyEdges($resourceId: ID, $kind: AdaEdgeKind) {
|
|
292
|
-
adaListTopologyEdges(resourceId: $resourceId, kind: $kind) {
|
|
293
|
-
|
|
294
|
-
|
|
290
|
+
`,at=`
|
|
291
|
+
query AdaptercloudListTopologyEdges($resourceId: ID, $kind: AdaEdgeKind, $pagination: PaginationInput) {
|
|
292
|
+
adaListTopologyEdges(resourceId: $resourceId, kind: $kind, pagination: $pagination) {
|
|
293
|
+
items {
|
|
294
|
+
id workspaceId fromResourceId toResourceId kind bidirectional weight
|
|
295
|
+
attributes createdAt updatedAt
|
|
296
|
+
}
|
|
297
|
+
pageInfo { hasMore }
|
|
295
298
|
}
|
|
296
299
|
}
|
|
297
|
-
`,
|
|
300
|
+
`,ct=`
|
|
298
301
|
mutation AdaptercloudCreateTopologyEdge($input: AdaCreateTopologyEdgeInput!) {
|
|
299
302
|
adaCreateTopologyEdge(input: $input) {
|
|
300
303
|
id workspaceId fromResourceId toResourceId kind bidirectional weight
|
|
301
304
|
attributes createdAt
|
|
302
305
|
}
|
|
303
306
|
}
|
|
304
|
-
`,
|
|
307
|
+
`,dt=`
|
|
305
308
|
query AdaptercloudHealth {
|
|
306
309
|
adaHealth
|
|
307
310
|
}
|
|
308
|
-
`;function g(r,o){try{return JSON.parse(o)}catch{throw new d(`--${r} must be valid JSON`)}}function m(r){let o=Number.parseInt(r,10);if(Number.isNaN(o))throw new d(`Expected an integer but got "${r}"`);return o}function A(r){let o=Number.parseFloat(r);if(Number.isNaN(o))throw new d(`Expected a number but got "${r}"`);return o}function l(r){return r.split(",").map(o=>o.trim()).filter(o=>o.length>0)}function dt(r){let o=r.command("adapters").description("AdapterCloud adapters");o.command("list").description("List adapters").option("--kind <k>","Filter by adapter kind").option("--status <s>","Filter by adapter status").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(b,{kind:t.kind?t.kind.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListAdapters.items,{headers:["ID","Name","Kind","Status","Version","Vendor"],rows:e.adaListAdapters.items.map(n=>[u(n.id,12),n.name,n.kind,n.status,n.version,n.vendor??"-"])});}catch(e){i(e);}}),o.command("get").description("Get an adapter by id").argument("<id>","Adapter ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(E,{id:t});if(!n.adaAdapter)throw new d(`Adapter ${t} not found`);s(e,n.adaAdapter);}catch(n){i(n);}}),o.command("create").description("Create an adapter").requiredOption("--name <name>","Adapter name").requiredOption("--slug <slug>","URL slug").option("--kind <k>","Adapter kind","CUSTOM").option("--status <s>","Adapter status","DRAFT").option("--version <v>","Version").option("--vendor <v>","Vendor").option("--description <s>","Description").option("--capabilities <csv>","Comma-separated capabilities").option("--config-schema <json>","Config schema JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,slug:t.slug,kind:(t.kind??"CUSTOM").toUpperCase(),status:(t.status??"DRAFT").toUpperCase()};t.version&&(e.version=t.version),t.vendor&&(e.vendor=t.vendor),t.description&&(e.description=t.description),t.capabilities&&(e.capabilities=l(t.capabilities)),t.configSchema&&(e.configSchema=g("config-schema",t.configSchema)),t.tags&&(e.tags=l(t.tags));let n=await a(T,{input:e});c(`Adapter created: ${n.adaCreateAdapter.name}`),s(t,n.adaCreateAdapter);}catch(e){i(e);}}),o.command("update").description("Update an adapter").argument("<id>","Adapter ID").option("--name <name>","Adapter name").option("--kind <k>","Adapter kind").option("--status <s>","Adapter status").option("--version <v>","Version").option("--vendor <v>","Vendor").option("--description <s>","Description").option("--capabilities <csv>","Comma-separated capabilities").option("--config-schema <json>","Config schema JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.kind&&(n.kind=e.kind.toUpperCase()),e.status&&(n.status=e.status.toUpperCase()),e.version&&(n.version=e.version),e.vendor!==void 0&&(n.vendor=e.vendor),e.description!==void 0&&(n.description=e.description),e.capabilities&&(n.capabilities=l(e.capabilities)),e.configSchema&&(n.configSchema=g("config-schema",e.configSchema)),e.tags&&(n.tags=l(e.tags)),!Object.keys(n).length)throw new d("No updates specified");let C=await a(O,{id:t,input:n});c("Adapter updated"),s(e,C.adaUpdateAdapter);}catch(n){i(n);}}),o.command("archive").description("Archive an adapter").argument("<id>","Adapter ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(x,{id:t});c(`Adapter archived: ${n.adaArchiveAdapter}`),s(e,{archived:n.adaArchiveAdapter});}catch(n){i(n);}});}function ut(r){let o=r.command("connections").description("AdapterCloud connections");o.command("list").description("List connections").option("--adapter <id>","Filter by adapter ID").option("--status <s>","Filter by connection status").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a($,{adapterId:t.adapter,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListConnections.items,{headers:["ID","Name","Status","Auth","Env","Region","Resources"],rows:e.adaListConnections.items.map(n=>[u(n.id,12),n.name,n.status,n.authMethod,n.environment??"-",n.region??"-",String(n.resourceCount)])});}catch(e){i(e);}}),o.command("get").description("Get a connection by id").argument("<id>","Connection ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(D,{id:t});if(!n.adaConnection)throw new d(`Connection ${t} not found`);s(e,n.adaConnection);}catch(n){i(n);}}),o.command("create").description("Create a connection").requiredOption("--adapter <id>","Adapter ID").requiredOption("--name <name>","Connection name").option("--auth-method <m>","Auth method","NONE").option("--environment <e>","Environment").option("--region <r>","Region").option("--target-ref <t>","Target reference").option("--secret-ref <s>","Secret reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={adapterId:t.adapter,name:t.name,authMethod:(t.authMethod??"NONE").toUpperCase()};t.environment&&(e.environment=t.environment),t.region&&(e.region=t.region),t.targetRef&&(e.targetRef=t.targetRef),t.secretRef&&(e.secretRef=t.secretRef),t.config&&(e.config=g("config",t.config)),t.tags&&(e.tags=l(t.tags));let n=await a(P,{input:e});c(`Connection created: ${n.adaCreateConnection.name}`),s(t,n.adaCreateConnection);}catch(e){i(e);}}),o.command("update").description("Update a connection").argument("<id>","Connection ID").option("--name <name>","Connection name").option("--auth-method <m>","Auth method").option("--environment <e>","Environment").option("--region <r>","Region").option("--target-ref <t>","Target reference").option("--secret-ref <s>","Secret reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.authMethod&&(n.authMethod=e.authMethod.toUpperCase()),e.environment!==void 0&&(n.environment=e.environment),e.region!==void 0&&(n.region=e.region),e.targetRef!==void 0&&(n.targetRef=e.targetRef),e.secretRef!==void 0&&(n.secretRef=e.secretRef),e.config&&(n.config=g("config",e.config)),e.tags&&(n.tags=l(e.tags)),!Object.keys(n).length)throw new d("No updates specified");let C=await a(L,{id:t,input:n});c("Connection updated"),s(e,C.adaUpdateConnection);}catch(n){i(n);}}),o.command("disable").description("Disable a connection").argument("<id>","Connection ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(N,{id:t});c(`Connection disabled: ${n.adaDisableConnection.status}`),s(e,n.adaDisableConnection);}catch(n){i(n);}}),o.command("set-status").description("Transition a connection status").argument("<id>","Connection ID").requiredOption("--status <s>","CONNECTED|DEGRADED|DISABLED|ERROR|PENDING").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(_,{id:t,status:e.status.toUpperCase()});c(`Connection status set to ${n.adaSetConnectionStatus.status}`),s(e,n.adaSetConnectionStatus);}catch(n){i(n);}});}function pt(r){let o=r.command("resources").description("AdapterCloud resources");o.command("list").description("List resources").option("--connection <id>","Filter by connection ID").option("--resource-type <t>","Filter by resource type").option("--state <s>","Filter by resource state").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(q,{connectionId:t.connection,resourceType:t.resourceType,state:t.state?t.state.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListResources.items,{headers:["ID","Name","Type","Region","State","Cost/mo"],rows:e.adaListResources.items.map(n=>[u(n.id,12),n.name,n.resourceType,n.region??"-",n.state,String(n.monthlyCost)])});}catch(e){i(e);}}),o.command("get").description("Get a resource by id").argument("<id>","Resource ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(U,{id:t});if(!n.adaResource)throw new d(`Resource ${t} not found`);s(e,n.adaResource);}catch(n){i(n);}}),o.command("register").description("Register (upsert) a discovered resource").requiredOption("--connection <id>","Connection ID").requiredOption("--external-id <id>","External (provider) ID").requiredOption("--name <name>","Resource name").requiredOption("--resource-type <t>","Resource type").option("--region <r>","Region").option("--monthly-cost <n>","Monthly cost",A).option("--attributes <json>","Attributes JSON").option("--provider-tags <json>","Provider tags JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={connectionId:t.connection,externalId:t.externalId,name:t.name,resourceType:t.resourceType};t.region&&(e.region=t.region),t.monthlyCost!==void 0&&(e.monthlyCost=t.monthlyCost),t.attributes&&(e.attributes=g("attributes",t.attributes)),t.providerTags&&(e.providerTags=g("provider-tags",t.providerTags)),t.tags&&(e.tags=l(t.tags));let n=await a(F,{input:e});c(`Resource registered: ${n.adaRegisterResource.name}`),s(t,n.adaRegisterResource);}catch(e){i(e);}});}function mt(r){let o=r.command("policies").description("AdapterCloud policies & violations");o.command("list").description("List policies").option("--kind <k>","Filter by policy kind").option("--active <bool>","true|false",t=>t==="true").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(M,{kind:t.kind?t.kind.toUpperCase():void 0,isActive:t.active,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListPolicies.items,{headers:["ID","Name","Kind","Severity","Enforcement","Active"],rows:e.adaListPolicies.items.map(n=>[u(n.id,12),n.name,n.kind,n.severity,n.enforcement,n.isActive?"yes":"no"])});}catch(e){i(e);}}),o.command("get").description("Get a policy by id").argument("<id>","Policy ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(V,{id:t});if(!n.adaPolicy)throw new d(`Policy ${t} not found`);s(e,n.adaPolicy);}catch(n){i(n);}}),o.command("create").description("Create a policy").requiredOption("--name <name>","Policy name").requiredOption("--expression <json>","Policy expression JSON").option("--kind <k>","Policy kind","GUARDRAIL").option("--severity <s>","Severity","MEDIUM").option("--enforcement <e>","Enforcement","WARN").option("--active <bool>","true|false",t=>t==="true").option("--description <s>","Description").option("--applies-to <csv>","Comma-separated resource types/selectors").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,expression:g("expression",t.expression),kind:(t.kind??"GUARDRAIL").toUpperCase(),severity:(t.severity??"MEDIUM").toUpperCase(),enforcement:(t.enforcement??"WARN").toUpperCase()};t.active!==void 0&&(e.isActive=t.active),t.description&&(e.description=t.description),t.appliesTo&&(e.appliesTo=l(t.appliesTo)),t.tags&&(e.tags=l(t.tags));let n=await a(G,{input:e});c(`Policy created: ${n.adaCreatePolicy.name}`),s(t,n.adaCreatePolicy);}catch(e){i(e);}}),o.command("update").description("Update a policy").argument("<id>","Policy ID").option("--name <name>","Policy name").option("--kind <k>","Policy kind").option("--severity <s>","Severity").option("--enforcement <e>","Enforcement").option("--active <bool>","true|false",t=>t==="true").option("--description <s>","Description").option("--expression <json>","Policy expression JSON").option("--applies-to <csv>","Comma-separated resource types/selectors").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.kind&&(n.kind=e.kind.toUpperCase()),e.severity&&(n.severity=e.severity.toUpperCase()),e.enforcement&&(n.enforcement=e.enforcement.toUpperCase()),e.active!==void 0&&(n.isActive=e.active),e.description!==void 0&&(n.description=e.description),e.expression&&(n.expression=g("expression",e.expression)),e.appliesTo&&(n.appliesTo=l(e.appliesTo)),e.tags&&(n.tags=l(e.tags)),!Object.keys(n).length)throw new d("No updates specified");let C=await a(W,{id:t,input:n});c("Policy updated"),s(e,C.adaUpdatePolicy);}catch(n){i(n);}}),o.command("archive").description("Archive a policy").argument("<id>","Policy ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(j,{id:t});c(`Policy archived: ${n.adaArchivePolicy}`),s(e,{archived:n.adaArchivePolicy});}catch(n){i(n);}}),o.command("list-violations").description("List policy violations").option("--policy <id>","Filter by policy ID").option("--resource <id>","Filter by resource ID").option("--status <s>","Filter by violation status").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(Y,{policyId:t.policy,resourceId:t.resource,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListViolations.items,{headers:["ID","Policy","Resource","Severity","Status","Message"],rows:e.adaListViolations.items.map(n=>[u(n.id,12),u(n.policyId,12),u(n.resourceId,12),n.severity,n.status,u(n.message,30)])});}catch(e){i(e);}}),o.command("record-violation").description("Record a policy violation").requiredOption("--policy <id>","Policy ID").requiredOption("--resource <id>","Resource ID").requiredOption("--message <m>","Violation message").option("--severity <s>","Severity").option("--evidence <json>","Evidence JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={policyId:t.policy,resourceId:t.resource,message:t.message};t.severity&&(e.severity=t.severity.toUpperCase()),t.evidence&&(e.evidence=g("evidence",t.evidence));let n=await a(J,{input:e});c("Violation recorded"),s(t,n.adaRecordViolation);}catch(e){i(e);}}),o.command("resolve-violation").description("Resolve or waive a violation").argument("<id>","Violation ID").requiredOption("--status <s>","ACKNOWLEDGED|OPEN|RESOLVED|WAIVED").option("--waiver-reason <r>","Waiver reason (required when waiving)").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(H,{id:t,status:e.status.toUpperCase(),waiverReason:e.waiverReason});c(`Violation ${n.adaResolveViolation.status}`),s(e,n.adaResolveViolation);}catch(n){i(n);}});}function gt(r){let o=r.command("sync-runs").description("AdapterCloud sync runs");o.command("list").description("List sync runs").option("--connection <id>","Filter by connection ID").option("--status <s>","Filter by sync status").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(B,{connectionId:t.connection,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListSyncRuns.items,{headers:["ID","Connection","Kind","Status","Discovered","Drift","Violations"],rows:e.adaListSyncRuns.items.map(n=>[u(n.id,12),u(n.connectionId,12),n.kind,n.status,String(n.discoveredCount),String(n.driftCount),String(n.violationCount)])});}catch(e){i(e);}}),o.command("get").description("Get a sync run by id").argument("<id>","Sync run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(z,{id:t});if(!n.adaSyncRun)throw new d(`Sync run ${t} not found`);s(e,n.adaSyncRun);}catch(n){i(n);}}),o.command("start").description("Start a sync run").requiredOption("--connection <id>","Connection ID").option("--kind <k>","Sync kind (DISCOVERY|RECONCILE|COST_INGEST|FULL)","DISCOVERY").option("-f, --format <format>","Output format").action(async t=>{try{let e={connectionId:t.connection,kind:(t.kind??"DISCOVERY").toUpperCase()},n=await a(K,{input:e});c(`Sync run started: ${n.adaStartSyncRun.id}`),s(t,n.adaStartSyncRun);}catch(e){i(e);}}),o.command("complete").description("Mark a sync run complete").argument("<id>","Sync run ID").option("--discovered-count <n>","Discovered count",m).option("--reconciled-count <n>","Reconciled count",m).option("--drift-count <n>","Drift count",m).option("--violation-count <n>","Violation count",m).option("--summary <json>","Summary JSON").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};e.discoveredCount!==void 0&&(n.discoveredCount=e.discoveredCount),e.reconciledCount!==void 0&&(n.reconciledCount=e.reconciledCount),e.driftCount!==void 0&&(n.driftCount=e.driftCount),e.violationCount!==void 0&&(n.violationCount=e.violationCount),e.summary&&(n.summary=g("summary",e.summary));let C=await a(Q,{id:t,input:Object.keys(n).length?n:void 0});c(`Sync run completed: ${C.adaCompleteSyncRun.status}`),s(e,C.adaCompleteSyncRun);}catch(n){i(n);}}),o.command("cancel").description("Cancel a sync run").argument("<id>","Sync run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(X,{id:t});c(`Sync run cancelled: ${n.adaCancelSyncRun.status}`),s(e,n.adaCancelSyncRun);}catch(n){i(n);}}),o.command("fail").description("Mark a sync run failed").argument("<id>","Sync run ID").requiredOption("--error <e>","Error message").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(Z,{id:t,error:e.error});c(`Sync run failed: ${n.adaFailSyncRun.status}`),s(e,n.adaFailSyncRun);}catch(n){i(n);}});}function lt(r){let o=r.command("cost").description("AdapterCloud cost records & summaries");o.command("summary").description("Aggregate spend grouped by service").option("--connection <id>","Scope summary to a connection").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(tt,{connectionId:t.connection});s(t,e.adaCostSummary,{headers:["Service","Total"],rows:e.adaCostSummary.lines.map(n=>[n.service,String(n.total)])});}catch(e){i(e);}}),o.command("list").description("List cost records").option("--connection <id>","Filter by connection ID").option("--resource <id>","Filter by resource ID").option("--service <s>","Filter by service").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(et,{connectionId:t.connection,resourceId:t.resource,service:t.service});s(t,e.adaListCostRecords,{headers:["ID","Service","Amount","Currency","Period start","Period end"],rows:e.adaListCostRecords.map(n=>[u(n.id,12),n.service,String(n.amount),n.currency,n.periodStart,n.periodEnd])});}catch(e){i(e);}}),o.command("ingest").description("Ingest a cost record").requiredOption("--service <s>","Service name").requiredOption("--amount <n>","Amount",A).requiredOption("--period-start <iso>","Period start (ISO date)").requiredOption("--period-end <iso>","Period end (ISO date)").option("--currency <c>","Currency code").option("--connection <id>","Connection ID").option("--resource <id>","Resource ID").option("--breakdown <json>","Breakdown JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={service:t.service,amount:t.amount,periodStart:t.periodStart,periodEnd:t.periodEnd};t.currency&&(e.currency=t.currency),t.connection&&(e.connectionId=t.connection),t.resource&&(e.resourceId=t.resource),t.breakdown&&(e.breakdown=g("breakdown",t.breakdown));let n=await a(nt,{input:e});c(`Cost ingested: ${n.adaIngestCost.service} ${n.adaIngestCost.amount}`),s(t,n.adaIngestCost);}catch(e){i(e);}});}function ft(r){let o=r.command("drift").description("AdapterCloud drift records");o.command("list").description("List drift records").option("--resource <id>","Filter by resource ID").option("--status <s>","Filter by drift status").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(ot,{resourceId:t.resource,status:t.status?t.status.toUpperCase():void 0});s(t,e.adaListDriftRecords,{headers:["ID","Resource","Attribute","Severity","Status"],rows:e.adaListDriftRecords.map(n=>[u(n.id,12),u(n.resourceId,12),n.attributePath,n.severity,n.status])});}catch(e){i(e);}}),o.command("record").description("Record a drift observation").requiredOption("--resource <id>","Resource ID").requiredOption("--attribute-path <p>","Attribute path").option("--severity <s>","Severity").option("--expected <json>","Expected value JSON").option("--observed <json>","Observed value JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={resourceId:t.resource,attributePath:t.attributePath};t.severity&&(e.severity=t.severity.toUpperCase()),t.expected&&(e.expectedValue=g("expected",t.expected)),t.observed&&(e.observedValue=g("observed",t.observed));let n=await a(rt,{input:e});c("Drift recorded"),s(t,n.adaRecordDrift);}catch(e){i(e);}}),o.command("remediate").description("Mark a drift record remediated").argument("<id>","Drift record ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(it,{id:t});c(`Drift remediated: ${n.adaRemediateDrift.status}`),s(e,n.adaRemediateDrift);}catch(n){i(n);}});}function Ct(r){let o=r.command("topology").description("AdapterCloud topology edges");o.command("list").description("List topology edges").option("--resource <id>","Filter by resource ID (either endpoint)").option("--kind <k>","Filter by edge kind").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(st,{resourceId:t.resource,kind:t.kind?t.kind.toUpperCase():void 0});s(t,e.adaListTopologyEdges,{headers:["ID","From","To","Kind","Bidirectional","Weight"],rows:e.adaListTopologyEdges.map(n=>[u(n.id,12),u(n.fromResourceId,12),u(n.toResourceId,12),n.kind,n.bidirectional?"yes":"no",String(n.weight)])});}catch(e){i(e);}}),o.command("create").description("Create a topology edge").requiredOption("--from <id>","From resource ID").requiredOption("--to <id>","To resource ID").option("--kind <k>","Edge kind","DEPENDS_ON").option("--bidirectional","Mark edge bidirectional").option("--weight <n>","Edge weight",m).option("--attributes <json>","Attributes JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={fromResourceId:t.from,toResourceId:t.to,kind:(t.kind??"DEPENDS_ON").toUpperCase()};t.bidirectional&&(e.bidirectional=!0),t.weight!==void 0&&(e.weight=t.weight),t.attributes&&(e.attributes=g("attributes",t.attributes));let n=await a(at,{input:e});c(`Topology edge created: ${n.adaCreateTopologyEdge.id}`),s(t,n.adaCreateTopologyEdge);}catch(e){i(e);}});}function yt(r){r.command("health").description("AdapterCloud service health check (public)").option("-f, --format <format>","Output format").action(async o=>{try{let t=await w(ct);c(t.adaHealth),s(o,{health:t.adaHealth});}catch(t){i(t);}});}var xt={id:"adaptercloud",version:"1.0.0",displayName:"AdapterCloud",dependsOn:["auth","workspaces"],register(r,o){S(o);let t=r.command("adaptercloud").description("AdapterCloud multi-cloud adapter control plane");dt(t),ut(t),pt(t),mt(t),gt(t),lt(t),ft(t),Ct(t),yt(t);}},Rn=xt;module.exports=Rn;
|
|
311
|
+
`;function g(r,o){try{return JSON.parse(o)}catch{throw new d(`--${r} must be valid JSON`)}}function m(r){let o=Number.parseInt(r,10);if(Number.isNaN(o))throw new d(`Expected an integer but got "${r}"`);return o}function v(r){let o=Number.parseFloat(r);if(Number.isNaN(o))throw new d(`Expected a number but got "${r}"`);return o}function f(r){return r.split(",").map(o=>o.trim()).filter(o=>o.length>0)}function ut(r){let o=r.command("adapters").description("AdapterCloud adapters");o.command("list").description("List adapters").option("--kind <k>","Filter by adapter kind").option("--status <s>","Filter by adapter status").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(T,{kind:t.kind?t.kind.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListAdapters.items,{headers:["ID","Name","Kind","Status","Version","Vendor"],rows:e.adaListAdapters.items.map(n=>[u(n.id,12),n.name,n.kind,n.status,n.version,n.vendor??"-"])});}catch(e){i(e);}}),o.command("get").description("Get an adapter by id").argument("<id>","Adapter ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(b,{id:t});if(!n.adaAdapter)throw new d(`Adapter ${t} not found`);s(e,n.adaAdapter);}catch(n){i(n);}}),o.command("create").description("Create an adapter").requiredOption("--name <name>","Adapter name").requiredOption("--slug <slug>","URL slug").option("--kind <k>","Adapter kind","CUSTOM").option("--status <s>","Adapter status","DRAFT").option("--version <v>","Version").option("--vendor <v>","Vendor").option("--description <s>","Description").option("--capabilities <csv>","Comma-separated capabilities").option("--config-schema <json>","Config schema JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,slug:t.slug,kind:(t.kind??"CUSTOM").toUpperCase(),status:(t.status??"DRAFT").toUpperCase()};t.version&&(e.version=t.version),t.vendor&&(e.vendor=t.vendor),t.description&&(e.description=t.description),t.capabilities&&(e.capabilities=f(t.capabilities)),t.configSchema&&(e.configSchema=g("config-schema",t.configSchema)),t.tags&&(e.tags=f(t.tags));let n=await a(O,{input:e});c(`Adapter created: ${n.adaCreateAdapter.name}`),s(t,n.adaCreateAdapter);}catch(e){i(e);}}),o.command("update").description("Update an adapter").argument("<id>","Adapter ID").option("--name <name>","Adapter name").option("--kind <k>","Adapter kind").option("--status <s>","Adapter status").option("--version <v>","Version").option("--vendor <v>","Vendor").option("--description <s>","Description").option("--capabilities <csv>","Comma-separated capabilities").option("--config-schema <json>","Config schema JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.kind&&(n.kind=e.kind.toUpperCase()),e.status&&(n.status=e.status.toUpperCase()),e.version&&(n.version=e.version),e.vendor!==void 0&&(n.vendor=e.vendor),e.description!==void 0&&(n.description=e.description),e.capabilities&&(n.capabilities=f(e.capabilities)),e.configSchema&&(n.configSchema=g("config-schema",e.configSchema)),e.tags&&(n.tags=f(e.tags)),!Object.keys(n).length)throw new d("No updates specified");let l=await a(x,{id:t,input:n});c("Adapter updated"),s(e,l.adaUpdateAdapter);}catch(n){i(n);}}),o.command("archive").description("Archive an adapter").argument("<id>","Adapter ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(D,{id:t});c(`Adapter archived: ${n.adaArchiveAdapter}`),s(e,{archived:n.adaArchiveAdapter});}catch(n){i(n);}});}function pt(r){let o=r.command("connections").description("AdapterCloud connections");o.command("list").description("List connections").option("--adapter <id>","Filter by adapter ID").option("--status <s>","Filter by connection status").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(P,{adapterId:t.adapter,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListConnections.items,{headers:["ID","Name","Status","Auth","Env","Region","Resources"],rows:e.adaListConnections.items.map(n=>[u(n.id,12),n.name,n.status,n.authMethod,n.environment??"-",n.region??"-",String(n.resourceCount)])});}catch(e){i(e);}}),o.command("get").description("Get a connection by id").argument("<id>","Connection ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a($,{id:t});if(!n.adaConnection)throw new d(`Connection ${t} not found`);s(e,n.adaConnection);}catch(n){i(n);}}),o.command("create").description("Create a connection").requiredOption("--adapter <id>","Adapter ID").requiredOption("--name <name>","Connection name").option("--auth-method <m>","Auth method","NONE").option("--environment <e>","Environment").option("--region <r>","Region").option("--target-ref <t>","Target reference").option("--secret-ref <s>","Secret reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={adapterId:t.adapter,name:t.name,authMethod:(t.authMethod??"NONE").toUpperCase()};t.environment&&(e.environment=t.environment),t.region&&(e.region=t.region),t.targetRef&&(e.targetRef=t.targetRef),t.secretRef&&(e.secretRef=t.secretRef),t.config&&(e.config=g("config",t.config)),t.tags&&(e.tags=f(t.tags));let n=await a(L,{input:e});c(`Connection created: ${n.adaCreateConnection.name}`),s(t,n.adaCreateConnection);}catch(e){i(e);}}),o.command("update").description("Update a connection").argument("<id>","Connection ID").option("--name <name>","Connection name").option("--auth-method <m>","Auth method").option("--environment <e>","Environment").option("--region <r>","Region").option("--target-ref <t>","Target reference").option("--secret-ref <s>","Secret reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.authMethod&&(n.authMethod=e.authMethod.toUpperCase()),e.environment!==void 0&&(n.environment=e.environment),e.region!==void 0&&(n.region=e.region),e.targetRef!==void 0&&(n.targetRef=e.targetRef),e.secretRef!==void 0&&(n.secretRef=e.secretRef),e.config&&(n.config=g("config",e.config)),e.tags&&(n.tags=f(e.tags)),!Object.keys(n).length)throw new d("No updates specified");let l=await a(N,{id:t,input:n});c("Connection updated"),s(e,l.adaUpdateConnection);}catch(n){i(n);}}),o.command("disable").description("Disable a connection").argument("<id>","Connection ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(_,{id:t});c(`Connection disabled: ${n.adaDisableConnection.status}`),s(e,n.adaDisableConnection);}catch(n){i(n);}}),o.command("set-status").description("Transition a connection status").argument("<id>","Connection ID").requiredOption("--status <s>","CONNECTED|DEGRADED|DISABLED|ERROR|PENDING").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(U,{id:t,status:e.status.toUpperCase()});c(`Connection status set to ${n.adaSetConnectionStatus.status}`),s(e,n.adaSetConnectionStatus);}catch(n){i(n);}});}function mt(r){let o=r.command("resources").description("AdapterCloud resources");o.command("list").description("List resources").option("--connection <id>","Filter by connection ID").option("--resource-type <t>","Filter by resource type").option("--state <s>","Filter by resource state").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(F,{connectionId:t.connection,resourceType:t.resourceType,state:t.state?t.state.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListResources.items,{headers:["ID","Name","Type","Region","State","Cost/mo"],rows:e.adaListResources.items.map(n=>[u(n.id,12),n.name,n.resourceType,n.region??"-",n.state,String(n.monthlyCost)])});}catch(e){i(e);}}),o.command("get").description("Get a resource by id").argument("<id>","Resource ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(q,{id:t});if(!n.adaResource)throw new d(`Resource ${t} not found`);s(e,n.adaResource);}catch(n){i(n);}}),o.command("register").description("Register (upsert) a discovered resource").requiredOption("--connection <id>","Connection ID").requiredOption("--external-id <id>","External (provider) ID").requiredOption("--name <name>","Resource name").requiredOption("--resource-type <t>","Resource type").option("--region <r>","Region").option("--monthly-cost <n>","Monthly cost",v).option("--attributes <json>","Attributes JSON").option("--provider-tags <json>","Provider tags JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={connectionId:t.connection,externalId:t.externalId,name:t.name,resourceType:t.resourceType};t.region&&(e.region=t.region),t.monthlyCost!==void 0&&(e.monthlyCost=t.monthlyCost),t.attributes&&(e.attributes=g("attributes",t.attributes)),t.providerTags&&(e.providerTags=g("provider-tags",t.providerTags)),t.tags&&(e.tags=f(t.tags));let n=await a(M,{input:e});c(`Resource registered: ${n.adaRegisterResource.name}`),s(t,n.adaRegisterResource);}catch(e){i(e);}});}function gt(r){let o=r.command("policies").description("AdapterCloud policies & violations");o.command("list").description("List policies").option("--kind <k>","Filter by policy kind").option("--active <bool>","true|false",t=>t==="true").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(G,{kind:t.kind?t.kind.toUpperCase():void 0,isActive:t.active,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListPolicies.items,{headers:["ID","Name","Kind","Severity","Enforcement","Active"],rows:e.adaListPolicies.items.map(n=>[u(n.id,12),n.name,n.kind,n.severity,n.enforcement,n.isActive?"yes":"no"])});}catch(e){i(e);}}),o.command("get").description("Get a policy by id").argument("<id>","Policy ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(V,{id:t});if(!n.adaPolicy)throw new d(`Policy ${t} not found`);s(e,n.adaPolicy);}catch(n){i(n);}}),o.command("create").description("Create a policy").requiredOption("--name <name>","Policy name").requiredOption("--expression <json>","Policy expression JSON").option("--kind <k>","Policy kind","GUARDRAIL").option("--severity <s>","Severity","MEDIUM").option("--enforcement <e>","Enforcement","WARN").option("--active <bool>","true|false",t=>t==="true").option("--description <s>","Description").option("--applies-to <csv>","Comma-separated resource types/selectors").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,expression:g("expression",t.expression),kind:(t.kind??"GUARDRAIL").toUpperCase(),severity:(t.severity??"MEDIUM").toUpperCase(),enforcement:(t.enforcement??"WARN").toUpperCase()};t.active!==void 0&&(e.isActive=t.active),t.description&&(e.description=t.description),t.appliesTo&&(e.appliesTo=f(t.appliesTo)),t.tags&&(e.tags=f(t.tags));let n=await a(W,{input:e});c(`Policy created: ${n.adaCreatePolicy.name}`),s(t,n.adaCreatePolicy);}catch(e){i(e);}}),o.command("update").description("Update a policy").argument("<id>","Policy ID").option("--name <name>","Policy name").option("--kind <k>","Policy kind").option("--severity <s>","Severity").option("--enforcement <e>","Enforcement").option("--active <bool>","true|false",t=>t==="true").option("--description <s>","Description").option("--expression <json>","Policy expression JSON").option("--applies-to <csv>","Comma-separated resource types/selectors").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.kind&&(n.kind=e.kind.toUpperCase()),e.severity&&(n.severity=e.severity.toUpperCase()),e.enforcement&&(n.enforcement=e.enforcement.toUpperCase()),e.active!==void 0&&(n.isActive=e.active),e.description!==void 0&&(n.description=e.description),e.expression&&(n.expression=g("expression",e.expression)),e.appliesTo&&(n.appliesTo=f(e.appliesTo)),e.tags&&(n.tags=f(e.tags)),!Object.keys(n).length)throw new d("No updates specified");let l=await a(j,{id:t,input:n});c("Policy updated"),s(e,l.adaUpdatePolicy);}catch(n){i(n);}}),o.command("archive").description("Archive a policy").argument("<id>","Policy ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(Y,{id:t});c(`Policy archived: ${n.adaArchivePolicy}`),s(e,{archived:n.adaArchivePolicy});}catch(n){i(n);}}),o.command("list-violations").description("List policy violations").option("--policy <id>","Filter by policy ID").option("--resource <id>","Filter by resource ID").option("--status <s>","Filter by violation status").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(J,{policyId:t.policy,resourceId:t.resource,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListViolations.items,{headers:["ID","Policy","Resource","Severity","Status","Message"],rows:e.adaListViolations.items.map(n=>[u(n.id,12),u(n.policyId,12),u(n.resourceId,12),n.severity,n.status,u(n.message,30)])});}catch(e){i(e);}}),o.command("record-violation").description("Record a policy violation").requiredOption("--policy <id>","Policy ID").requiredOption("--resource <id>","Resource ID").requiredOption("--message <m>","Violation message").option("--severity <s>","Severity").option("--evidence <json>","Evidence JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={policyId:t.policy,resourceId:t.resource,message:t.message};t.severity&&(e.severity=t.severity.toUpperCase()),t.evidence&&(e.evidence=g("evidence",t.evidence));let n=await a(H,{input:e});c("Violation recorded"),s(t,n.adaRecordViolation);}catch(e){i(e);}}),o.command("resolve-violation").description("Resolve or waive a violation").argument("<id>","Violation ID").requiredOption("--status <s>","ACKNOWLEDGED|OPEN|RESOLVED|WAIVED").option("--waiver-reason <r>","Waiver reason (required when waiving)").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(z,{id:t,status:e.status.toUpperCase(),waiverReason:e.waiverReason});c(`Violation ${n.adaResolveViolation.status}`),s(e,n.adaResolveViolation);}catch(n){i(n);}});}function lt(r){let o=r.command("sync-runs").description("AdapterCloud sync runs");o.command("list").description("List sync runs").option("--connection <id>","Filter by connection ID").option("--status <s>","Filter by sync status").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(K,{connectionId:t.connection,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});s(t,e.adaListSyncRuns.items,{headers:["ID","Connection","Kind","Status","Discovered","Drift","Violations"],rows:e.adaListSyncRuns.items.map(n=>[u(n.id,12),u(n.connectionId,12),n.kind,n.status,String(n.discoveredCount),String(n.driftCount),String(n.violationCount)])});}catch(e){i(e);}}),o.command("get").description("Get a sync run by id").argument("<id>","Sync run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(B,{id:t});if(!n.adaSyncRun)throw new d(`Sync run ${t} not found`);s(e,n.adaSyncRun);}catch(n){i(n);}}),o.command("start").description("Start a sync run").requiredOption("--connection <id>","Connection ID").option("--kind <k>","Sync kind (DISCOVERY|RECONCILE|COST_INGEST|FULL)","DISCOVERY").option("-f, --format <format>","Output format").action(async t=>{try{let e={connectionId:t.connection,kind:(t.kind??"DISCOVERY").toUpperCase()},n=await a(Q,{input:e});c(`Sync run started: ${n.adaStartSyncRun.id}`),s(t,n.adaStartSyncRun);}catch(e){i(e);}}),o.command("complete").description("Mark a sync run complete").argument("<id>","Sync run ID").option("--discovered-count <n>","Discovered count",m).option("--reconciled-count <n>","Reconciled count",m).option("--drift-count <n>","Drift count",m).option("--violation-count <n>","Violation count",m).option("--summary <json>","Summary JSON").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};e.discoveredCount!==void 0&&(n.discoveredCount=e.discoveredCount),e.reconciledCount!==void 0&&(n.reconciledCount=e.reconciledCount),e.driftCount!==void 0&&(n.driftCount=e.driftCount),e.violationCount!==void 0&&(n.violationCount=e.violationCount),e.summary&&(n.summary=g("summary",e.summary));let l=await a(X,{id:t,input:Object.keys(n).length?n:void 0});c(`Sync run completed: ${l.adaCompleteSyncRun.status}`),s(e,l.adaCompleteSyncRun);}catch(n){i(n);}}),o.command("cancel").description("Cancel a sync run").argument("<id>","Sync run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(Z,{id:t});c(`Sync run cancelled: ${n.adaCancelSyncRun.status}`),s(e,n.adaCancelSyncRun);}catch(n){i(n);}}),o.command("fail").description("Mark a sync run failed").argument("<id>","Sync run ID").requiredOption("--error <e>","Error message").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(tt,{id:t,error:e.error});c(`Sync run failed: ${n.adaFailSyncRun.status}`),s(e,n.adaFailSyncRun);}catch(n){i(n);}});}function ft(r){let o=r.command("cost").description("AdapterCloud cost records & summaries");o.command("summary").description("Aggregate spend grouped by service").option("--connection <id>","Scope summary to a connection").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(et,{connectionId:t.connection});s(t,e.adaCostSummary,{headers:["Service","Total"],rows:e.adaCostSummary.lines.map(n=>[n.service,String(n.total)])});}catch(e){i(e);}}),o.command("list").description("List cost records").option("--connection <id>","Filter by connection ID").option("--resource <id>","Filter by resource ID").option("--service <s>","Filter by service").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(nt,{connectionId:t.connection,resourceId:t.resource,service:t.service});s(t,e.adaListCostRecords,{headers:["ID","Service","Amount","Currency","Period start","Period end"],rows:e.adaListCostRecords.map(n=>[u(n.id,12),n.service,String(n.amount),n.currency,n.periodStart,n.periodEnd])});}catch(e){i(e);}}),o.command("ingest").description("Ingest a cost record").requiredOption("--service <s>","Service name").requiredOption("--amount <n>","Amount",v).requiredOption("--period-start <iso>","Period start (ISO date)").requiredOption("--period-end <iso>","Period end (ISO date)").option("--currency <c>","Currency code").option("--connection <id>","Connection ID").option("--resource <id>","Resource ID").option("--breakdown <json>","Breakdown JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={service:t.service,amount:t.amount,periodStart:t.periodStart,periodEnd:t.periodEnd};t.currency&&(e.currency=t.currency),t.connection&&(e.connectionId=t.connection),t.resource&&(e.resourceId=t.resource),t.breakdown&&(e.breakdown=g("breakdown",t.breakdown));let n=await a(ot,{input:e});c(`Cost ingested: ${n.adaIngestCost.service} ${n.adaIngestCost.amount}`),s(t,n.adaIngestCost);}catch(e){i(e);}});}function Ct(r){let o=r.command("drift").description("AdapterCloud drift records");o.command("list").description("List drift records").option("--resource <id>","Filter by resource ID").option("--status <s>","Filter by drift status").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(rt,{resourceId:t.resource,status:t.status?t.status.toUpperCase():void 0});s(t,e.adaListDriftRecords,{headers:["ID","Resource","Attribute","Severity","Status"],rows:e.adaListDriftRecords.map(n=>[u(n.id,12),u(n.resourceId,12),n.attributePath,n.severity,n.status])});}catch(e){i(e);}}),o.command("record").description("Record a drift observation").requiredOption("--resource <id>","Resource ID").requiredOption("--attribute-path <p>","Attribute path").option("--severity <s>","Severity").option("--expected <json>","Expected value JSON").option("--observed <json>","Observed value JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={resourceId:t.resource,attributePath:t.attributePath};t.severity&&(e.severity=t.severity.toUpperCase()),t.expected&&(e.expectedValue=g("expected",t.expected)),t.observed&&(e.observedValue=g("observed",t.observed));let n=await a(it,{input:e});c("Drift recorded"),s(t,n.adaRecordDrift);}catch(e){i(e);}}),o.command("remediate").description("Mark a drift record remediated").argument("<id>","Drift record ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(st,{id:t});c(`Drift remediated: ${n.adaRemediateDrift.status}`),s(e,n.adaRemediateDrift);}catch(n){i(n);}});}function yt(r){let o=r.command("topology").description("AdapterCloud topology edges");o.command("list").description("List topology edges").option("--resource <id>","Filter by resource ID (either endpoint)").option("--kind <k>","Filter by edge kind").option("-f, --format <format>","Output format").action(async t=>{try{let e=[],n=0;for(;;){let A=(await a(at,{resourceId:t.resource,kind:t.kind?t.kind.toUpperCase():void 0,pagination:{limit:100,offset:n}})).adaListTopologyEdges;if(e.push(...A.items),!A.pageInfo.hasMore||A.items.length===0)break;n+=A.items.length;}s(t,e,{headers:["ID","From","To","Kind","Bidirectional","Weight"],rows:e.map(l=>[u(l.id,12),u(l.fromResourceId,12),u(l.toResourceId,12),l.kind,l.bidirectional?"yes":"no",String(l.weight)])});}catch(e){i(e);}}),o.command("create").description("Create a topology edge").requiredOption("--from <id>","From resource ID").requiredOption("--to <id>","To resource ID").option("--kind <k>","Edge kind","DEPENDS_ON").option("--bidirectional","Mark edge bidirectional").option("--weight <n>","Edge weight",m).option("--attributes <json>","Attributes JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={fromResourceId:t.from,toResourceId:t.to,kind:(t.kind??"DEPENDS_ON").toUpperCase()};t.bidirectional&&(e.bidirectional=!0),t.weight!==void 0&&(e.weight=t.weight),t.attributes&&(e.attributes=g("attributes",t.attributes));let n=await a(ct,{input:e});c(`Topology edge created: ${n.adaCreateTopologyEdge.id}`),s(t,n.adaCreateTopologyEdge);}catch(e){i(e);}});}function It(r){r.command("health").description("AdapterCloud service health check (public)").option("-f, --format <format>","Output format").action(async o=>{try{let t=await k(dt);c(t.adaHealth),s(o,{health:t.adaHealth});}catch(t){i(t);}});}var Dt={id:"adaptercloud",version:"1.0.0",displayName:"AdapterCloud",dependsOn:["auth","workspaces"],register(r,o){E(o);let t=r.command("adaptercloud").description("AdapterCloud multi-cloud adapter control plane");ut(t),pt(t),mt(t),gt(t),lt(t),ft(t),Ct(t),yt(t),It(t);}},Sn=Dt;module.exports=Sn;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {a,b as b$1,h as h$1,p as p$1,g
|
|
1
|
+
import {a,b as b$1,h as h$1,p as p$1,g,i,d}from'../../chunk-WXDQ3S5J.js';import {o}from'../../chunk-TCBALVP4.js';var S=`
|
|
2
2
|
query AdaptercloudGetAdapter($id: ID!) {
|
|
3
3
|
adaAdapter(id: $id) {
|
|
4
4
|
id workspaceId name slug description kind status version vendor
|
|
5
5
|
capabilities configSchema tags createdAt updatedAt
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
|
-
`,
|
|
8
|
+
`,h=`
|
|
9
9
|
query AdaptercloudListAdapters(
|
|
10
10
|
$kind: AdaAdapterKind
|
|
11
11
|
$status: AdaAdapterStatus
|
|
@@ -25,18 +25,18 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
25
25
|
capabilities tags createdAt
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
-
`,
|
|
28
|
+
`,E=`
|
|
29
29
|
mutation AdaptercloudUpdateAdapter($id: ID!, $input: AdaUpdateAdapterInput!) {
|
|
30
30
|
adaUpdateAdapter(id: $id, input: $input) {
|
|
31
31
|
id name slug description kind status version vendor capabilities
|
|
32
32
|
tags updatedAt
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
`,
|
|
35
|
+
`,w=`
|
|
36
36
|
mutation AdaptercloudArchiveAdapter($id: ID!) {
|
|
37
37
|
adaArchiveAdapter(id: $id)
|
|
38
38
|
}
|
|
39
|
-
`,
|
|
39
|
+
`,D=`
|
|
40
40
|
query AdaptercloudGetConnection($id: ID!) {
|
|
41
41
|
adaConnection(id: $id) {
|
|
42
42
|
id workspaceId adapterId name status authMethod environment region
|
|
@@ -44,7 +44,7 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
44
44
|
createdAt updatedAt
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
`,
|
|
47
|
+
`,k=`
|
|
48
48
|
query AdaptercloudListConnections(
|
|
49
49
|
$adapterId: ID
|
|
50
50
|
$status: AdaConnectionStatus
|
|
@@ -58,33 +58,33 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
58
58
|
pageInfo { cursor hasMore }
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
`,
|
|
61
|
+
`,T=`
|
|
62
62
|
mutation AdaptercloudCreateConnection($input: AdaCreateConnectionInput!) {
|
|
63
63
|
adaCreateConnection(input: $input) {
|
|
64
64
|
id workspaceId adapterId name status authMethod environment region
|
|
65
65
|
targetRef secretRef config tags createdAt
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
`,
|
|
68
|
+
`,b=`
|
|
69
69
|
mutation AdaptercloudUpdateConnection($id: ID!, $input: AdaUpdateConnectionInput!) {
|
|
70
70
|
adaUpdateConnection(id: $id, input: $input) {
|
|
71
71
|
id adapterId name status authMethod environment region targetRef
|
|
72
72
|
secretRef config tags updatedAt
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
-
|
|
75
|
+
`,$=`
|
|
76
76
|
mutation AdaptercloudDisableConnection($id: ID!) {
|
|
77
77
|
adaDisableConnection(id: $id) {
|
|
78
78
|
id name status updatedAt
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
-
|
|
81
|
+
`,P=`
|
|
82
82
|
mutation AdaptercloudSetConnectionStatus($id: ID!, $status: AdaConnectionStatus!) {
|
|
83
83
|
adaSetConnectionStatus(id: $id, status: $status) {
|
|
84
84
|
id name status lastError updatedAt
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
`,
|
|
87
|
+
`,N=`
|
|
88
88
|
query AdaptercloudGetResource($id: ID!) {
|
|
89
89
|
adaResource(id: $id) {
|
|
90
90
|
id workspaceId connectionId externalId name resourceType region state
|
|
@@ -111,21 +111,21 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
111
111
|
pageInfo { cursor hasMore }
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
|
-
`,
|
|
114
|
+
`,_=`
|
|
115
115
|
mutation AdaptercloudRegisterResource($input: AdaRegisterResourceInput!) {
|
|
116
116
|
adaRegisterResource(input: $input) {
|
|
117
117
|
id workspaceId connectionId externalId name resourceType region state
|
|
118
118
|
monthlyCost attributes providerTags tags lastSeenAt createdAt
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
|
-
`,
|
|
121
|
+
`,U=`
|
|
122
122
|
query AdaptercloudGetPolicy($id: ID!) {
|
|
123
123
|
adaPolicy(id: $id) {
|
|
124
124
|
id workspaceId name description kind severity enforcement isActive
|
|
125
125
|
appliesTo expression tags createdAt updatedAt
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
|
-
`,
|
|
128
|
+
`,V=`
|
|
129
129
|
query AdaptercloudListPolicies(
|
|
130
130
|
$kind: AdaPolicyKind
|
|
131
131
|
$isActive: Boolean
|
|
@@ -138,25 +138,25 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
138
138
|
pageInfo { cursor hasMore }
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
|
-
`,
|
|
141
|
+
`,x=`
|
|
142
142
|
mutation AdaptercloudCreatePolicy($input: AdaCreatePolicyInput!) {
|
|
143
143
|
adaCreatePolicy(input: $input) {
|
|
144
144
|
id workspaceId name description kind severity enforcement isActive
|
|
145
145
|
appliesTo expression tags createdAt
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
|
-
`,
|
|
148
|
+
`,M=`
|
|
149
149
|
mutation AdaptercloudUpdatePolicy($id: ID!, $input: AdaUpdatePolicyInput!) {
|
|
150
150
|
adaUpdatePolicy(id: $id, input: $input) {
|
|
151
151
|
id name description kind severity enforcement isActive appliesTo
|
|
152
152
|
expression tags updatedAt
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
-
`,
|
|
155
|
+
`,q=`
|
|
156
156
|
mutation AdaptercloudArchivePolicy($id: ID!) {
|
|
157
157
|
adaArchivePolicy(id: $id)
|
|
158
158
|
}
|
|
159
|
-
`,
|
|
159
|
+
`,F=`
|
|
160
160
|
query AdaptercloudListViolations(
|
|
161
161
|
$policyId: ID
|
|
162
162
|
$resourceId: ID
|
|
@@ -176,14 +176,14 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
176
176
|
pageInfo { cursor hasMore }
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
|
-
`,
|
|
179
|
+
`,G=`
|
|
180
180
|
mutation AdaptercloudRecordViolation($input: AdaRecordViolationInput!) {
|
|
181
181
|
adaRecordViolation(input: $input) {
|
|
182
182
|
id workspaceId policyId resourceId severity status message evidence
|
|
183
183
|
detectedAt createdAt
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
|
-
`,
|
|
186
|
+
`,Y=`
|
|
187
187
|
mutation AdaptercloudResolveViolation(
|
|
188
188
|
$id: ID!
|
|
189
189
|
$status: AdaViolationStatus!
|
|
@@ -194,7 +194,7 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
194
194
|
resolvedAt resolvedById updatedAt
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
|
-
`,
|
|
197
|
+
`,J=`
|
|
198
198
|
query AdaptercloudGetSyncRun($id: ID!) {
|
|
199
199
|
adaSyncRun(id: $id) {
|
|
200
200
|
id workspaceId connectionId kind status discoveredCount reconciledCount
|
|
@@ -202,7 +202,7 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
202
202
|
createdAt updatedAt
|
|
203
203
|
}
|
|
204
204
|
}
|
|
205
|
-
`,
|
|
205
|
+
`,j=`
|
|
206
206
|
query AdaptercloudListSyncRuns(
|
|
207
207
|
$connectionId: ID
|
|
208
208
|
$status: AdaSyncStatus
|
|
@@ -216,40 +216,40 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
216
216
|
pageInfo { cursor hasMore }
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
|
-
`,
|
|
219
|
+
`,W=`
|
|
220
220
|
mutation AdaptercloudStartSyncRun($input: AdaStartSyncRunInput!) {
|
|
221
221
|
adaStartSyncRun(input: $input) {
|
|
222
222
|
id workspaceId connectionId kind status discoveredCount reconciledCount
|
|
223
223
|
driftCount violationCount startedAt createdAt
|
|
224
224
|
}
|
|
225
225
|
}
|
|
226
|
-
`,
|
|
226
|
+
`,H=`
|
|
227
227
|
mutation AdaptercloudCompleteSyncRun($id: ID!, $input: AdaCompleteSyncRunInput) {
|
|
228
228
|
adaCompleteSyncRun(id: $id, input: $input) {
|
|
229
229
|
id connectionId kind status discoveredCount reconciledCount driftCount
|
|
230
230
|
violationCount summary finishedAt updatedAt
|
|
231
231
|
}
|
|
232
232
|
}
|
|
233
|
-
`,
|
|
233
|
+
`,K=`
|
|
234
234
|
mutation AdaptercloudCancelSyncRun($id: ID!) {
|
|
235
235
|
adaCancelSyncRun(id: $id) {
|
|
236
236
|
id connectionId kind status finishedAt updatedAt
|
|
237
237
|
}
|
|
238
238
|
}
|
|
239
|
-
`,
|
|
239
|
+
`,B=`
|
|
240
240
|
mutation AdaptercloudFailSyncRun($id: ID!, $error: String!) {
|
|
241
241
|
adaFailSyncRun(id: $id, error: $error) {
|
|
242
242
|
id connectionId kind status error finishedAt updatedAt
|
|
243
243
|
}
|
|
244
244
|
}
|
|
245
|
-
`,
|
|
245
|
+
`,z=`
|
|
246
246
|
query AdaptercloudCostSummary($connectionId: ID) {
|
|
247
247
|
adaCostSummary(connectionId: $connectionId) {
|
|
248
248
|
currency total
|
|
249
249
|
lines { service total }
|
|
250
250
|
}
|
|
251
251
|
}
|
|
252
|
-
`,
|
|
252
|
+
`,Q=`
|
|
253
253
|
query AdaptercloudListCostRecords(
|
|
254
254
|
$connectionId: ID
|
|
255
255
|
$resourceId: ID
|
|
@@ -260,49 +260,52 @@ import {a,b as b$1,h as h$1,p as p$1,g as g$1,i,d}from'../../chunk-WXDQ3S5J.js';
|
|
|
260
260
|
periodStart periodEnd breakdown createdAt updatedAt
|
|
261
261
|
}
|
|
262
262
|
}
|
|
263
|
-
`,
|
|
263
|
+
`,X=`
|
|
264
264
|
mutation AdaptercloudIngestCost($input: AdaIngestCostInput!) {
|
|
265
265
|
adaIngestCost(input: $input) {
|
|
266
266
|
id workspaceId connectionId resourceId service amount currency
|
|
267
267
|
periodStart periodEnd breakdown createdAt
|
|
268
268
|
}
|
|
269
269
|
}
|
|
270
|
-
`,
|
|
270
|
+
`,Z=`
|
|
271
271
|
query AdaptercloudListDriftRecords($resourceId: ID, $status: AdaDriftStatus) {
|
|
272
272
|
adaListDriftRecords(resourceId: $resourceId, status: $status) {
|
|
273
273
|
id workspaceId resourceId attributePath severity status expectedValue
|
|
274
274
|
observedValue detectedAt remediatedAt createdAt updatedAt
|
|
275
275
|
}
|
|
276
276
|
}
|
|
277
|
-
`,
|
|
277
|
+
`,tt=`
|
|
278
278
|
mutation AdaptercloudRecordDrift($input: AdaRecordDriftInput!) {
|
|
279
279
|
adaRecordDrift(input: $input) {
|
|
280
280
|
id workspaceId resourceId attributePath severity status expectedValue
|
|
281
281
|
observedValue detectedAt createdAt
|
|
282
282
|
}
|
|
283
283
|
}
|
|
284
|
-
`,
|
|
284
|
+
`,et=`
|
|
285
285
|
mutation AdaptercloudRemediateDrift($id: ID!) {
|
|
286
286
|
adaRemediateDrift(id: $id) {
|
|
287
287
|
id resourceId attributePath severity status remediatedAt updatedAt
|
|
288
288
|
}
|
|
289
289
|
}
|
|
290
|
-
`,
|
|
291
|
-
query AdaptercloudListTopologyEdges($resourceId: ID, $kind: AdaEdgeKind) {
|
|
292
|
-
adaListTopologyEdges(resourceId: $resourceId, kind: $kind) {
|
|
293
|
-
|
|
294
|
-
|
|
290
|
+
`,nt=`
|
|
291
|
+
query AdaptercloudListTopologyEdges($resourceId: ID, $kind: AdaEdgeKind, $pagination: PaginationInput) {
|
|
292
|
+
adaListTopologyEdges(resourceId: $resourceId, kind: $kind, pagination: $pagination) {
|
|
293
|
+
items {
|
|
294
|
+
id workspaceId fromResourceId toResourceId kind bidirectional weight
|
|
295
|
+
attributes createdAt updatedAt
|
|
296
|
+
}
|
|
297
|
+
pageInfo { hasMore }
|
|
295
298
|
}
|
|
296
299
|
}
|
|
297
|
-
`,
|
|
300
|
+
`,ot=`
|
|
298
301
|
mutation AdaptercloudCreateTopologyEdge($input: AdaCreateTopologyEdgeInput!) {
|
|
299
302
|
adaCreateTopologyEdge(input: $input) {
|
|
300
303
|
id workspaceId fromResourceId toResourceId kind bidirectional weight
|
|
301
304
|
attributes createdAt
|
|
302
305
|
}
|
|
303
306
|
}
|
|
304
|
-
`,
|
|
307
|
+
`,it=`
|
|
305
308
|
query AdaptercloudHealth {
|
|
306
309
|
adaHealth
|
|
307
310
|
}
|
|
308
|
-
`;function u(d,o$1){try{return JSON.parse(o$1)}catch{throw new o(`--${d} must be valid JSON`)}}function p(d){let o$1=Number.parseInt(d,10);if(Number.isNaN(o$1))throw new o(`Expected an integer but got "${d}"`);return o$1}function I(d){let o$1=Number.parseFloat(d);if(Number.isNaN(o$1))throw new o(`Expected a number but got "${d}"`);return o$1}function g(d){return d.split(",").map(o=>o.trim()).filter(o=>o.length>0)}function it(d){let o$1=d.command("adapters").description("AdapterCloud adapters");o$1.command("list").description("List adapters").option("--kind <k>","Filter by adapter kind").option("--status <s>","Filter by adapter status").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(S,{kind:t.kind?t.kind.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListAdapters.items,{headers:["ID","Name","Kind","Status","Version","Vendor"],rows:e.adaListAdapters.items.map(n=>[p$1(n.id,12),n.name,n.kind,n.status,n.version,n.vendor??"-"])});}catch(e){g$1(e);}}),o$1.command("get").description("Get an adapter by id").argument("<id>","Adapter ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(v,{id:t});if(!n.adaAdapter)throw new o(`Adapter ${t} not found`);h$1(e,n.adaAdapter);}catch(n){g$1(n);}}),o$1.command("create").description("Create an adapter").requiredOption("--name <name>","Adapter name").requiredOption("--slug <slug>","URL slug").option("--kind <k>","Adapter kind","CUSTOM").option("--status <s>","Adapter status","DRAFT").option("--version <v>","Version").option("--vendor <v>","Vendor").option("--description <s>","Description").option("--capabilities <csv>","Comma-separated capabilities").option("--config-schema <json>","Config schema JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,slug:t.slug,kind:(t.kind??"CUSTOM").toUpperCase(),status:(t.status??"DRAFT").toUpperCase()};t.version&&(e.version=t.version),t.vendor&&(e.vendor=t.vendor),t.description&&(e.description=t.description),t.capabilities&&(e.capabilities=g(t.capabilities)),t.configSchema&&(e.configSchema=u("config-schema",t.configSchema)),t.tags&&(e.tags=g(t.tags));let n=await b$1(O,{input:e});i(`Adapter created: ${n.adaCreateAdapter.name}`),h$1(t,n.adaCreateAdapter);}catch(e){g$1(e);}}),o$1.command("update").description("Update an adapter").argument("<id>","Adapter ID").option("--name <name>","Adapter name").option("--kind <k>","Adapter kind").option("--status <s>","Adapter status").option("--version <v>","Version").option("--vendor <v>","Vendor").option("--description <s>","Description").option("--capabilities <csv>","Comma-separated capabilities").option("--config-schema <json>","Config schema JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.kind&&(n.kind=e.kind.toUpperCase()),e.status&&(n.status=e.status.toUpperCase()),e.version&&(n.version=e.version),e.vendor!==void 0&&(n.vendor=e.vendor),e.description!==void 0&&(n.description=e.description),e.capabilities&&(n.capabilities=g(e.capabilities)),e.configSchema&&(n.configSchema=u("config-schema",e.configSchema)),e.tags&&(n.tags=g(e.tags)),!Object.keys(n).length)throw new o("No updates specified");let C=await b$1(h,{id:t,input:n});i("Adapter updated"),h$1(e,C.adaUpdateAdapter);}catch(n){g$1(n);}}),o$1.command("archive").description("Archive an adapter").argument("<id>","Adapter ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(E,{id:t});i(`Adapter archived: ${n.adaArchiveAdapter}`),h$1(e,{archived:n.adaArchiveAdapter});}catch(n){g$1(n);}});}function rt(d){let o$1=d.command("connections").description("AdapterCloud connections");o$1.command("list").description("List connections").option("--adapter <id>","Filter by adapter ID").option("--status <s>","Filter by connection status").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(D,{adapterId:t.adapter,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListConnections.items,{headers:["ID","Name","Status","Auth","Env","Region","Resources"],rows:e.adaListConnections.items.map(n=>[p$1(n.id,12),n.name,n.status,n.authMethod,n.environment??"-",n.region??"-",String(n.resourceCount)])});}catch(e){g$1(e);}}),o$1.command("get").description("Get a connection by id").argument("<id>","Connection ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(w,{id:t});if(!n.adaConnection)throw new o(`Connection ${t} not found`);h$1(e,n.adaConnection);}catch(n){g$1(n);}}),o$1.command("create").description("Create a connection").requiredOption("--adapter <id>","Adapter ID").requiredOption("--name <name>","Connection name").option("--auth-method <m>","Auth method","NONE").option("--environment <e>","Environment").option("--region <r>","Region").option("--target-ref <t>","Target reference").option("--secret-ref <s>","Secret reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={adapterId:t.adapter,name:t.name,authMethod:(t.authMethod??"NONE").toUpperCase()};t.environment&&(e.environment=t.environment),t.region&&(e.region=t.region),t.targetRef&&(e.targetRef=t.targetRef),t.secretRef&&(e.secretRef=t.secretRef),t.config&&(e.config=u("config",t.config)),t.tags&&(e.tags=g(t.tags));let n=await b$1(k,{input:e});i(`Connection created: ${n.adaCreateConnection.name}`),h$1(t,n.adaCreateConnection);}catch(e){g$1(e);}}),o$1.command("update").description("Update a connection").argument("<id>","Connection ID").option("--name <name>","Connection name").option("--auth-method <m>","Auth method").option("--environment <e>","Environment").option("--region <r>","Region").option("--target-ref <t>","Target reference").option("--secret-ref <s>","Secret reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.authMethod&&(n.authMethod=e.authMethod.toUpperCase()),e.environment!==void 0&&(n.environment=e.environment),e.region!==void 0&&(n.region=e.region),e.targetRef!==void 0&&(n.targetRef=e.targetRef),e.secretRef!==void 0&&(n.secretRef=e.secretRef),e.config&&(n.config=u("config",e.config)),e.tags&&(n.tags=g(e.tags)),!Object.keys(n).length)throw new o("No updates specified");let C=await b$1(T,{id:t,input:n});i("Connection updated"),h$1(e,C.adaUpdateConnection);}catch(n){g$1(n);}}),o$1.command("disable").description("Disable a connection").argument("<id>","Connection ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(b,{id:t});i(`Connection disabled: ${n.adaDisableConnection.status}`),h$1(e,n.adaDisableConnection);}catch(n){g$1(n);}}),o$1.command("set-status").description("Transition a connection status").argument("<id>","Connection ID").requiredOption("--status <s>","CONNECTED|DEGRADED|DISABLED|ERROR|PENDING").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1($,{id:t,status:e.status.toUpperCase()});i(`Connection status set to ${n.adaSetConnectionStatus.status}`),h$1(e,n.adaSetConnectionStatus);}catch(n){g$1(n);}});}function at(d){let o$1=d.command("resources").description("AdapterCloud resources");o$1.command("list").description("List resources").option("--connection <id>","Filter by connection ID").option("--resource-type <t>","Filter by resource type").option("--state <s>","Filter by resource state").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(L,{connectionId:t.connection,resourceType:t.resourceType,state:t.state?t.state.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListResources.items,{headers:["ID","Name","Type","Region","State","Cost/mo"],rows:e.adaListResources.items.map(n=>[p$1(n.id,12),n.name,n.resourceType,n.region??"-",n.state,String(n.monthlyCost)])});}catch(e){g$1(e);}}),o$1.command("get").description("Get a resource by id").argument("<id>","Resource ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(P,{id:t});if(!n.adaResource)throw new o(`Resource ${t} not found`);h$1(e,n.adaResource);}catch(n){g$1(n);}}),o$1.command("register").description("Register (upsert) a discovered resource").requiredOption("--connection <id>","Connection ID").requiredOption("--external-id <id>","External (provider) ID").requiredOption("--name <name>","Resource name").requiredOption("--resource-type <t>","Resource type").option("--region <r>","Region").option("--monthly-cost <n>","Monthly cost",I).option("--attributes <json>","Attributes JSON").option("--provider-tags <json>","Provider tags JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={connectionId:t.connection,externalId:t.externalId,name:t.name,resourceType:t.resourceType};t.region&&(e.region=t.region),t.monthlyCost!==void 0&&(e.monthlyCost=t.monthlyCost),t.attributes&&(e.attributes=u("attributes",t.attributes)),t.providerTags&&(e.providerTags=u("provider-tags",t.providerTags)),t.tags&&(e.tags=g(t.tags));let n=await b$1(N,{input:e});i(`Resource registered: ${n.adaRegisterResource.name}`),h$1(t,n.adaRegisterResource);}catch(e){g$1(e);}});}function st(d){let o$1=d.command("policies").description("AdapterCloud policies & violations");o$1.command("list").description("List policies").option("--kind <k>","Filter by policy kind").option("--active <bool>","true|false",t=>t==="true").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(U,{kind:t.kind?t.kind.toUpperCase():void 0,isActive:t.active,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListPolicies.items,{headers:["ID","Name","Kind","Severity","Enforcement","Active"],rows:e.adaListPolicies.items.map(n=>[p$1(n.id,12),n.name,n.kind,n.severity,n.enforcement,n.isActive?"yes":"no"])});}catch(e){g$1(e);}}),o$1.command("get").description("Get a policy by id").argument("<id>","Policy ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(_,{id:t});if(!n.adaPolicy)throw new o(`Policy ${t} not found`);h$1(e,n.adaPolicy);}catch(n){g$1(n);}}),o$1.command("create").description("Create a policy").requiredOption("--name <name>","Policy name").requiredOption("--expression <json>","Policy expression JSON").option("--kind <k>","Policy kind","GUARDRAIL").option("--severity <s>","Severity","MEDIUM").option("--enforcement <e>","Enforcement","WARN").option("--active <bool>","true|false",t=>t==="true").option("--description <s>","Description").option("--applies-to <csv>","Comma-separated resource types/selectors").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,expression:u("expression",t.expression),kind:(t.kind??"GUARDRAIL").toUpperCase(),severity:(t.severity??"MEDIUM").toUpperCase(),enforcement:(t.enforcement??"WARN").toUpperCase()};t.active!==void 0&&(e.isActive=t.active),t.description&&(e.description=t.description),t.appliesTo&&(e.appliesTo=g(t.appliesTo)),t.tags&&(e.tags=g(t.tags));let n=await b$1(V,{input:e});i(`Policy created: ${n.adaCreatePolicy.name}`),h$1(t,n.adaCreatePolicy);}catch(e){g$1(e);}}),o$1.command("update").description("Update a policy").argument("<id>","Policy ID").option("--name <name>","Policy name").option("--kind <k>","Policy kind").option("--severity <s>","Severity").option("--enforcement <e>","Enforcement").option("--active <bool>","true|false",t=>t==="true").option("--description <s>","Description").option("--expression <json>","Policy expression JSON").option("--applies-to <csv>","Comma-separated resource types/selectors").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.kind&&(n.kind=e.kind.toUpperCase()),e.severity&&(n.severity=e.severity.toUpperCase()),e.enforcement&&(n.enforcement=e.enforcement.toUpperCase()),e.active!==void 0&&(n.isActive=e.active),e.description!==void 0&&(n.description=e.description),e.expression&&(n.expression=u("expression",e.expression)),e.appliesTo&&(n.appliesTo=g(e.appliesTo)),e.tags&&(n.tags=g(e.tags)),!Object.keys(n).length)throw new o("No updates specified");let C=await b$1(x,{id:t,input:n});i("Policy updated"),h$1(e,C.adaUpdatePolicy);}catch(n){g$1(n);}}),o$1.command("archive").description("Archive a policy").argument("<id>","Policy ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(M,{id:t});i(`Policy archived: ${n.adaArchivePolicy}`),h$1(e,{archived:n.adaArchivePolicy});}catch(n){g$1(n);}}),o$1.command("list-violations").description("List policy violations").option("--policy <id>","Filter by policy ID").option("--resource <id>","Filter by resource ID").option("--status <s>","Filter by violation status").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(q,{policyId:t.policy,resourceId:t.resource,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListViolations.items,{headers:["ID","Policy","Resource","Severity","Status","Message"],rows:e.adaListViolations.items.map(n=>[p$1(n.id,12),p$1(n.policyId,12),p$1(n.resourceId,12),n.severity,n.status,p$1(n.message,30)])});}catch(e){g$1(e);}}),o$1.command("record-violation").description("Record a policy violation").requiredOption("--policy <id>","Policy ID").requiredOption("--resource <id>","Resource ID").requiredOption("--message <m>","Violation message").option("--severity <s>","Severity").option("--evidence <json>","Evidence JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={policyId:t.policy,resourceId:t.resource,message:t.message};t.severity&&(e.severity=t.severity.toUpperCase()),t.evidence&&(e.evidence=u("evidence",t.evidence));let n=await b$1(F,{input:e});i("Violation recorded"),h$1(t,n.adaRecordViolation);}catch(e){g$1(e);}}),o$1.command("resolve-violation").description("Resolve or waive a violation").argument("<id>","Violation ID").requiredOption("--status <s>","ACKNOWLEDGED|OPEN|RESOLVED|WAIVED").option("--waiver-reason <r>","Waiver reason (required when waiving)").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(G,{id:t,status:e.status.toUpperCase(),waiverReason:e.waiverReason});i(`Violation ${n.adaResolveViolation.status}`),h$1(e,n.adaResolveViolation);}catch(n){g$1(n);}});}function dt(d){let o$1=d.command("sync-runs").description("AdapterCloud sync runs");o$1.command("list").description("List sync runs").option("--connection <id>","Filter by connection ID").option("--status <s>","Filter by sync status").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(J,{connectionId:t.connection,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListSyncRuns.items,{headers:["ID","Connection","Kind","Status","Discovered","Drift","Violations"],rows:e.adaListSyncRuns.items.map(n=>[p$1(n.id,12),p$1(n.connectionId,12),n.kind,n.status,String(n.discoveredCount),String(n.driftCount),String(n.violationCount)])});}catch(e){g$1(e);}}),o$1.command("get").description("Get a sync run by id").argument("<id>","Sync run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(Y,{id:t});if(!n.adaSyncRun)throw new o(`Sync run ${t} not found`);h$1(e,n.adaSyncRun);}catch(n){g$1(n);}}),o$1.command("start").description("Start a sync run").requiredOption("--connection <id>","Connection ID").option("--kind <k>","Sync kind (DISCOVERY|RECONCILE|COST_INGEST|FULL)","DISCOVERY").option("-f, --format <format>","Output format").action(async t=>{try{let e={connectionId:t.connection,kind:(t.kind??"DISCOVERY").toUpperCase()},n=await b$1(j,{input:e});i(`Sync run started: ${n.adaStartSyncRun.id}`),h$1(t,n.adaStartSyncRun);}catch(e){g$1(e);}}),o$1.command("complete").description("Mark a sync run complete").argument("<id>","Sync run ID").option("--discovered-count <n>","Discovered count",p).option("--reconciled-count <n>","Reconciled count",p).option("--drift-count <n>","Drift count",p).option("--violation-count <n>","Violation count",p).option("--summary <json>","Summary JSON").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};e.discoveredCount!==void 0&&(n.discoveredCount=e.discoveredCount),e.reconciledCount!==void 0&&(n.reconciledCount=e.reconciledCount),e.driftCount!==void 0&&(n.driftCount=e.driftCount),e.violationCount!==void 0&&(n.violationCount=e.violationCount),e.summary&&(n.summary=u("summary",e.summary));let C=await b$1(W,{id:t,input:Object.keys(n).length?n:void 0});i(`Sync run completed: ${C.adaCompleteSyncRun.status}`),h$1(e,C.adaCompleteSyncRun);}catch(n){g$1(n);}}),o$1.command("cancel").description("Cancel a sync run").argument("<id>","Sync run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(H,{id:t});i(`Sync run cancelled: ${n.adaCancelSyncRun.status}`),h$1(e,n.adaCancelSyncRun);}catch(n){g$1(n);}}),o$1.command("fail").description("Mark a sync run failed").argument("<id>","Sync run ID").requiredOption("--error <e>","Error message").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(K,{id:t,error:e.error});i(`Sync run failed: ${n.adaFailSyncRun.status}`),h$1(e,n.adaFailSyncRun);}catch(n){g$1(n);}});}function ct(d){let o=d.command("cost").description("AdapterCloud cost records & summaries");o.command("summary").description("Aggregate spend grouped by service").option("--connection <id>","Scope summary to a connection").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(B,{connectionId:t.connection});h$1(t,e.adaCostSummary,{headers:["Service","Total"],rows:e.adaCostSummary.lines.map(n=>[n.service,String(n.total)])});}catch(e){g$1(e);}}),o.command("list").description("List cost records").option("--connection <id>","Filter by connection ID").option("--resource <id>","Filter by resource ID").option("--service <s>","Filter by service").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(z,{connectionId:t.connection,resourceId:t.resource,service:t.service});h$1(t,e.adaListCostRecords,{headers:["ID","Service","Amount","Currency","Period start","Period end"],rows:e.adaListCostRecords.map(n=>[p$1(n.id,12),n.service,String(n.amount),n.currency,n.periodStart,n.periodEnd])});}catch(e){g$1(e);}}),o.command("ingest").description("Ingest a cost record").requiredOption("--service <s>","Service name").requiredOption("--amount <n>","Amount",I).requiredOption("--period-start <iso>","Period start (ISO date)").requiredOption("--period-end <iso>","Period end (ISO date)").option("--currency <c>","Currency code").option("--connection <id>","Connection ID").option("--resource <id>","Resource ID").option("--breakdown <json>","Breakdown JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={service:t.service,amount:t.amount,periodStart:t.periodStart,periodEnd:t.periodEnd};t.currency&&(e.currency=t.currency),t.connection&&(e.connectionId=t.connection),t.resource&&(e.resourceId=t.resource),t.breakdown&&(e.breakdown=u("breakdown",t.breakdown));let n=await b$1(Q,{input:e});i(`Cost ingested: ${n.adaIngestCost.service} ${n.adaIngestCost.amount}`),h$1(t,n.adaIngestCost);}catch(e){g$1(e);}});}function pt(d){let o=d.command("drift").description("AdapterCloud drift records");o.command("list").description("List drift records").option("--resource <id>","Filter by resource ID").option("--status <s>","Filter by drift status").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(X,{resourceId:t.resource,status:t.status?t.status.toUpperCase():void 0});h$1(t,e.adaListDriftRecords,{headers:["ID","Resource","Attribute","Severity","Status"],rows:e.adaListDriftRecords.map(n=>[p$1(n.id,12),p$1(n.resourceId,12),n.attributePath,n.severity,n.status])});}catch(e){g$1(e);}}),o.command("record").description("Record a drift observation").requiredOption("--resource <id>","Resource ID").requiredOption("--attribute-path <p>","Attribute path").option("--severity <s>","Severity").option("--expected <json>","Expected value JSON").option("--observed <json>","Observed value JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={resourceId:t.resource,attributePath:t.attributePath};t.severity&&(e.severity=t.severity.toUpperCase()),t.expected&&(e.expectedValue=u("expected",t.expected)),t.observed&&(e.observedValue=u("observed",t.observed));let n=await b$1(Z,{input:e});i("Drift recorded"),h$1(t,n.adaRecordDrift);}catch(e){g$1(e);}}),o.command("remediate").description("Mark a drift record remediated").argument("<id>","Drift record ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(tt,{id:t});i(`Drift remediated: ${n.adaRemediateDrift.status}`),h$1(e,n.adaRemediateDrift);}catch(n){g$1(n);}});}function ut(d){let o=d.command("topology").description("AdapterCloud topology edges");o.command("list").description("List topology edges").option("--resource <id>","Filter by resource ID (either endpoint)").option("--kind <k>","Filter by edge kind").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(et,{resourceId:t.resource,kind:t.kind?t.kind.toUpperCase():void 0});h$1(t,e.adaListTopologyEdges,{headers:["ID","From","To","Kind","Bidirectional","Weight"],rows:e.adaListTopologyEdges.map(n=>[p$1(n.id,12),p$1(n.fromResourceId,12),p$1(n.toResourceId,12),n.kind,n.bidirectional?"yes":"no",String(n.weight)])});}catch(e){g$1(e);}}),o.command("create").description("Create a topology edge").requiredOption("--from <id>","From resource ID").requiredOption("--to <id>","To resource ID").option("--kind <k>","Edge kind","DEPENDS_ON").option("--bidirectional","Mark edge bidirectional").option("--weight <n>","Edge weight",p).option("--attributes <json>","Attributes JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={fromResourceId:t.from,toResourceId:t.to,kind:(t.kind??"DEPENDS_ON").toUpperCase()};t.bidirectional&&(e.bidirectional=!0),t.weight!==void 0&&(e.weight=t.weight),t.attributes&&(e.attributes=u("attributes",t.attributes));let n=await b$1(nt,{input:e});i(`Topology edge created: ${n.adaCreateTopologyEdge.id}`),h$1(t,n.adaCreateTopologyEdge);}catch(e){g$1(e);}});}function mt(d$1){d$1.command("health").description("AdapterCloud service health check (public)").option("-f, --format <format>","Output format").action(async o=>{try{let t=await d(ot);i(t.adaHealth),h$1(o,{health:t.adaHealth});}catch(t){g$1(t);}});}var gt={id:"adaptercloud",version:"1.0.0",displayName:"AdapterCloud",dependsOn:["auth","workspaces"],register(d,o){a(o);let t=d.command("adaptercloud").description("AdapterCloud multi-cloud adapter control plane");it(t),rt(t),at(t),st(t),dt(t),ct(t),pt(t),ut(t),mt(t);}},oe=gt;export{oe as default};
|
|
311
|
+
`;function u(d,o$1){try{return JSON.parse(o$1)}catch{throw new o(`--${d} must be valid JSON`)}}function p(d){let o$1=Number.parseInt(d,10);if(Number.isNaN(o$1))throw new o(`Expected an integer but got "${d}"`);return o$1}function R(d){let o$1=Number.parseFloat(d);if(Number.isNaN(o$1))throw new o(`Expected a number but got "${d}"`);return o$1}function f(d){return d.split(",").map(o=>o.trim()).filter(o=>o.length>0)}function rt(d){let o$1=d.command("adapters").description("AdapterCloud adapters");o$1.command("list").description("List adapters").option("--kind <k>","Filter by adapter kind").option("--status <s>","Filter by adapter status").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(h,{kind:t.kind?t.kind.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListAdapters.items,{headers:["ID","Name","Kind","Status","Version","Vendor"],rows:e.adaListAdapters.items.map(n=>[p$1(n.id,12),n.name,n.kind,n.status,n.version,n.vendor??"-"])});}catch(e){g(e);}}),o$1.command("get").description("Get an adapter by id").argument("<id>","Adapter ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(S,{id:t});if(!n.adaAdapter)throw new o(`Adapter ${t} not found`);h$1(e,n.adaAdapter);}catch(n){g(n);}}),o$1.command("create").description("Create an adapter").requiredOption("--name <name>","Adapter name").requiredOption("--slug <slug>","URL slug").option("--kind <k>","Adapter kind","CUSTOM").option("--status <s>","Adapter status","DRAFT").option("--version <v>","Version").option("--vendor <v>","Vendor").option("--description <s>","Description").option("--capabilities <csv>","Comma-separated capabilities").option("--config-schema <json>","Config schema JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,slug:t.slug,kind:(t.kind??"CUSTOM").toUpperCase(),status:(t.status??"DRAFT").toUpperCase()};t.version&&(e.version=t.version),t.vendor&&(e.vendor=t.vendor),t.description&&(e.description=t.description),t.capabilities&&(e.capabilities=f(t.capabilities)),t.configSchema&&(e.configSchema=u("config-schema",t.configSchema)),t.tags&&(e.tags=f(t.tags));let n=await b$1(O,{input:e});i(`Adapter created: ${n.adaCreateAdapter.name}`),h$1(t,n.adaCreateAdapter);}catch(e){g(e);}}),o$1.command("update").description("Update an adapter").argument("<id>","Adapter ID").option("--name <name>","Adapter name").option("--kind <k>","Adapter kind").option("--status <s>","Adapter status").option("--version <v>","Version").option("--vendor <v>","Vendor").option("--description <s>","Description").option("--capabilities <csv>","Comma-separated capabilities").option("--config-schema <json>","Config schema JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.kind&&(n.kind=e.kind.toUpperCase()),e.status&&(n.status=e.status.toUpperCase()),e.version&&(n.version=e.version),e.vendor!==void 0&&(n.vendor=e.vendor),e.description!==void 0&&(n.description=e.description),e.capabilities&&(n.capabilities=f(e.capabilities)),e.configSchema&&(n.configSchema=u("config-schema",e.configSchema)),e.tags&&(n.tags=f(e.tags)),!Object.keys(n).length)throw new o("No updates specified");let g=await b$1(E,{id:t,input:n});i("Adapter updated"),h$1(e,g.adaUpdateAdapter);}catch(n){g(n);}}),o$1.command("archive").description("Archive an adapter").argument("<id>","Adapter ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(w,{id:t});i(`Adapter archived: ${n.adaArchiveAdapter}`),h$1(e,{archived:n.adaArchiveAdapter});}catch(n){g(n);}});}function at(d){let o$1=d.command("connections").description("AdapterCloud connections");o$1.command("list").description("List connections").option("--adapter <id>","Filter by adapter ID").option("--status <s>","Filter by connection status").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(k,{adapterId:t.adapter,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListConnections.items,{headers:["ID","Name","Status","Auth","Env","Region","Resources"],rows:e.adaListConnections.items.map(n=>[p$1(n.id,12),n.name,n.status,n.authMethod,n.environment??"-",n.region??"-",String(n.resourceCount)])});}catch(e){g(e);}}),o$1.command("get").description("Get a connection by id").argument("<id>","Connection ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(D,{id:t});if(!n.adaConnection)throw new o(`Connection ${t} not found`);h$1(e,n.adaConnection);}catch(n){g(n);}}),o$1.command("create").description("Create a connection").requiredOption("--adapter <id>","Adapter ID").requiredOption("--name <name>","Connection name").option("--auth-method <m>","Auth method","NONE").option("--environment <e>","Environment").option("--region <r>","Region").option("--target-ref <t>","Target reference").option("--secret-ref <s>","Secret reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={adapterId:t.adapter,name:t.name,authMethod:(t.authMethod??"NONE").toUpperCase()};t.environment&&(e.environment=t.environment),t.region&&(e.region=t.region),t.targetRef&&(e.targetRef=t.targetRef),t.secretRef&&(e.secretRef=t.secretRef),t.config&&(e.config=u("config",t.config)),t.tags&&(e.tags=f(t.tags));let n=await b$1(T,{input:e});i(`Connection created: ${n.adaCreateConnection.name}`),h$1(t,n.adaCreateConnection);}catch(e){g(e);}}),o$1.command("update").description("Update a connection").argument("<id>","Connection ID").option("--name <name>","Connection name").option("--auth-method <m>","Auth method").option("--environment <e>","Environment").option("--region <r>","Region").option("--target-ref <t>","Target reference").option("--secret-ref <s>","Secret reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.authMethod&&(n.authMethod=e.authMethod.toUpperCase()),e.environment!==void 0&&(n.environment=e.environment),e.region!==void 0&&(n.region=e.region),e.targetRef!==void 0&&(n.targetRef=e.targetRef),e.secretRef!==void 0&&(n.secretRef=e.secretRef),e.config&&(n.config=u("config",e.config)),e.tags&&(n.tags=f(e.tags)),!Object.keys(n).length)throw new o("No updates specified");let g=await b$1(b,{id:t,input:n});i("Connection updated"),h$1(e,g.adaUpdateConnection);}catch(n){g(n);}}),o$1.command("disable").description("Disable a connection").argument("<id>","Connection ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1($,{id:t});i(`Connection disabled: ${n.adaDisableConnection.status}`),h$1(e,n.adaDisableConnection);}catch(n){g(n);}}),o$1.command("set-status").description("Transition a connection status").argument("<id>","Connection ID").requiredOption("--status <s>","CONNECTED|DEGRADED|DISABLED|ERROR|PENDING").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(P,{id:t,status:e.status.toUpperCase()});i(`Connection status set to ${n.adaSetConnectionStatus.status}`),h$1(e,n.adaSetConnectionStatus);}catch(n){g(n);}});}function st(d){let o$1=d.command("resources").description("AdapterCloud resources");o$1.command("list").description("List resources").option("--connection <id>","Filter by connection ID").option("--resource-type <t>","Filter by resource type").option("--state <s>","Filter by resource state").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(L,{connectionId:t.connection,resourceType:t.resourceType,state:t.state?t.state.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListResources.items,{headers:["ID","Name","Type","Region","State","Cost/mo"],rows:e.adaListResources.items.map(n=>[p$1(n.id,12),n.name,n.resourceType,n.region??"-",n.state,String(n.monthlyCost)])});}catch(e){g(e);}}),o$1.command("get").description("Get a resource by id").argument("<id>","Resource ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(N,{id:t});if(!n.adaResource)throw new o(`Resource ${t} not found`);h$1(e,n.adaResource);}catch(n){g(n);}}),o$1.command("register").description("Register (upsert) a discovered resource").requiredOption("--connection <id>","Connection ID").requiredOption("--external-id <id>","External (provider) ID").requiredOption("--name <name>","Resource name").requiredOption("--resource-type <t>","Resource type").option("--region <r>","Region").option("--monthly-cost <n>","Monthly cost",R).option("--attributes <json>","Attributes JSON").option("--provider-tags <json>","Provider tags JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={connectionId:t.connection,externalId:t.externalId,name:t.name,resourceType:t.resourceType};t.region&&(e.region=t.region),t.monthlyCost!==void 0&&(e.monthlyCost=t.monthlyCost),t.attributes&&(e.attributes=u("attributes",t.attributes)),t.providerTags&&(e.providerTags=u("provider-tags",t.providerTags)),t.tags&&(e.tags=f(t.tags));let n=await b$1(_,{input:e});i(`Resource registered: ${n.adaRegisterResource.name}`),h$1(t,n.adaRegisterResource);}catch(e){g(e);}});}function dt(d){let o$1=d.command("policies").description("AdapterCloud policies & violations");o$1.command("list").description("List policies").option("--kind <k>","Filter by policy kind").option("--active <bool>","true|false",t=>t==="true").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(V,{kind:t.kind?t.kind.toUpperCase():void 0,isActive:t.active,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListPolicies.items,{headers:["ID","Name","Kind","Severity","Enforcement","Active"],rows:e.adaListPolicies.items.map(n=>[p$1(n.id,12),n.name,n.kind,n.severity,n.enforcement,n.isActive?"yes":"no"])});}catch(e){g(e);}}),o$1.command("get").description("Get a policy by id").argument("<id>","Policy ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(U,{id:t});if(!n.adaPolicy)throw new o(`Policy ${t} not found`);h$1(e,n.adaPolicy);}catch(n){g(n);}}),o$1.command("create").description("Create a policy").requiredOption("--name <name>","Policy name").requiredOption("--expression <json>","Policy expression JSON").option("--kind <k>","Policy kind","GUARDRAIL").option("--severity <s>","Severity","MEDIUM").option("--enforcement <e>","Enforcement","WARN").option("--active <bool>","true|false",t=>t==="true").option("--description <s>","Description").option("--applies-to <csv>","Comma-separated resource types/selectors").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name,expression:u("expression",t.expression),kind:(t.kind??"GUARDRAIL").toUpperCase(),severity:(t.severity??"MEDIUM").toUpperCase(),enforcement:(t.enforcement??"WARN").toUpperCase()};t.active!==void 0&&(e.isActive=t.active),t.description&&(e.description=t.description),t.appliesTo&&(e.appliesTo=f(t.appliesTo)),t.tags&&(e.tags=f(t.tags));let n=await b$1(x,{input:e});i(`Policy created: ${n.adaCreatePolicy.name}`),h$1(t,n.adaCreatePolicy);}catch(e){g(e);}}),o$1.command("update").description("Update a policy").argument("<id>","Policy ID").option("--name <name>","Policy name").option("--kind <k>","Policy kind").option("--severity <s>","Severity").option("--enforcement <e>","Enforcement").option("--active <bool>","true|false",t=>t==="true").option("--description <s>","Description").option("--expression <json>","Policy expression JSON").option("--applies-to <csv>","Comma-separated resource types/selectors").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.kind&&(n.kind=e.kind.toUpperCase()),e.severity&&(n.severity=e.severity.toUpperCase()),e.enforcement&&(n.enforcement=e.enforcement.toUpperCase()),e.active!==void 0&&(n.isActive=e.active),e.description!==void 0&&(n.description=e.description),e.expression&&(n.expression=u("expression",e.expression)),e.appliesTo&&(n.appliesTo=f(e.appliesTo)),e.tags&&(n.tags=f(e.tags)),!Object.keys(n).length)throw new o("No updates specified");let g=await b$1(M,{id:t,input:n});i("Policy updated"),h$1(e,g.adaUpdatePolicy);}catch(n){g(n);}}),o$1.command("archive").description("Archive a policy").argument("<id>","Policy ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(q,{id:t});i(`Policy archived: ${n.adaArchivePolicy}`),h$1(e,{archived:n.adaArchivePolicy});}catch(n){g(n);}}),o$1.command("list-violations").description("List policy violations").option("--policy <id>","Filter by policy ID").option("--resource <id>","Filter by resource ID").option("--status <s>","Filter by violation status").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(F,{policyId:t.policy,resourceId:t.resource,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListViolations.items,{headers:["ID","Policy","Resource","Severity","Status","Message"],rows:e.adaListViolations.items.map(n=>[p$1(n.id,12),p$1(n.policyId,12),p$1(n.resourceId,12),n.severity,n.status,p$1(n.message,30)])});}catch(e){g(e);}}),o$1.command("record-violation").description("Record a policy violation").requiredOption("--policy <id>","Policy ID").requiredOption("--resource <id>","Resource ID").requiredOption("--message <m>","Violation message").option("--severity <s>","Severity").option("--evidence <json>","Evidence JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={policyId:t.policy,resourceId:t.resource,message:t.message};t.severity&&(e.severity=t.severity.toUpperCase()),t.evidence&&(e.evidence=u("evidence",t.evidence));let n=await b$1(G,{input:e});i("Violation recorded"),h$1(t,n.adaRecordViolation);}catch(e){g(e);}}),o$1.command("resolve-violation").description("Resolve or waive a violation").argument("<id>","Violation ID").requiredOption("--status <s>","ACKNOWLEDGED|OPEN|RESOLVED|WAIVED").option("--waiver-reason <r>","Waiver reason (required when waiving)").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(Y,{id:t,status:e.status.toUpperCase(),waiverReason:e.waiverReason});i(`Violation ${n.adaResolveViolation.status}`),h$1(e,n.adaResolveViolation);}catch(n){g(n);}});}function ct(d){let o$1=d.command("sync-runs").description("AdapterCloud sync runs");o$1.command("list").description("List sync runs").option("--connection <id>","Filter by connection ID").option("--status <s>","Filter by sync status").option("--limit <n>","Page size",p,50).option("--offset <n>","Offset",p,0).option("--cursor <c>","Pagination cursor").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(j,{connectionId:t.connection,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset,cursor:t.cursor}});h$1(t,e.adaListSyncRuns.items,{headers:["ID","Connection","Kind","Status","Discovered","Drift","Violations"],rows:e.adaListSyncRuns.items.map(n=>[p$1(n.id,12),p$1(n.connectionId,12),n.kind,n.status,String(n.discoveredCount),String(n.driftCount),String(n.violationCount)])});}catch(e){g(e);}}),o$1.command("get").description("Get a sync run by id").argument("<id>","Sync run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(J,{id:t});if(!n.adaSyncRun)throw new o(`Sync run ${t} not found`);h$1(e,n.adaSyncRun);}catch(n){g(n);}}),o$1.command("start").description("Start a sync run").requiredOption("--connection <id>","Connection ID").option("--kind <k>","Sync kind (DISCOVERY|RECONCILE|COST_INGEST|FULL)","DISCOVERY").option("-f, --format <format>","Output format").action(async t=>{try{let e={connectionId:t.connection,kind:(t.kind??"DISCOVERY").toUpperCase()},n=await b$1(W,{input:e});i(`Sync run started: ${n.adaStartSyncRun.id}`),h$1(t,n.adaStartSyncRun);}catch(e){g(e);}}),o$1.command("complete").description("Mark a sync run complete").argument("<id>","Sync run ID").option("--discovered-count <n>","Discovered count",p).option("--reconciled-count <n>","Reconciled count",p).option("--drift-count <n>","Drift count",p).option("--violation-count <n>","Violation count",p).option("--summary <json>","Summary JSON").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};e.discoveredCount!==void 0&&(n.discoveredCount=e.discoveredCount),e.reconciledCount!==void 0&&(n.reconciledCount=e.reconciledCount),e.driftCount!==void 0&&(n.driftCount=e.driftCount),e.violationCount!==void 0&&(n.violationCount=e.violationCount),e.summary&&(n.summary=u("summary",e.summary));let g=await b$1(H,{id:t,input:Object.keys(n).length?n:void 0});i(`Sync run completed: ${g.adaCompleteSyncRun.status}`),h$1(e,g.adaCompleteSyncRun);}catch(n){g(n);}}),o$1.command("cancel").description("Cancel a sync run").argument("<id>","Sync run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(K,{id:t});i(`Sync run cancelled: ${n.adaCancelSyncRun.status}`),h$1(e,n.adaCancelSyncRun);}catch(n){g(n);}}),o$1.command("fail").description("Mark a sync run failed").argument("<id>","Sync run ID").requiredOption("--error <e>","Error message").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(B,{id:t,error:e.error});i(`Sync run failed: ${n.adaFailSyncRun.status}`),h$1(e,n.adaFailSyncRun);}catch(n){g(n);}});}function pt(d){let o=d.command("cost").description("AdapterCloud cost records & summaries");o.command("summary").description("Aggregate spend grouped by service").option("--connection <id>","Scope summary to a connection").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(z,{connectionId:t.connection});h$1(t,e.adaCostSummary,{headers:["Service","Total"],rows:e.adaCostSummary.lines.map(n=>[n.service,String(n.total)])});}catch(e){g(e);}}),o.command("list").description("List cost records").option("--connection <id>","Filter by connection ID").option("--resource <id>","Filter by resource ID").option("--service <s>","Filter by service").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(Q,{connectionId:t.connection,resourceId:t.resource,service:t.service});h$1(t,e.adaListCostRecords,{headers:["ID","Service","Amount","Currency","Period start","Period end"],rows:e.adaListCostRecords.map(n=>[p$1(n.id,12),n.service,String(n.amount),n.currency,n.periodStart,n.periodEnd])});}catch(e){g(e);}}),o.command("ingest").description("Ingest a cost record").requiredOption("--service <s>","Service name").requiredOption("--amount <n>","Amount",R).requiredOption("--period-start <iso>","Period start (ISO date)").requiredOption("--period-end <iso>","Period end (ISO date)").option("--currency <c>","Currency code").option("--connection <id>","Connection ID").option("--resource <id>","Resource ID").option("--breakdown <json>","Breakdown JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={service:t.service,amount:t.amount,periodStart:t.periodStart,periodEnd:t.periodEnd};t.currency&&(e.currency=t.currency),t.connection&&(e.connectionId=t.connection),t.resource&&(e.resourceId=t.resource),t.breakdown&&(e.breakdown=u("breakdown",t.breakdown));let n=await b$1(X,{input:e});i(`Cost ingested: ${n.adaIngestCost.service} ${n.adaIngestCost.amount}`),h$1(t,n.adaIngestCost);}catch(e){g(e);}});}function ut(d){let o=d.command("drift").description("AdapterCloud drift records");o.command("list").description("List drift records").option("--resource <id>","Filter by resource ID").option("--status <s>","Filter by drift status").option("-f, --format <format>","Output format").action(async t=>{try{let e=await b$1(Z,{resourceId:t.resource,status:t.status?t.status.toUpperCase():void 0});h$1(t,e.adaListDriftRecords,{headers:["ID","Resource","Attribute","Severity","Status"],rows:e.adaListDriftRecords.map(n=>[p$1(n.id,12),p$1(n.resourceId,12),n.attributePath,n.severity,n.status])});}catch(e){g(e);}}),o.command("record").description("Record a drift observation").requiredOption("--resource <id>","Resource ID").requiredOption("--attribute-path <p>","Attribute path").option("--severity <s>","Severity").option("--expected <json>","Expected value JSON").option("--observed <json>","Observed value JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={resourceId:t.resource,attributePath:t.attributePath};t.severity&&(e.severity=t.severity.toUpperCase()),t.expected&&(e.expectedValue=u("expected",t.expected)),t.observed&&(e.observedValue=u("observed",t.observed));let n=await b$1(tt,{input:e});i("Drift recorded"),h$1(t,n.adaRecordDrift);}catch(e){g(e);}}),o.command("remediate").description("Mark a drift record remediated").argument("<id>","Drift record ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await b$1(et,{id:t});i(`Drift remediated: ${n.adaRemediateDrift.status}`),h$1(e,n.adaRemediateDrift);}catch(n){g(n);}});}function mt(d){let o=d.command("topology").description("AdapterCloud topology edges");o.command("list").description("List topology edges").option("--resource <id>","Filter by resource ID (either endpoint)").option("--kind <k>","Filter by edge kind").option("-f, --format <format>","Output format").action(async t=>{try{let e=[],n=0;for(;;){let I=(await b$1(nt,{resourceId:t.resource,kind:t.kind?t.kind.toUpperCase():void 0,pagination:{limit:100,offset:n}})).adaListTopologyEdges;if(e.push(...I.items),!I.pageInfo.hasMore||I.items.length===0)break;n+=I.items.length;}h$1(t,e,{headers:["ID","From","To","Kind","Bidirectional","Weight"],rows:e.map(g=>[p$1(g.id,12),p$1(g.fromResourceId,12),p$1(g.toResourceId,12),g.kind,g.bidirectional?"yes":"no",String(g.weight)])});}catch(e){g(e);}}),o.command("create").description("Create a topology edge").requiredOption("--from <id>","From resource ID").requiredOption("--to <id>","To resource ID").option("--kind <k>","Edge kind","DEPENDS_ON").option("--bidirectional","Mark edge bidirectional").option("--weight <n>","Edge weight",p).option("--attributes <json>","Attributes JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={fromResourceId:t.from,toResourceId:t.to,kind:(t.kind??"DEPENDS_ON").toUpperCase()};t.bidirectional&&(e.bidirectional=!0),t.weight!==void 0&&(e.weight=t.weight),t.attributes&&(e.attributes=u("attributes",t.attributes));let n=await b$1(ot,{input:e});i(`Topology edge created: ${n.adaCreateTopologyEdge.id}`),h$1(t,n.adaCreateTopologyEdge);}catch(e){g(e);}});}function gt(d$1){d$1.command("health").description("AdapterCloud service health check (public)").option("-f, --format <format>","Output format").action(async o=>{try{let t=await d(it);i(t.adaHealth),h$1(o,{health:t.adaHealth});}catch(t){g(t);}});}var ft={id:"adaptercloud",version:"1.0.0",displayName:"AdapterCloud",dependsOn:["auth","workspaces"],register(d,o){a(o);let t=d.command("adaptercloud").description("AdapterCloud multi-cloud adapter control plane");rt(t),at(t),st(t),dt(t),ct(t),pt(t),ut(t),mt(t),gt(t);}},ie=ft;export{ie as default};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@burdenoff/cli-sdk",
|
|
3
|
-
"version": "2026.
|
|
3
|
+
"version": "2026.825.1",
|
|
4
4
|
"description": "Modular CLI SDK shared across all Burdenoff product CLIs (vibecontrols, botlit, fluidgrids, bigconsole, healthybowl, devportal, workspaces). Each module exports CliModule contract; product CLIs become thin shells that pick which modules to mount.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
},
|
|
31
31
|
"scripts": {
|
|
32
32
|
"dev": "TSUP_DEV=1 tsup --watch",
|
|
33
|
-
"build": "tsup",
|
|
33
|
+
"build": "NODE_OPTIONS=--max-old-space-size=6144 tsup",
|
|
34
34
|
"type-check": "bash scripts/build-limits.sh tsc --noEmit",
|
|
35
35
|
"lint": "eslint src --fix",
|
|
36
36
|
"lint:check": "eslint src",
|