@prisma/compute-sdk 0.20.0 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/dist/api-client.d.ts +105 -0
- package/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +39 -0
- package/dist/api-client.js.map +1 -1
- package/dist/artifact-postprocess.d.ts +7 -0
- package/dist/artifact-postprocess.d.ts.map +1 -0
- package/dist/artifact-postprocess.js +54 -0
- package/dist/artifact-postprocess.js.map +1 -0
- package/dist/compute-client.d.ts.map +1 -1
- package/dist/compute-client.js +73 -35
- package/dist/compute-client.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/nextjs-build.d.ts.map +1 -1
- package/dist/nextjs-build.js +2 -0
- package/dist/nextjs-build.js.map +1 -1
- package/dist/upload-artifact.d.ts +5 -0
- package/dist/upload-artifact.d.ts.map +1 -0
- package/dist/upload-artifact.js +27 -0
- package/dist/upload-artifact.js.map +1 -0
- package/package.json +2 -2
- package/src/api-client.ts +89 -0
- package/src/artifact-postprocess.ts +74 -0
- package/src/compute-client.ts +142 -36
- package/src/errors.ts +1 -0
- package/src/index.ts +3 -0
- package/src/nextjs-build.ts +3 -0
- package/src/upload-artifact.ts +30 -0
package/README.md
CHANGED
|
@@ -104,6 +104,8 @@ const result = await compute.deploy({
|
|
|
104
104
|
serviceId: "svc_xyz",
|
|
105
105
|
|
|
106
106
|
// Optional
|
|
107
|
+
// Stored through the environment-variable API before the version is created.
|
|
108
|
+
// Production services use project vars; preview-branch services use branch overrides.
|
|
107
109
|
envVars: { DATABASE_URL: "postgresql://..." },
|
|
108
110
|
portMapping: { http: 3000 },
|
|
109
111
|
timeoutSeconds: 120, // max time to wait for "running" status
|
|
@@ -138,7 +140,7 @@ if (result.isOk()) {
|
|
|
138
140
|
|
|
139
141
|
#### `updateEnv(options): Promise<Result<UpdateEnvResult, UpdateEnvError>>`
|
|
140
142
|
|
|
141
|
-
|
|
143
|
+
Updates project environment variables and/or port mapping, then creates a new version that reuses the code from the most recent deployment. Preview-branch services update preview branch overrides.
|
|
142
144
|
|
|
143
145
|
```ts
|
|
144
146
|
const result = await compute.updateEnv({
|
package/dist/api-client.d.ts
CHANGED
|
@@ -95,6 +95,7 @@ export declare class InternalApiClient {
|
|
|
95
95
|
type: "database";
|
|
96
96
|
databaseId: string;
|
|
97
97
|
} | null;
|
|
98
|
+
branchId: string | null;
|
|
98
99
|
apiKeys: {
|
|
99
100
|
id: string;
|
|
100
101
|
type: "connection";
|
|
@@ -200,6 +201,7 @@ export declare class InternalApiClient {
|
|
|
200
201
|
type: "database";
|
|
201
202
|
databaseId: string;
|
|
202
203
|
} | null;
|
|
204
|
+
branchId: string | null;
|
|
203
205
|
apiKeys: {
|
|
204
206
|
id: string;
|
|
205
207
|
type: "connection";
|
|
@@ -271,6 +273,7 @@ export declare class InternalApiClient {
|
|
|
271
273
|
name: string;
|
|
272
274
|
};
|
|
273
275
|
projectId: string;
|
|
276
|
+
branchId: string | null;
|
|
274
277
|
latestVersionId: string | null;
|
|
275
278
|
serviceEndpointDomain: string;
|
|
276
279
|
createdAt: string;
|
|
@@ -285,6 +288,7 @@ export declare class InternalApiClient {
|
|
|
285
288
|
name: string;
|
|
286
289
|
};
|
|
287
290
|
projectId: string;
|
|
291
|
+
branchId: string | null;
|
|
288
292
|
latestVersionId: string | null;
|
|
289
293
|
serviceEndpointDomain: string;
|
|
290
294
|
createdAt: string;
|
|
@@ -298,6 +302,7 @@ export declare class InternalApiClient {
|
|
|
298
302
|
name: string;
|
|
299
303
|
};
|
|
300
304
|
projectId: string;
|
|
305
|
+
branchId: string | null;
|
|
301
306
|
latestVersionId: string | null;
|
|
302
307
|
serviceEndpointDomain: string;
|
|
303
308
|
createdAt: string;
|
|
@@ -312,6 +317,7 @@ export declare class InternalApiClient {
|
|
|
312
317
|
name: string;
|
|
313
318
|
};
|
|
314
319
|
projectId: string;
|
|
320
|
+
branchId: string | null;
|
|
315
321
|
latestVersionId: string | null;
|
|
316
322
|
serviceEndpointDomain: string;
|
|
317
323
|
createdAt: string;
|
|
@@ -325,10 +331,40 @@ export declare class InternalApiClient {
|
|
|
325
331
|
name: string;
|
|
326
332
|
};
|
|
327
333
|
projectId: string;
|
|
334
|
+
branchId: string | null;
|
|
328
335
|
latestVersionId: string | null;
|
|
329
336
|
serviceEndpointDomain: string;
|
|
330
337
|
createdAt: string;
|
|
331
338
|
}, ApiClientError>>;
|
|
339
|
+
getBranch(branchId: string, signal?: AbortSignal): Promise<import("better-result").Err<{
|
|
340
|
+
id: string;
|
|
341
|
+
type: "branch";
|
|
342
|
+
url: string;
|
|
343
|
+
gitName: string;
|
|
344
|
+
isDefault: boolean;
|
|
345
|
+
role: "production" | "preview";
|
|
346
|
+
createdAt: string;
|
|
347
|
+
updatedAt: string;
|
|
348
|
+
project: {
|
|
349
|
+
id: string;
|
|
350
|
+
url: string;
|
|
351
|
+
name: string;
|
|
352
|
+
};
|
|
353
|
+
}, ApiClientError> | import("better-result").Ok<{
|
|
354
|
+
id: string;
|
|
355
|
+
type: "branch";
|
|
356
|
+
url: string;
|
|
357
|
+
gitName: string;
|
|
358
|
+
isDefault: boolean;
|
|
359
|
+
role: "production" | "preview";
|
|
360
|
+
createdAt: string;
|
|
361
|
+
updatedAt: string;
|
|
362
|
+
project: {
|
|
363
|
+
id: string;
|
|
364
|
+
url: string;
|
|
365
|
+
name: string;
|
|
366
|
+
};
|
|
367
|
+
}, ApiClientError>>;
|
|
332
368
|
deleteService(computeServiceId: string, signal?: AbortSignal): Promise<Result<void, ApiClientError>>;
|
|
333
369
|
listServiceVersions(computeServiceId: string, signal?: AbortSignal): Promise<Result<{
|
|
334
370
|
id: string;
|
|
@@ -388,9 +424,75 @@ export declare class InternalApiClient {
|
|
|
388
424
|
deleteVersion(versionId: string, signal?: AbortSignal): Promise<Result<void, ApiClientError>>;
|
|
389
425
|
promoteService(computeServiceId: string, body: PromoteServiceBody, signal?: AbortSignal): Promise<import("better-result").Err<{
|
|
390
426
|
serviceEndpointDomain: string;
|
|
427
|
+
reassignedDomains: number;
|
|
391
428
|
}, ApiClientError> | import("better-result").Ok<{
|
|
392
429
|
serviceEndpointDomain: string;
|
|
430
|
+
reassignedDomains: number;
|
|
431
|
+
}, ApiClientError>>;
|
|
432
|
+
listEnvironmentVariables(query: ListEnvironmentVariablesQuery, signal?: AbortSignal): Promise<Result<{
|
|
433
|
+
id: string;
|
|
434
|
+
type: "environment-variable";
|
|
435
|
+
url: string;
|
|
436
|
+
projectId: string;
|
|
437
|
+
branchId: string | null;
|
|
438
|
+
class: "production" | "preview";
|
|
439
|
+
key: string;
|
|
440
|
+
valueKid: string;
|
|
441
|
+
isManagedBySystem: boolean;
|
|
442
|
+
createdAt: string;
|
|
443
|
+
updatedAt: string;
|
|
444
|
+
}[], ApiClientError>>;
|
|
445
|
+
createEnvironmentVariable(body: CreateEnvironmentVariableBody, signal?: AbortSignal): Promise<import("better-result").Err<{
|
|
446
|
+
id: string;
|
|
447
|
+
type: "environment-variable";
|
|
448
|
+
url: string;
|
|
449
|
+
projectId: string;
|
|
450
|
+
branchId: string | null;
|
|
451
|
+
class: "production" | "preview";
|
|
452
|
+
key: string;
|
|
453
|
+
valueKid: string;
|
|
454
|
+
isManagedBySystem: boolean;
|
|
455
|
+
createdAt: string;
|
|
456
|
+
updatedAt: string;
|
|
457
|
+
}, ApiClientError> | import("better-result").Ok<{
|
|
458
|
+
id: string;
|
|
459
|
+
type: "environment-variable";
|
|
460
|
+
url: string;
|
|
461
|
+
projectId: string;
|
|
462
|
+
branchId: string | null;
|
|
463
|
+
class: "production" | "preview";
|
|
464
|
+
key: string;
|
|
465
|
+
valueKid: string;
|
|
466
|
+
isManagedBySystem: boolean;
|
|
467
|
+
createdAt: string;
|
|
468
|
+
updatedAt: string;
|
|
469
|
+
}, ApiClientError>>;
|
|
470
|
+
updateEnvironmentVariable(envVarId: string, body: UpdateEnvironmentVariableBody, signal?: AbortSignal): Promise<import("better-result").Err<{
|
|
471
|
+
id: string;
|
|
472
|
+
type: "environment-variable";
|
|
473
|
+
url: string;
|
|
474
|
+
projectId: string;
|
|
475
|
+
branchId: string | null;
|
|
476
|
+
class: "production" | "preview";
|
|
477
|
+
key: string;
|
|
478
|
+
valueKid: string;
|
|
479
|
+
isManagedBySystem: boolean;
|
|
480
|
+
createdAt: string;
|
|
481
|
+
updatedAt: string;
|
|
482
|
+
}, ApiClientError> | import("better-result").Ok<{
|
|
483
|
+
id: string;
|
|
484
|
+
type: "environment-variable";
|
|
485
|
+
url: string;
|
|
486
|
+
projectId: string;
|
|
487
|
+
branchId: string | null;
|
|
488
|
+
class: "production" | "preview";
|
|
489
|
+
key: string;
|
|
490
|
+
valueKid: string;
|
|
491
|
+
isManagedBySystem: boolean;
|
|
492
|
+
createdAt: string;
|
|
493
|
+
updatedAt: string;
|
|
393
494
|
}, ApiClientError>>;
|
|
495
|
+
deleteEnvironmentVariable(envVarId: string, signal?: AbortSignal): Promise<Result<void, ApiClientError>>;
|
|
394
496
|
}
|
|
395
497
|
type SdkCreateProjectBody = NonNullable<paths["/v1/projects"]["post"]["requestBody"]>["content"]["application/json"];
|
|
396
498
|
type CreateProjectBody = Omit<SdkCreateProjectBody, "region"> & {
|
|
@@ -402,6 +504,9 @@ type CreateProjectServiceBody = Omit<SdkCreateProjectServiceBody, "regionId"> &
|
|
|
402
504
|
};
|
|
403
505
|
export type CreateServiceVersionBody = NonNullable<paths["/v1/compute-services/{computeServiceId}/versions"]["post"]["requestBody"]>["content"]["application/json"];
|
|
404
506
|
export type PromoteServiceBody = NonNullable<paths["/v1/compute-services/{computeServiceId}/promote"]["post"]["requestBody"]>["content"]["application/json"];
|
|
507
|
+
type ListEnvironmentVariablesQuery = NonNullable<paths["/v1/environment-variables"]["get"]["parameters"]["query"]>;
|
|
508
|
+
type CreateEnvironmentVariableBody = NonNullable<paths["/v1/environment-variables"]["post"]["requestBody"]>["content"]["application/json"];
|
|
509
|
+
type UpdateEnvironmentVariableBody = NonNullable<paths["/v1/environment-variables/{envVarId}"]["patch"]["requestBody"]>["content"]["application/json"];
|
|
405
510
|
/** Extract the upload URL from a version creation response. */
|
|
406
511
|
export declare function readUploadUrl(data: {
|
|
407
512
|
uploadUrl?: string | null;
|
package/dist/api-client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE5E,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG,mBAAmB,GAAG,QAAQ,CAAC;AAE7E;;;;;;GAMG;AACH,qBAAa,iBAAiB;;gBAGhB,MAAM,EAAE,mBAAmB;IAIjC,YAAY,CAAC,MAAM,CAAC,EAAE,WAAW;;;;;;;;;;;;;IAYjC,aAAa,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
|
package/dist/api-client.js
CHANGED
|
@@ -53,6 +53,12 @@ export class InternalApiClient {
|
|
|
53
53
|
signal,
|
|
54
54
|
}), "/v1/compute-services/{computeServiceId}", signal).then((r) => r.map((body) => body.data));
|
|
55
55
|
}
|
|
56
|
+
async getBranch(branchId, signal) {
|
|
57
|
+
return this.#request(this.#client.GET("/v1/branches/{branchId}", {
|
|
58
|
+
params: { path: { branchId } },
|
|
59
|
+
signal,
|
|
60
|
+
}), "/v1/branches/{branchId}", signal).then((r) => r.map((body) => body.data));
|
|
61
|
+
}
|
|
56
62
|
async deleteService(computeServiceId, signal) {
|
|
57
63
|
signal?.throwIfAborted();
|
|
58
64
|
return this.#unwrapVoid(this.#client.DELETE("/v1/compute-services/{computeServiceId}", {
|
|
@@ -118,6 +124,39 @@ export class InternalApiClient {
|
|
|
118
124
|
// Aborting transport can leave remote completion ambiguous.
|
|
119
125
|
}), "/v1/compute-services/{computeServiceId}/promote", signal).then((r) => r.map((body) => body.data));
|
|
120
126
|
}
|
|
127
|
+
async listEnvironmentVariables(query, signal) {
|
|
128
|
+
return this.#requestPaginated((cursor) => this.#client.GET("/v1/environment-variables", {
|
|
129
|
+
params: {
|
|
130
|
+
query: cursor ? { ...query, cursor } : query,
|
|
131
|
+
},
|
|
132
|
+
signal,
|
|
133
|
+
}), "/v1/environment-variables", signal);
|
|
134
|
+
}
|
|
135
|
+
async createEnvironmentVariable(body, signal) {
|
|
136
|
+
signal?.throwIfAborted();
|
|
137
|
+
return this.#request(this.#client.POST("/v1/environment-variables", {
|
|
138
|
+
body,
|
|
139
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
140
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
141
|
+
}), "/v1/environment-variables", signal).then((r) => r.map((body) => body.data));
|
|
142
|
+
}
|
|
143
|
+
async updateEnvironmentVariable(envVarId, body, signal) {
|
|
144
|
+
signal?.throwIfAborted();
|
|
145
|
+
return this.#request(this.#client.PATCH("/v1/environment-variables/{envVarId}", {
|
|
146
|
+
params: { path: { envVarId } },
|
|
147
|
+
body,
|
|
148
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
149
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
150
|
+
}), "/v1/environment-variables/{envVarId}", signal).then((r) => r.map((body) => body.data));
|
|
151
|
+
}
|
|
152
|
+
async deleteEnvironmentVariable(envVarId, signal) {
|
|
153
|
+
signal?.throwIfAborted();
|
|
154
|
+
return this.#unwrapVoid(this.#client.DELETE("/v1/environment-variables/{envVarId}", {
|
|
155
|
+
params: { path: { envVarId } },
|
|
156
|
+
// Intentionally do not pass AbortSignal for mutating operations.
|
|
157
|
+
// Aborting transport can leave remote completion ambiguous.
|
|
158
|
+
}), signal);
|
|
159
|
+
}
|
|
121
160
|
async #request(request, endpoint, signal) {
|
|
122
161
|
let result;
|
|
123
162
|
try {
|
package/dist/api-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI5E;;;;;;GAMG;AACH,MAAM,OAAO,iBAAiB;IACnB,OAAO,CAAsB;IAEtC,YAAY,MAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAoB;QACrC,OAAO,IAAI,CAAC,iBAAiB,CAC3B,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;YAC/B,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3C,MAAM;SACP,CAAC,EACJ,cAAc,EACd,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAuB,EAAE,MAAoB;QAC/D,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE;YAChC,IAAI,EAAE,IAA4B;YAClC,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,cAAc,EACd,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAU,EAAE,MAAoB;QAC/C,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE;YACpC,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE;YACxB,MAAM;SACP,CAAC,EACF,mBAAmB,EACnB,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,SAAiB,EAAE,MAAoB;QAC/D,OAAO,IAAI,CAAC,iBAAiB,CAC3B,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,2CAA2C,EAAE;YAC5D,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YAChE,MAAM;SACP,CAAC,EACJ,2CAA2C,EAC3C,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,SAAiB,EACjB,IAA8B,EAC9B,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,2CAA2C,EAAE;YAC7D,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE;YAC/B,IAAI,EAAE,IAAmC;YACzC,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,2CAA2C,EAC3C,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,gBAAwB,EAAE,MAAoB;QAC7D,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE;YAC1D,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,EAAE;YACtC,MAAM;SACP,CAAC,EACF,yCAAyC,EACzC,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,MAAoB;QACpD,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE;YAC1C,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE;YAC9B,MAAM;SACP,CAAC,EACF,yBAAyB,EACzB,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,gBAAwB,EACxB,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,WAAW,CACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,yCAAyC,EAAE;YAC7D,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,EAAE;YACtC,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,gBAAwB,EAAE,MAAoB;QACtE,OAAO,IAAI,CAAC,iBAAiB,CAC3B,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kDAAkD,EAAE;YACnE,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,gBAAgB,EAAE;gBAC1B,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;aAChC;YACD,MAAM;SACP,CAAC,EACJ,kDAAkD,EAClD,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,gBAAwB,EACxB,IAA+B,EAC/B,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kDAAkD,EAAE;YACpE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,EAAE;YACtC,IAAI;YACJ,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,kDAAkD,EAClD,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,MAAoB;QACtD,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,2CAA2C,EAAE;YAC5D,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE;YAC/B,MAAM;SACP,CAAC,EACF,2CAA2C,EAC3C,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB,EAAE,MAAoB;QACxD,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iDAAiD,EAAE;YACnE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE;YAC/B,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,iDAAiD,EACjD,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,WAAW,CACf,SAAiB,EACjB,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,WAAW,CACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gDAAgD,EAAE;YAClE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE;YAC/B,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,SAAiB,EACjB,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,WAAW,CACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,2CAA2C,EAAE;YAC/D,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE;YAC/B,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,gBAAwB,EACxB,IAAwB,EACxB,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iDAAiD,EAAE;YACnE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,EAAE;YACtC,IAAI;YACJ,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,iDAAiD,EACjD,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,KAAoC,EACpC,MAAoB;QAEpB,OAAO,IAAI,CAAC,iBAAiB,CAC3B,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE;YAC5C,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK;aAC7C;YACD,MAAM;SACP,CAAC,EACJ,2BAA2B,EAC3B,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,IAAmC,EACnC,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE;YAC7C,IAAI;YACJ,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,2BAA2B,EAC3B,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,QAAgB,EAChB,IAAmC,EACnC,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE;YACzD,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE;YAC9B,IAAI;YACJ,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,sCAAsC,EACtC,MAAM,CACP,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,QAAgB,EAChB,MAAoB;QAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,WAAW,CACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,sCAAsC,EAAE;YAC1D,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE;YAC9B,iEAAiE;YACjE,4DAA4D;SAC7D,CAAC,EACF,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,OAAsC,EACtC,QAAgB,EAChB,MAAoB;QAEpB,IAAI,MAA4B,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,OAAO,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC,GAAG,CACf,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CACzD,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC,GAAG,CACf,iBAAiB,CACf,SAAS,EACT,SAAS,EACT,MAAM,EACN,sDAAsD,QAAQ,EAAE,CACjE,CACF,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,WAKC,EACD,QAAgB,EAChB,MAAoB;QAEpB,MAAM,QAAQ,GAAY,EAAE,CAAC;QAC7B,IAAI,MAA0B,CAAC;QAE/B,SAAS,CAAC;YACR,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC1E,IAAI,MAAM,CAAC,KAAK,EAAE;gBAAE,OAAO,MAAM,CAAC;YAElC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEpC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,CAAC;YACvD,IAAI,CAAC,UAAU;gBAAE,MAAM;YACvB,MAAM,GAAG,UAAU,CAAC;QACtB,CAAC;QAED,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,WAAW,CACf,OAAwC,EACxC,MAAoB;QAEpB,IAAI,MAA8B,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,OAAO,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC,GAAG,CACf,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CACzD,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;CACF;AA6CD,MAAM,kBAAkB,GAAG;IACzB,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,kBAAkB;IAClB,aAAa;IACb,QAAQ;IACR,cAAc;CACN,CAAC;AAEX,SAAS,mBAAmB,CAAC,QAAmB;IAC9C,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC;IAE9B,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACxB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,aAAa,CACpB,KAAc,EACd,QAAmB,EACnB,eAAwB;IAExB,MAAM,YAAY,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAEnD,IAAI,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;QAC7B,OAAO,IAAI,mBAAmB,CAAC;YAC7B,UAAU,EAAE,GAAG;YACf,OAAO,EAAE,kCAAkC;SAC5C,CAAC,CAAC;IACL,CAAC;IAED,MAAM,GAAG,GAAG,KAOC,CAAC;IAEd,MAAM,OAAO,GACX,GAAG,EAAE,KAAK,EAAE,OAAO;QACnB,GAAG,EAAE,OAAO;QACZ,eAAe;QACf,4BAA4B,QAAQ,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC;IAE9D,MAAM,IAAI,GAAG,GAAG,EAAE,KAAK,EAAE,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC;IAC3C,MAAM,IAAI,GAAG,GAAG,EAAE,KAAK,EAAE,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC;IAE3C,OAAO,IAAI,QAAQ,CAAC;QAClB,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;QACjC,UAAU,EAAE,QAAQ,EAAE,UAAU,IAAI,EAAE;QACtC,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAc,EACd,QAAmB,EACnB,MAAoB,EACpB,eAAwB;IAExB,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,OAAO,IAAI,cAAc,EAAE,CAAC;IAC9B,CAAC;IACD,OAAO,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;AACzD,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,aAAa,CAAC,IAE7B;IACC,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpE,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IAC/C,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,UAAU,EAAE,CAAC;IAC9D,IAAI,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IACxD,OAAO,WAAW,UAAU,EAAE,CAAC;AACjC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Materialize symlinks inside a build artifact that point outside the artifact
|
|
3
|
+
* directory but still live under the original app tree (typical for Next.js
|
|
4
|
+
* standalone output referencing monorepo node_modules).
|
|
5
|
+
*/
|
|
6
|
+
export declare function normalizeArtifactSymlinks(artifactDir: string, appPath: string, signal?: AbortSignal): Promise<void>;
|
|
7
|
+
//# sourceMappingURL=artifact-postprocess.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifact-postprocess.d.ts","sourceRoot":"","sources":["../src/artifact-postprocess.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAkDf"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { cp, readdir, readlink, realpath, rm, stat } from "node:fs/promises";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
/**
|
|
4
|
+
* Materialize symlinks inside a build artifact that point outside the artifact
|
|
5
|
+
* directory but still live under the original app tree (typical for Next.js
|
|
6
|
+
* standalone output referencing monorepo node_modules).
|
|
7
|
+
*/
|
|
8
|
+
export async function normalizeArtifactSymlinks(artifactDir, appPath, signal) {
|
|
9
|
+
signal?.throwIfAborted();
|
|
10
|
+
const normalizedArtifactDir = await realpath(path.resolve(artifactDir));
|
|
11
|
+
const normalizedAppPath = await realpath(path.resolve(appPath));
|
|
12
|
+
await walkDirectory(path.resolve(artifactDir));
|
|
13
|
+
async function walkDirectory(directory) {
|
|
14
|
+
signal?.throwIfAborted();
|
|
15
|
+
const entries = await readdir(directory, { withFileTypes: true });
|
|
16
|
+
for (const entry of entries) {
|
|
17
|
+
const fullPath = path.join(directory, entry.name);
|
|
18
|
+
if (entry.isDirectory()) {
|
|
19
|
+
await walkDirectory(fullPath);
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
if (!entry.isSymbolicLink()) {
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
const target = await readlink(fullPath);
|
|
26
|
+
const resolvedTarget = path.resolve(path.dirname(fullPath), target);
|
|
27
|
+
const realTarget = await realpath(resolvedTarget);
|
|
28
|
+
if (isPathWithin(normalizedArtifactDir, realTarget)) {
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
if (!isPathWithin(normalizedAppPath, realTarget)) {
|
|
32
|
+
throw new Error(`Build artifact symlink escapes the app directory: ${realTarget}`);
|
|
33
|
+
}
|
|
34
|
+
const targetStat = await stat(realTarget);
|
|
35
|
+
await rm(fullPath, { force: true, recursive: true });
|
|
36
|
+
await cp(realTarget, fullPath, {
|
|
37
|
+
recursive: targetStat.isDirectory(),
|
|
38
|
+
// Keep nested symlinks intact so walkDirectory can validate each one.
|
|
39
|
+
dereference: false,
|
|
40
|
+
});
|
|
41
|
+
if (targetStat.isDirectory()) {
|
|
42
|
+
await walkDirectory(fullPath);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function isPathWithin(rootPath, candidatePath) {
|
|
48
|
+
const relativePath = path.relative(rootPath, candidatePath);
|
|
49
|
+
return (relativePath === "" ||
|
|
50
|
+
(!relativePath.startsWith(`..${path.sep}`) &&
|
|
51
|
+
relativePath !== ".." &&
|
|
52
|
+
!path.isAbsolute(relativePath)));
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=artifact-postprocess.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifact-postprocess.js","sourceRoot":"","sources":["../src/artifact-postprocess.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,WAAmB,EACnB,OAAe,EACf,MAAoB;IAEpB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,MAAM,qBAAqB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACxE,MAAM,iBAAiB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAEhE,MAAM,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAE/C,KAAK,UAAU,aAAa,CAAC,SAAiB;QAC5C,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAElE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAElD,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;gBAC9B,SAAS;YACX,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC5B,SAAS;YACX,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;YACpE,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,CAAC;YAElD,IAAI,YAAY,CAAC,qBAAqB,EAAE,UAAU,CAAC,EAAE,CAAC;gBACpD,SAAS;YACX,CAAC;YAED,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CACb,qDAAqD,UAAU,EAAE,CAClE,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC;YAC1C,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,MAAM,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE;gBAC7B,SAAS,EAAE,UAAU,CAAC,WAAW,EAAE;gBACnC,sEAAsE;gBACtE,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YAEH,IAAI,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC7B,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,QAAgB,EAAE,aAAqB;IAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAE5D,OAAO,CACL,YAAY,KAAK,EAAE;QACnB,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;YACxC,YAAY,KAAK,IAAI;YACrB,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAClC,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compute-client.d.ts","sourceRoot":"","sources":["../src/compute-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAgB,MAAM,EAAE,MAAM,eAAe,CAAC;AAQrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,KAAK,eAAe,EAKpB,KAAK,WAAW,EAEhB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EAKxB,KAAK,YAAY,EACjB,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EACV,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,EACb,WAAW,EACZ,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"compute-client.d.ts","sourceRoot":"","sources":["../src/compute-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAgB,MAAM,EAAE,MAAM,eAAe,CAAC;AAQrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,KAAK,eAAe,EAKpB,KAAK,WAAW,EAEhB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EAKxB,KAAK,YAAY,EACjB,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EACV,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,EACb,WAAW,EACZ,MAAM,YAAY,CAAC;AAQpB,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,aAAa,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,qBAAqB,EAAE,SAAS,GAAG,WAAW,GAAG,cAAc,GAAG,IAAI,CAAC;IACvE,cAAc,EAAE,cAAc,CAAC;CAChC;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,cAAc,CAAC;CAChC;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,cAAc,EAAE,OAAO,CAAC;CACzB;AAKD,qBAAa,aAAa;;gBAGZ,mBAAmB,EAAE,mBAAmB;IAI9C,MAAM,CACV,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAgLvC,SAAS,CACb,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IA8E7C,cAAc,CAClB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;IAwFvD,cAAc,CAClB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;IAkJvD,aAAa,CACjB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAqClD,YAAY,CAChB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,eAAe,CAAC,CAAC;IAmB5C,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,eAAe,CAAC,CAAC;IAoB5C,aAAa,CACjB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAuB1C,WAAW,CACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAkB5C,aAAa,CACjB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAWnC,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,eAAe,CAAC,CAAC;IAkC5C,WAAW,CACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAiB5C,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAWnC,WAAW,CACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAWnC,aAAa,CACjB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAWnC,OAAO,CACX,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;CAofhD"}
|
package/dist/compute-client.js
CHANGED
|
@@ -5,6 +5,7 @@ import { createArchive } from "./archive.js";
|
|
|
5
5
|
import { ApiError, ArtifactError, BuildError, CancelledError, DestroyAggregateError, InvalidOptionsError, MissingArgumentError, NoExistingVersionError, NoVersionsFoundError, } from "./errors.js";
|
|
6
6
|
import { pollVersionStatus } from "./polling.js";
|
|
7
7
|
import { REGIONS } from "./types.js";
|
|
8
|
+
import { uploadArtifact } from "./upload-artifact.js";
|
|
8
9
|
const DEFAULT_TIMEOUT_SECONDS = 120;
|
|
9
10
|
const DEFAULT_POLL_INTERVAL_MS = 1_000;
|
|
10
11
|
export class ComputeClient {
|
|
@@ -48,10 +49,8 @@ export class ComputeClient {
|
|
|
48
49
|
(target.isNewService && artifact.defaultPortMapping
|
|
49
50
|
? artifact.defaultPortMapping
|
|
50
51
|
: undefined);
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
portMapping,
|
|
54
|
-
}, options.signal));
|
|
52
|
+
yield* Result.await(self.#applyEnvVars(target.projectId, target.branchId, options.envVars, options.signal));
|
|
53
|
+
const createResponse = yield* Result.await(self.#api.createServiceVersion(target.serviceId, portMapping ? { portMapping } : {}, options.signal));
|
|
55
54
|
options.progress?.onVersionCreated?.(createResponse.id);
|
|
56
55
|
const uploadUrl = readUploadUrl(createResponse);
|
|
57
56
|
if (!uploadUrl) {
|
|
@@ -61,7 +60,7 @@ export class ComputeClient {
|
|
|
61
60
|
}
|
|
62
61
|
yield* self.#checkAborted(options.signal);
|
|
63
62
|
options.progress?.onUploadStart?.();
|
|
64
|
-
yield* Result.await(self.#
|
|
63
|
+
yield* Result.await(self.#uploadArtifactResult(uploadUrl, archiveBytes, options.signal));
|
|
65
64
|
options.progress?.onUploadComplete?.();
|
|
66
65
|
yield* self.#checkAborted(options.signal);
|
|
67
66
|
const service = yield* Result.await(self.#api.getService(target.serviceId, options.signal));
|
|
@@ -131,9 +130,12 @@ export class ComputeClient {
|
|
|
131
130
|
return Result.err(new NoExistingVersionError({ serviceId: target.serviceId }));
|
|
132
131
|
}
|
|
133
132
|
yield* self.#checkAborted(options.signal);
|
|
133
|
+
yield* Result.await(self.#applyEnvVars(target.projectId, target.branchId, options.envVars, options.signal));
|
|
134
|
+
yield* self.#checkAborted(options.signal);
|
|
134
135
|
const createResponse = yield* Result.await(self.#api.createServiceVersion(target.serviceId, {
|
|
135
|
-
|
|
136
|
-
|
|
136
|
+
...(options.portMapping !== undefined
|
|
137
|
+
? { portMapping: options.portMapping }
|
|
138
|
+
: {}),
|
|
137
139
|
skipCodeUpload: true,
|
|
138
140
|
}, options.signal));
|
|
139
141
|
options.progress?.onVersionCreated?.(createResponse.id);
|
|
@@ -648,15 +650,23 @@ export class ComputeClient {
|
|
|
648
650
|
return Result.gen(async function* () {
|
|
649
651
|
if (options.serviceId) {
|
|
650
652
|
const service = yield* Result.await(self.#api.getService(options.serviceId, options.signal));
|
|
651
|
-
|
|
652
|
-
if (!projectId) {
|
|
653
|
+
if (!service.projectId) {
|
|
653
654
|
return Result.err(new MissingArgumentError({ field: "projectId" }));
|
|
654
655
|
}
|
|
656
|
+
const requestedProjectId = options.projectId?.replace(/^proj_/, "");
|
|
657
|
+
const serviceProjectId = service.projectId.replace(/^proj_/, "");
|
|
658
|
+
if (requestedProjectId !== undefined &&
|
|
659
|
+
requestedProjectId !== serviceProjectId) {
|
|
660
|
+
return Result.err(new InvalidOptionsError({
|
|
661
|
+
message: `Service ${service.id} belongs to project ${service.projectId}, but project ${options.projectId} was provided`,
|
|
662
|
+
}));
|
|
663
|
+
}
|
|
655
664
|
return Result.ok({
|
|
656
|
-
projectId,
|
|
665
|
+
projectId: service.projectId,
|
|
657
666
|
serviceId: service.id,
|
|
658
667
|
serviceName: service.name ?? service.id,
|
|
659
668
|
region: service.region.id,
|
|
669
|
+
branchId: service.branchId ?? null,
|
|
660
670
|
isNewService: false,
|
|
661
671
|
});
|
|
662
672
|
}
|
|
@@ -683,6 +693,7 @@ export class ComputeClient {
|
|
|
683
693
|
serviceId: response.id,
|
|
684
694
|
serviceName: response.name,
|
|
685
695
|
region: response.region.id,
|
|
696
|
+
branchId: response.branchId ?? null,
|
|
686
697
|
isNewService: true,
|
|
687
698
|
});
|
|
688
699
|
}
|
|
@@ -698,13 +709,15 @@ export class ComputeClient {
|
|
|
698
709
|
}
|
|
699
710
|
const selectedServiceId = await options.interaction.selectService(serviceInfos);
|
|
700
711
|
if (selectedServiceId !== null) {
|
|
701
|
-
const
|
|
702
|
-
invariant(
|
|
712
|
+
const selected = services.find((s) => s.id === selectedServiceId);
|
|
713
|
+
invariant(selected, "selectService returned service ID not in the list");
|
|
714
|
+
const service = yield* Result.await(self.#api.getService(selectedServiceId, options.signal));
|
|
703
715
|
return Result.ok({
|
|
704
716
|
projectId,
|
|
705
717
|
serviceId: selectedServiceId,
|
|
706
|
-
serviceName: service.name,
|
|
718
|
+
serviceName: service.name ?? selected.name,
|
|
707
719
|
region: service.region.id,
|
|
720
|
+
branchId: service.branchId ?? null,
|
|
708
721
|
isNewService: false,
|
|
709
722
|
});
|
|
710
723
|
}
|
|
@@ -731,34 +744,59 @@ export class ComputeClient {
|
|
|
731
744
|
serviceId: response.id,
|
|
732
745
|
serviceName: response.name,
|
|
733
746
|
region: response.region.id,
|
|
747
|
+
branchId: response.branchId ?? null,
|
|
734
748
|
isNewService: true,
|
|
735
749
|
});
|
|
736
750
|
});
|
|
737
751
|
}
|
|
738
|
-
async #
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
if (
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
message = `Artifact upload failed: ${json.error}`;
|
|
755
|
-
}
|
|
756
|
-
}
|
|
757
|
-
catch {
|
|
758
|
-
// ignore body parse failures
|
|
752
|
+
async #applyEnvVars(projectId, branchId, envVars, signal) {
|
|
753
|
+
if (!envVars || Object.keys(envVars).length === 0) {
|
|
754
|
+
return Result.ok(undefined);
|
|
755
|
+
}
|
|
756
|
+
const self = this;
|
|
757
|
+
return Result.gen(async function* () {
|
|
758
|
+
const scope = yield* Result.await(self.#resolveEnvironmentVariableScope(projectId, branchId, signal));
|
|
759
|
+
for (const [key, value] of Object.entries(envVars)) {
|
|
760
|
+
yield* self.#checkAborted(signal);
|
|
761
|
+
const existing = yield* Result.await(self.#api.listEnvironmentVariables({ ...scope, key }, signal));
|
|
762
|
+
const current = existing[0];
|
|
763
|
+
if (value === null) {
|
|
764
|
+
if (current) {
|
|
765
|
+
yield* self.#checkAborted(signal);
|
|
766
|
+
// Do not pass signal to mutating transport; aborting it can make remote completion ambiguous.
|
|
767
|
+
yield* Result.await(self.#api.deleteEnvironmentVariable(current.id));
|
|
759
768
|
}
|
|
760
|
-
|
|
769
|
+
continue;
|
|
770
|
+
}
|
|
771
|
+
if (current) {
|
|
772
|
+
yield* self.#checkAborted(signal);
|
|
773
|
+
// Do not pass signal to mutating transport; aborting it can make remote completion ambiguous.
|
|
774
|
+
yield* Result.await(self.#api.updateEnvironmentVariable(current.id, { value }));
|
|
775
|
+
continue;
|
|
761
776
|
}
|
|
777
|
+
yield* self.#checkAborted(signal);
|
|
778
|
+
// Do not pass signal to mutating transport; aborting it can make remote completion ambiguous.
|
|
779
|
+
yield* Result.await(self.#api.createEnvironmentVariable({ ...scope, key, value }));
|
|
780
|
+
}
|
|
781
|
+
return Result.ok(undefined);
|
|
782
|
+
});
|
|
783
|
+
}
|
|
784
|
+
async #resolveEnvironmentVariableScope(projectId, branchId, signal) {
|
|
785
|
+
if (!branchId) {
|
|
786
|
+
return Result.ok({ projectId, class: "production" });
|
|
787
|
+
}
|
|
788
|
+
const branch = await this.#api.getBranch(branchId, signal);
|
|
789
|
+
if (branch.isErr())
|
|
790
|
+
return branch;
|
|
791
|
+
if (branch.value.role === "preview") {
|
|
792
|
+
return Result.ok({ projectId, class: "preview", branchId });
|
|
793
|
+
}
|
|
794
|
+
return Result.ok({ projectId, class: "production" });
|
|
795
|
+
}
|
|
796
|
+
async #uploadArtifactResult(url, body, signal) {
|
|
797
|
+
return Result.tryPromise({
|
|
798
|
+
try: async () => {
|
|
799
|
+
await uploadArtifact(url, body, signal);
|
|
762
800
|
},
|
|
763
801
|
catch: (e) => {
|
|
764
802
|
if (signal?.aborted)
|