@vibesdotdev/infra-deploy 1.0.0-rc.6 → 1.0.0-rc.8
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/dist/cli/dns/infra-dns-list.cli-command.impl.d.ts +1 -1
- package/dist/cli/dns/infra-dns-list.cli-command.impl.js +1 -1
- package/dist/cli/npm/mirror-registry-artifacts.d.ts +3 -2
- package/dist/cli/npm/mirror-registry-artifacts.d.ts.map +1 -1
- package/dist/cli/npm/mirror-registry-artifacts.js +6 -4
- package/dist/cli/npm/mirror-registry-artifacts.js.map +1 -1
- package/dist/cli/npm/put-attested-packument.d.ts +15 -0
- package/dist/cli/npm/put-attested-packument.d.ts.map +1 -1
- package/dist/cli/npm/put-attested-packument.js +31 -5
- package/dist/cli/npm/put-attested-packument.js.map +1 -1
- package/dist/cli/run/build-closure.d.ts +34 -0
- package/dist/cli/run/build-closure.d.ts.map +1 -0
- package/dist/cli/run/build-closure.js +122 -0
- package/dist/cli/run/build-closure.js.map +1 -0
- package/dist/cli/run/build-only.d.ts +45 -0
- package/dist/cli/run/build-only.d.ts.map +1 -0
- package/dist/cli/run/build-only.js +35 -0
- package/dist/cli/run/build-only.js.map +1 -0
- package/dist/cli/run/deploy-smoke.d.ts +6 -0
- package/dist/cli/run/deploy-smoke.d.ts.map +1 -1
- package/dist/cli/run/deploy-smoke.js +43 -3
- package/dist/cli/run/deploy-smoke.js.map +1 -1
- package/dist/cli/run/deployment-budget-gate.d.ts +41 -0
- package/dist/cli/run/deployment-budget-gate.d.ts.map +1 -0
- package/dist/cli/run/deployment-budget-gate.js +85 -0
- package/dist/cli/run/deployment-budget-gate.js.map +1 -0
- package/dist/cli/run/deployment-provider.d.ts +24 -0
- package/dist/cli/run/deployment-provider.d.ts.map +1 -1
- package/dist/cli/run/deployment-provider.js +57 -17
- package/dist/cli/run/deployment-provider.js.map +1 -1
- package/dist/cli/run/deployment-run-ledger.d.ts +2 -0
- package/dist/cli/run/deployment-run-ledger.d.ts.map +1 -1
- package/dist/cli/run/deployment-run-ledger.js +1 -0
- package/dist/cli/run/deployment-run-ledger.js.map +1 -1
- package/dist/cli/run/edge-hostname-reconcile.d.ts +52 -0
- package/dist/cli/run/edge-hostname-reconcile.d.ts.map +1 -0
- package/dist/cli/run/edge-hostname-reconcile.js +105 -0
- package/dist/cli/run/edge-hostname-reconcile.js.map +1 -0
- package/dist/cli/run/immutable-deployment-release.program.d.ts +9 -0
- package/dist/cli/run/immutable-deployment-release.program.d.ts.map +1 -1
- package/dist/cli/run/immutable-deployment-release.program.js +2 -1
- package/dist/cli/run/immutable-deployment-release.program.js.map +1 -1
- package/dist/cli/run/infra-deploy.run.cli-command.descriptor.d.ts +6 -0
- package/dist/cli/run/infra-deploy.run.cli-command.descriptor.d.ts.map +1 -1
- package/dist/cli/run/infra-deploy.run.cli-command.descriptor.js +8 -0
- package/dist/cli/run/infra-deploy.run.cli-command.descriptor.js.map +1 -1
- package/dist/cli/run/infra-deploy.run.cli-command.impl.d.ts.map +1 -1
- package/dist/cli/run/infra-deploy.run.cli-command.impl.js +118 -7
- package/dist/cli/run/infra-deploy.run.cli-command.impl.js.map +1 -1
- package/dist/cli/shared/build-workspace-artifacts.d.ts +44 -7
- package/dist/cli/shared/build-workspace-artifacts.d.ts.map +1 -1
- package/dist/cli/shared/build-workspace-artifacts.js +313 -202
- package/dist/cli/shared/build-workspace-artifacts.js.map +1 -1
- package/dist/cli/shared/workspace-artifact-store.d.ts +5 -0
- package/dist/cli/shared/workspace-artifact-store.d.ts.map +1 -1
- package/dist/cli/shared/workspace-artifact-store.js +22 -3
- package/dist/cli/shared/workspace-artifact-store.js.map +1 -1
- package/dist/storage/deployment-runs.schema.d.ts +2 -0
- package/dist/storage/deployment-runs.schema.d.ts.map +1 -1
- package/dist/storage/deployment-runs.schema.js +2 -0
- package/dist/storage/deployment-runs.schema.js.map +1 -1
- package/package.json +21 -21
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
* eligible): the one tag asked for, or every tag the source serves. Each tagged
|
|
7
7
|
* version the target lacks is fetched at its recorded integrity and written as the
|
|
8
8
|
* same bytes (accepted is published; the next run reads it back as present); a
|
|
9
|
-
* version the target already holds
|
|
9
|
+
* version the target already holds gets the tag set when the tag is absent or
|
|
10
|
+
* names another version.
|
|
10
11
|
* Nothing is re-packed or re-versioned.
|
|
11
12
|
*
|
|
12
13
|
* A refusal or failure is reported for that package and the mirror continues.
|
|
@@ -32,7 +33,7 @@ export type MirrorOutcome =
|
|
|
32
33
|
version: string;
|
|
33
34
|
integrity: string;
|
|
34
35
|
}
|
|
35
|
-
/** The target held this version with equal bytes; its tag was moved onto it. */
|
|
36
|
+
/** The target held this version with equal bytes; its tag was set (absent) or moved (elsewhere) onto it. */
|
|
36
37
|
| {
|
|
37
38
|
name: string;
|
|
38
39
|
tag: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mirror-registry-artifacts.d.ts","sourceRoot":"","sources":["../../../src/cli/npm/mirror-registry-artifacts.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"mirror-registry-artifacts.d.ts","sourceRoot":"","sources":["../../../src/cli/npm/mirror-registry-artifacts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,eAAe,EAAU,gBAAgB,EAAsB,MAAM,qBAAqB,CAAC;AACpG,OAAO,KAAK,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAE1G,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAG1E,8FAA8F;AAC9F,MAAM,MAAM,aAAa;AACxB,iEAAiE;AAC/D;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AACtF,iFAAiF;GAC/E;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AACrF,4GAA4G;GAC1G;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AACpF,kEAAkE;GAChE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE;AAClD,mFAAmF;GACjF;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,OAAO,EAAE,sBAAsB,CAAA;CAAE;AAC9I,0GAA0G;GACxG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;CAAE,CAAC;AAQzJ,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IACtD,MAAM,EAAE,6BAA6B,CAAC;IACtC,MAAM,EAAE,6BAA6B,CAAC;IACtC,4EAA4E;IAC5E,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,kFAAkF;IAClF,YAAY,CAAC,EAAE,2BAA2B,CAAC;IAC3C,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;CAC7C,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAmB3B"}
|
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
* eligible): the one tag asked for, or every tag the source serves. Each tagged
|
|
7
7
|
* version the target lacks is fetched at its recorded integrity and written as the
|
|
8
8
|
* same bytes (accepted is published; the next run reads it back as present); a
|
|
9
|
-
* version the target already holds
|
|
9
|
+
* version the target already holds gets the tag set when the tag is absent or
|
|
10
|
+
* names another version.
|
|
10
11
|
* Nothing is re-packed or re-versioned.
|
|
11
12
|
*
|
|
12
13
|
* A refusal or failure is reported for that package and the mirror continues.
|
|
@@ -72,10 +73,11 @@ async function mirrorTag(options) {
|
|
|
72
73
|
if (existing !== undefined) {
|
|
73
74
|
if (existing !== integrity)
|
|
74
75
|
return { name, tag, state: 'conflict', version, source: integrity, target: existing };
|
|
75
|
-
//
|
|
76
|
-
//
|
|
76
|
+
// An absent tag is set, not taken for packument lag: a version published under one tag and
|
|
77
|
+
// mirrored later under another would otherwise never carry it. Setting a tag the packument
|
|
78
|
+
// has not caught up with yet is the same idempotent write.
|
|
77
79
|
const current = (await target.distTags(name))[tag];
|
|
78
|
-
if (current ===
|
|
80
|
+
if (current === version)
|
|
79
81
|
return { name, tag, state: 'present', version, integrity };
|
|
80
82
|
const moved = await settle(() => target.setTag({ name, tag, version, secondFactor: options.secondFactor }));
|
|
81
83
|
if (!moved.ok)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mirror-registry-artifacts.js","sourceRoot":"","sources":["../../../src/cli/npm/mirror-registry-artifacts.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"mirror-registry-artifacts.js","sourceRoot":"","sources":["../../../src/cli/npm/mirror-registry-artifacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,11 +89,20 @@ export declare function putAttestedPackument(options: {
|
|
|
89
89
|
status: number;
|
|
90
90
|
latestTag: LatestTagOutcome;
|
|
91
91
|
}>;
|
|
92
|
+
/** How many approvals a write asks for at most when each expires unanswered, unless the caller declares another. */
|
|
93
|
+
export declare const WEB_AUTH_MAX_APPROVALS = 3;
|
|
94
|
+
/** How long one write may wait across all of its approvals, unless the caller declares another. */
|
|
95
|
+
export declare const WEB_AUTH_DEADLINE_MS: number;
|
|
92
96
|
/**
|
|
93
97
|
* One registry write (`PUT` of a JSON body) answered with the second factor the
|
|
94
98
|
* caller holds: a one-time password, or npm's web flow (the write asks for it, a
|
|
95
99
|
* 401 names the approval URL, `announce` shows it, and the write runs once more
|
|
96
100
|
* with the token the approval issues). The final response is returned unread.
|
|
101
|
+
*
|
|
102
|
+
* With `retryOnTimeout`, an approval that expires unanswered is asked for again,
|
|
103
|
+
* at most `maxApprovals` times and within `deadlineMs` overall; past either the
|
|
104
|
+
* write refuses `registry-web-auth-exhausted`. The caller's `signal` and the
|
|
105
|
+
* runtime's own disposal cancel the wait (`registry-web-auth-cancelled`).
|
|
97
106
|
*/
|
|
98
107
|
export declare function writeWithSecondFactor(options: {
|
|
99
108
|
runtime: RuntimeRef;
|
|
@@ -114,6 +123,12 @@ export type WebAuthOptions = {
|
|
|
114
123
|
timeoutMs?: number;
|
|
115
124
|
/** Ask for a fresh approval each time one expires unanswered, instead of failing the write. */
|
|
116
125
|
retryOnTimeout?: boolean;
|
|
126
|
+
/** The most approvals one write asks for with `retryOnTimeout` ({@link WEB_AUTH_MAX_APPROVALS}). */
|
|
127
|
+
maxApprovals?: number;
|
|
128
|
+
/** How long one write waits across all of its approvals ({@link WEB_AUTH_DEADLINE_MS}). */
|
|
129
|
+
deadlineMs?: number;
|
|
130
|
+
/** The caller's cancellation; the runtime's disposal cancels as well. */
|
|
131
|
+
signal?: AbortSignal;
|
|
117
132
|
};
|
|
118
133
|
/** What a non-`latest` publish did to `latest`: moved with the version, left alone, or not read (so not moved). */
|
|
119
134
|
export type LatestTagOutcome = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"put-attested-packument.d.ts","sourceRoot":"","sources":["../../../src/cli/npm/put-attested-packument.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"put-attested-packument.d.ts","sourceRoot":"","sources":["../../../src/cli/npm/put-attested-packument.ts"],"names":[],"mappings":"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"}
|
|
@@ -227,11 +227,25 @@ async function webAuthChallenge(response) {
|
|
|
227
227
|
const challenge = WebAuthChallengeSchema.safeParse(read.value);
|
|
228
228
|
return challenge.success ? challenge.data : undefined;
|
|
229
229
|
}
|
|
230
|
+
/** How many approvals a write asks for at most when each expires unanswered, unless the caller declares another. */
|
|
231
|
+
export const WEB_AUTH_MAX_APPROVALS = 3;
|
|
232
|
+
/** How long one write may wait across all of its approvals, unless the caller declares another. */
|
|
233
|
+
export const WEB_AUTH_DEADLINE_MS = 20 * 60_000;
|
|
234
|
+
function webAuthCancelled(approvals) {
|
|
235
|
+
return new CapabilityError('The web second-factor approval was cancelled.', 'CANCELLED', {
|
|
236
|
+
reason: 'registry-web-auth-cancelled', retryable: false, details: { approvals }
|
|
237
|
+
});
|
|
238
|
+
}
|
|
230
239
|
/**
|
|
231
240
|
* One registry write (`PUT` of a JSON body) answered with the second factor the
|
|
232
241
|
* caller holds: a one-time password, or npm's web flow (the write asks for it, a
|
|
233
242
|
* 401 names the approval URL, `announce` shows it, and the write runs once more
|
|
234
243
|
* with the token the approval issues). The final response is returned unread.
|
|
244
|
+
*
|
|
245
|
+
* With `retryOnTimeout`, an approval that expires unanswered is asked for again,
|
|
246
|
+
* at most `maxApprovals` times and within `deadlineMs` overall; past either the
|
|
247
|
+
* write refuses `registry-web-auth-exhausted`. The caller's `signal` and the
|
|
248
|
+
* runtime's own disposal cancel the wait (`registry-web-auth-cancelled`).
|
|
235
249
|
*/
|
|
236
250
|
export async function writeWithSecondFactor(options) {
|
|
237
251
|
const headers = new Headers({
|
|
@@ -249,8 +263,12 @@ export async function writeWithSecondFactor(options) {
|
|
|
249
263
|
const webAuth = options.webAuth;
|
|
250
264
|
if (webAuth === undefined || options.otp)
|
|
251
265
|
return write();
|
|
252
|
-
|
|
253
|
-
|
|
266
|
+
const maxApprovals = webAuth.retryOnTimeout === true ? webAuth.maxApprovals ?? WEB_AUTH_MAX_APPROVALS : 1;
|
|
267
|
+
const deadline = Date.now() + (webAuth.deadlineMs ?? WEB_AUTH_DEADLINE_MS);
|
|
268
|
+
const cancelled = () => webAuth.signal?.aborted === true || options.runtime.lifecycle.signal.aborted;
|
|
269
|
+
for (let approvals = 0;;) {
|
|
270
|
+
if (cancelled())
|
|
271
|
+
throw webAuthCancelled(approvals);
|
|
254
272
|
headers.delete('npm-otp');
|
|
255
273
|
const response = await write();
|
|
256
274
|
if (response.status !== 401)
|
|
@@ -259,12 +277,20 @@ export async function writeWithSecondFactor(options) {
|
|
|
259
277
|
if (challenge === undefined)
|
|
260
278
|
return response;
|
|
261
279
|
await response.body?.cancel();
|
|
280
|
+
if (approvals >= maxApprovals || Date.now() >= deadline) {
|
|
281
|
+
throw new CapabilityError(`No web second-factor approval was given within ${approvals} approval(s).`, 'TIMEOUT', {
|
|
282
|
+
reason: 'registry-web-auth-exhausted', retryable: false, details: { approvals, maxApprovals }
|
|
283
|
+
});
|
|
284
|
+
}
|
|
285
|
+
approvals++;
|
|
262
286
|
await webAuth.announce(challenge.authUrl);
|
|
263
|
-
const approved = await settle(() => webAuthToken({ ...options, webAuth, doneUrl: challenge.doneUrl }));
|
|
287
|
+
const approved = await settle(() => webAuthToken({ ...options, webAuth, doneUrl: challenge.doneUrl, deadline }));
|
|
264
288
|
if (approved.ok) {
|
|
265
289
|
headers.set('npm-otp', approved.value);
|
|
266
290
|
return write();
|
|
267
291
|
}
|
|
292
|
+
if (cancelled() || (approved.cause instanceof CapabilityError && approved.cause.reason === 'wait-aborted'))
|
|
293
|
+
throw webAuthCancelled(approvals);
|
|
268
294
|
const timedOut = approved.cause instanceof CapabilityError && approved.cause.reason === 'registry-web-auth-timeout';
|
|
269
295
|
if (!timedOut || webAuth.retryOnTimeout !== true)
|
|
270
296
|
throw approved.cause;
|
|
@@ -276,7 +302,7 @@ function webAuthHeaders(webAuth) {
|
|
|
276
302
|
}
|
|
277
303
|
/** Waits on `doneUrl` (202 + `retry-after` while pending) for the one-time token the approval issues. */
|
|
278
304
|
async function webAuthToken(options) {
|
|
279
|
-
const deadline = Date.now() + (options.webAuth.timeoutMs ?? 5 * 60_000);
|
|
305
|
+
const deadline = Math.min(options.deadline, Date.now() + (options.webAuth.timeoutMs ?? 5 * 60_000));
|
|
280
306
|
let polls = 0;
|
|
281
307
|
while (Date.now() < deadline) {
|
|
282
308
|
const done = await options.fetchImpl(options.doneUrl, {
|
|
@@ -306,7 +332,7 @@ async function webAuthToken(options) {
|
|
|
306
332
|
});
|
|
307
333
|
}
|
|
308
334
|
const seconds = Number(done.headers.get('retry-after') ?? '1');
|
|
309
|
-
await options.runtime.lifecycle.delay(Math.max(1, Number.isFinite(seconds) ? seconds : 1) * 1_000);
|
|
335
|
+
await options.runtime.lifecycle.delay(Math.max(1, Number.isFinite(seconds) ? seconds : 1) * 1_000, options.webAuth.signal);
|
|
310
336
|
}
|
|
311
337
|
throw new CapabilityError(`Web second-factor approval was not seen on doneUrl after ${polls} polls (each 202)`, 'UNAVAILABLE', {
|
|
312
338
|
reason: 'registry-web-auth-timeout',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"put-attested-packument.js","sourceRoot":"","sources":["../../../src/cli/npm/put-attested-packument.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"put-attested-packument.js","sourceRoot":"","sources":["../../../src/cli/npm/put-attested-packument.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The build closure of a deploy: the app directory and every workspace
|
|
3
|
+
* package its build resolves, and the uncommitted paths inside it.
|
|
4
|
+
*
|
|
5
|
+
* A deploy builds the working tree but names the app repository's commit, so
|
|
6
|
+
* an uncommitted edit in the app or in a linked workspace package would ship
|
|
7
|
+
* under a clean commit's name. The closure is resolved the way the build
|
|
8
|
+
* resolves it: from the app's manifest, each dependency through the
|
|
9
|
+
* `node_modules` link nearest the requiring package; a link whose real path
|
|
10
|
+
* lies outside every `node_modules` is a workspace package, and its own
|
|
11
|
+
* runtime dependencies join the closure in turn. Installed registry packages
|
|
12
|
+
* are immutable inputs the lock records and are not part of it.
|
|
13
|
+
*
|
|
14
|
+
* Inside the closure, a path is consumed unless it is a test or Markdown
|
|
15
|
+
* document (a production build bundles neither) or a declared package-manager
|
|
16
|
+
* lock (the composition records lock bytes itself). Git-ignored output is not
|
|
17
|
+
* authored source. Dirt elsewhere in a repository, in packages the app does
|
|
18
|
+
* not import, is not the app's.
|
|
19
|
+
*/
|
|
20
|
+
import { CapabilityError, type RuntimeRef } from '@vibesdotdev/kernel';
|
|
21
|
+
import type { RuntimeExecution } from '@vibesdotdev/kernel/execution';
|
|
22
|
+
import type { FileSystemAdapterInterface } from '@vibesdotdev/filesystem/interfaces/adapter';
|
|
23
|
+
export interface BuildClosureHost {
|
|
24
|
+
runtime: RuntimeRef;
|
|
25
|
+
execution: Pick<RuntimeExecution, 'spawn'>;
|
|
26
|
+
files: Pick<FileSystemAdapterInterface, 'exists' | 'readFile' | 'realpath' | 'join' | 'dirname' | 'relative' | 'resolve'>;
|
|
27
|
+
}
|
|
28
|
+
/** The app directory and every workspace package its build resolves, as real paths. */
|
|
29
|
+
export declare function resolveBuildClosure(host: BuildClosureHost, appDir: string): Promise<string[]>;
|
|
30
|
+
/** The uncommitted consumed paths inside `closure`, absolute and sorted. */
|
|
31
|
+
export declare function dirtyBuildClosurePaths(host: BuildClosureHost, closure: readonly string[]): Promise<string[]>;
|
|
32
|
+
/** Refuse a closure with uncommitted consumed paths, naming them. */
|
|
33
|
+
export declare function dirtyBuildClosureRefusal(paths: readonly string[]): CapabilityError;
|
|
34
|
+
//# sourceMappingURL=build-closure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-closure.d.ts","sourceRoot":"","sources":["../../../src/cli/run/build-closure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AAmB7F,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,UAAU,CAAC;IACpB,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAC3C,KAAK,EAAE,IAAI,CAAC,0BAA0B,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;CAC1H;AAoBD,uFAAuF;AACvF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAsBnG;AAYD,4EAA4E;AAC5E,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAsBlH;AAED,qEAAqE;AACrE,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,eAAe,CAQlF"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The build closure of a deploy: the app directory and every workspace
|
|
3
|
+
* package its build resolves, and the uncommitted paths inside it.
|
|
4
|
+
*
|
|
5
|
+
* A deploy builds the working tree but names the app repository's commit, so
|
|
6
|
+
* an uncommitted edit in the app or in a linked workspace package would ship
|
|
7
|
+
* under a clean commit's name. The closure is resolved the way the build
|
|
8
|
+
* resolves it: from the app's manifest, each dependency through the
|
|
9
|
+
* `node_modules` link nearest the requiring package; a link whose real path
|
|
10
|
+
* lies outside every `node_modules` is a workspace package, and its own
|
|
11
|
+
* runtime dependencies join the closure in turn. Installed registry packages
|
|
12
|
+
* are immutable inputs the lock records and are not part of it.
|
|
13
|
+
*
|
|
14
|
+
* Inside the closure, a path is consumed unless it is a test or Markdown
|
|
15
|
+
* document (a production build bundles neither) or a declared package-manager
|
|
16
|
+
* lock (the composition records lock bytes itself). Git-ignored output is not
|
|
17
|
+
* authored source. Dirt elsewhere in a repository, in packages the app does
|
|
18
|
+
* not import, is not the app's.
|
|
19
|
+
*/
|
|
20
|
+
import { CapabilityError } from '@vibesdotdev/kernel';
|
|
21
|
+
import { GIT_CHILD_ENV, parsePorcelainZ } from '@vibesdotdev/git-operations/core';
|
|
22
|
+
import { WorkspaceCompositionLockPathSchema } from '@vibesdotdev/workspace-schemas/isolation';
|
|
23
|
+
import * as z from 'zod/v4';
|
|
24
|
+
import { runRuntimeCommand } from "../shared/runtime-execution.js";
|
|
25
|
+
const DependencyMapSchema = z.record(z.string(), z.string()).optional();
|
|
26
|
+
const PackageManifestSchema = z.looseObject({
|
|
27
|
+
dependencies: DependencyMapSchema,
|
|
28
|
+
devDependencies: DependencyMapSchema,
|
|
29
|
+
optionalDependencies: DependencyMapSchema,
|
|
30
|
+
peerDependencies: DependencyMapSchema
|
|
31
|
+
});
|
|
32
|
+
/** Paths a production build never bundles. */
|
|
33
|
+
const UNCONSUMED_PATH = /(^|\/)__tests__\/|\.(test|spec)\.[cm]?[jt]sx?$|\.md$/;
|
|
34
|
+
/** The refusal names at most this many paths; the count covers the rest. */
|
|
35
|
+
const NAMED_PATH_LIMIT = 50;
|
|
36
|
+
async function readManifest(host, dir) {
|
|
37
|
+
const path = host.files.join(dir, 'package.json');
|
|
38
|
+
if (!await host.files.exists(path))
|
|
39
|
+
return null;
|
|
40
|
+
return PackageManifestSchema.parse(JSON.parse(z.string().parse(await host.files.readFile(path, 'utf8'))));
|
|
41
|
+
}
|
|
42
|
+
/** The real directory `name` resolves to from `dir`, walking up as package resolution does, or `null`. */
|
|
43
|
+
async function resolveLinked(host, dir, name) {
|
|
44
|
+
let current = dir;
|
|
45
|
+
for (;;) {
|
|
46
|
+
const candidate = host.files.join(current, 'node_modules', name);
|
|
47
|
+
if (await host.files.exists(candidate))
|
|
48
|
+
return host.files.realpath(candidate);
|
|
49
|
+
const parent = host.files.dirname(current);
|
|
50
|
+
if (parent === current)
|
|
51
|
+
return null;
|
|
52
|
+
current = parent;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/** The app directory and every workspace package its build resolves, as real paths. */
|
|
56
|
+
export async function resolveBuildClosure(host, appDir) {
|
|
57
|
+
if (!host.files.realpath) {
|
|
58
|
+
throw new CapabilityError('Resolving a deploy build closure requires real-path resolution.', 'UNAVAILABLE', { reason: 'deployment-build-closure-unavailable' });
|
|
59
|
+
}
|
|
60
|
+
const root = await host.files.realpath(appDir);
|
|
61
|
+
const closure = new Set([root]);
|
|
62
|
+
const pending = [{ dir: root, app: true }];
|
|
63
|
+
for (let next = pending.pop(); next; next = pending.pop()) {
|
|
64
|
+
const manifest = await readManifest(host, next.dir);
|
|
65
|
+
if (!manifest)
|
|
66
|
+
continue;
|
|
67
|
+
const maps = [manifest.dependencies, manifest.optionalDependencies, manifest.peerDependencies];
|
|
68
|
+
// An app's build tools (its bundler presets and plugins) are its dev dependencies.
|
|
69
|
+
if (next.app)
|
|
70
|
+
maps.push(manifest.devDependencies);
|
|
71
|
+
const names = new Set(maps.flatMap(map => Object.keys(map ?? {})));
|
|
72
|
+
for (const name of names) {
|
|
73
|
+
const resolved = await resolveLinked(host, next.dir, name);
|
|
74
|
+
if (!resolved || resolved.split(/[\\/]/).includes('node_modules') || closure.has(resolved))
|
|
75
|
+
continue;
|
|
76
|
+
closure.add(resolved);
|
|
77
|
+
pending.push({ dir: resolved, app: false });
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return [...closure].sort();
|
|
81
|
+
}
|
|
82
|
+
async function git(host, cwd, args) {
|
|
83
|
+
const result = await runRuntimeCommand({ runtime: host.runtime, execution: host.execution, command: 'git', inheritEnv: GIT_CHILD_ENV, args, cwd });
|
|
84
|
+
if (result.code !== 0) {
|
|
85
|
+
throw new CapabilityError('git could not report a deploy build input\'s status.', 'UNAVAILABLE', {
|
|
86
|
+
reason: 'deployment-source-status-unreadable', details: { path: cwd, exitCode: result.code }
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
return result.stdout;
|
|
90
|
+
}
|
|
91
|
+
/** The uncommitted consumed paths inside `closure`, absolute and sorted. */
|
|
92
|
+
export async function dirtyBuildClosurePaths(host, closure) {
|
|
93
|
+
const byRepository = new Map();
|
|
94
|
+
for (const dir of closure) {
|
|
95
|
+
const repository = (await git(host, dir, ['rev-parse', '--show-toplevel'])).trim();
|
|
96
|
+
byRepository.set(repository, [...byRepository.get(repository) ?? [], dir]);
|
|
97
|
+
}
|
|
98
|
+
const locks = new Set(WorkspaceCompositionLockPathSchema.options);
|
|
99
|
+
const dirty = new Set();
|
|
100
|
+
for (const [repository, dirs] of byRepository) {
|
|
101
|
+
const pathspecs = dirs.map(dir => host.files.relative(repository, dir) || '.');
|
|
102
|
+
const status = parsePorcelainZ(await git(host, repository, ['status', '--porcelain', '-z', '--untracked-files=all', '--', ...pathspecs]));
|
|
103
|
+
const changed = [
|
|
104
|
+
...status.staged, ...status.unstaged, ...status.untracked,
|
|
105
|
+
...(status.pathChanges ?? []).flatMap(change => [change.from, change.to])
|
|
106
|
+
];
|
|
107
|
+
for (const path of changed) {
|
|
108
|
+
const name = path.split('/').at(-1) ?? path;
|
|
109
|
+
if (UNCONSUMED_PATH.test(path) || locks.has(name))
|
|
110
|
+
continue;
|
|
111
|
+
dirty.add(host.files.resolve(repository, path));
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return [...dirty].sort();
|
|
115
|
+
}
|
|
116
|
+
/** Refuse a closure with uncommitted consumed paths, naming them. */
|
|
117
|
+
export function dirtyBuildClosureRefusal(paths) {
|
|
118
|
+
const named = paths.slice(0, NAMED_PATH_LIMIT);
|
|
119
|
+
const more = paths.length > named.length ? `\n…and ${paths.length - named.length} more` : '';
|
|
120
|
+
return new CapabilityError(`The deploy's build closure has uncommitted changes, so it would ship bytes its commit does not name. Commit them, or deploy with --allow-dirty for a local experiment:\n${named.join('\n')}${more}`, 'CONFLICT', { reason: 'deployment-source-dirty', retryable: false, details: { paths: named, count: paths.length } });
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=build-closure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-closure.js","sourceRoot":"","sources":["../../../src/cli/run/build-closure.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `vibes infra deploy run --build-only`: build an app the way a deploy would, check its Worker graph
|
|
3
|
+
* against the provider's declared bundle, measure it, and report, with no provider implementation,
|
|
4
|
+
* no credentials and no upload. Scope violations and platform-limit overruns are reported, not
|
|
5
|
+
* thrown, so an owner iterates on the whole list; a real deploy refuses on the same verdict.
|
|
6
|
+
*
|
|
7
|
+
* The workspace packages the app imports build first through the workspace-artifacts owner
|
|
8
|
+
* (freshness-hashed, under the workspace artifact lock), so nobody hand-runs a package build that
|
|
9
|
+
* deletes `dist` under a concurrent one. The app's own build is the deploy's runner.
|
|
10
|
+
*/
|
|
11
|
+
import type { VibesRuntime } from '@vibesdotdev/kernel';
|
|
12
|
+
import type { RuntimeExecution } from '@vibesdotdev/kernel/execution';
|
|
13
|
+
import type { AppDeployment } from '@vibesdotdev/infra-core';
|
|
14
|
+
import type { DeploymentBundleTargetInput } from '@vibesdotdev/infra-core/deployment-budget';
|
|
15
|
+
import type { DeploymentOutputLine } from '@vibesdotdev/infra-core/kinds';
|
|
16
|
+
import { buildWorkspaceArtifactsForApp } from '../shared/build-workspace-artifacts.ts';
|
|
17
|
+
import { type DeploymentBudgetVerdict } from './deployment-budget-gate.ts';
|
|
18
|
+
export interface BuildOnlyResult extends DeploymentBudgetVerdict {
|
|
19
|
+
readonly appId: string;
|
|
20
|
+
readonly outputDirectory: string;
|
|
21
|
+
/** Wall time of the workspace-artifact and app builds; zero with `--skip-build`. */
|
|
22
|
+
readonly buildSeconds: number;
|
|
23
|
+
readonly built: boolean;
|
|
24
|
+
}
|
|
25
|
+
export declare function runBuildOnly(input: {
|
|
26
|
+
runtime: VibesRuntime;
|
|
27
|
+
execution: RuntimeExecution;
|
|
28
|
+
deployment: AppDeployment;
|
|
29
|
+
appDir: string;
|
|
30
|
+
workspaceRoot: string;
|
|
31
|
+
/** Measure the output already on disk without building. */
|
|
32
|
+
skipBuild: boolean;
|
|
33
|
+
buildVersion: string;
|
|
34
|
+
onLine: DeploymentOutputLine;
|
|
35
|
+
/** The provider's declared Worker bundle, read from its descriptor. */
|
|
36
|
+
bundleTarget?: DeploymentBundleTargetInput;
|
|
37
|
+
/** The Worker entries the provider's rendered artifact names, absolute; the app's declared entry wins. */
|
|
38
|
+
entries?: readonly string[];
|
|
39
|
+
now?: () => number;
|
|
40
|
+
}, deps?: {
|
|
41
|
+
buildWorkspaceArtifacts?: typeof buildWorkspaceArtifactsForApp;
|
|
42
|
+
}): Promise<BuildOnlyResult>;
|
|
43
|
+
/** The text report: the measurement, then the build time against its budget when one resolves. */
|
|
44
|
+
export declare function formatBuildOnlyReport(result: BuildOnlyResult): string;
|
|
45
|
+
//# sourceMappingURL=build-only.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-only.d.ts","sourceRoot":"","sources":["../../../src/cli/run/build-only.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AAC7F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAEvF,OAAO,EAA2B,KAAK,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAEpG,MAAM,WAAW,eAAgB,SAAQ,uBAAuB;IAC/D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,oFAAoF;IACpF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACxB;AAED,wBAAsB,YAAY,CACjC,KAAK,EAAE;IACN,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,UAAU,EAAE,aAAa,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,uEAAuE;IACvE,YAAY,CAAC,EAAE,2BAA2B,CAAC;IAC3C,0GAA0G;IAC1G,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACnB,EACD,IAAI,GAAE;IACL,uBAAuB,CAAC,EAAE,OAAO,6BAA6B,CAAC;CAC1D,GACJ,OAAO,CAAC,eAAe,CAAC,CAiB1B;AAED,kGAAkG;AAClG,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAarE"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { buildWorkspaceArtifactsForApp } from "../shared/build-workspace-artifacts.js";
|
|
2
|
+
import { deploymentOutputDirectory, runAppBuildCommand } from "./deployment-provider.js";
|
|
3
|
+
import { enforceDeploymentBudget } from "./deployment-budget-gate.js";
|
|
4
|
+
export async function runBuildOnly(input, deps = {}) {
|
|
5
|
+
const buildWorkspaceArtifacts = deps.buildWorkspaceArtifacts ?? buildWorkspaceArtifactsForApp;
|
|
6
|
+
const now = input.now ?? Date.now;
|
|
7
|
+
const { runtime, execution, deployment, appDir, workspaceRoot, onLine } = input;
|
|
8
|
+
const started = now();
|
|
9
|
+
if (!input.skipBuild) {
|
|
10
|
+
await buildWorkspaceArtifacts({ runtime, execution, workspaceRoot, appDir, onLine });
|
|
11
|
+
await runAppBuildCommand({ runtime, execution, deployment, appDir, buildVersion: input.buildVersion, onLine });
|
|
12
|
+
}
|
|
13
|
+
const buildSeconds = input.skipBuild ? 0 : (now() - started) / 1000;
|
|
14
|
+
const outputDirectory = await deploymentOutputDirectory(runtime, deployment, appDir);
|
|
15
|
+
const verdict = await enforceDeploymentBudget({
|
|
16
|
+
runtime, appDir, workspaceRoot, outputDirectory, label: deployment.appId, enforce: false,
|
|
17
|
+
bundleTarget: input.bundleTarget,
|
|
18
|
+
entries: input.entries
|
|
19
|
+
});
|
|
20
|
+
return { ...verdict, appId: deployment.appId, outputDirectory, buildSeconds, built: !input.skipBuild };
|
|
21
|
+
}
|
|
22
|
+
/** The text report: the measurement, then the build time against its budget when one resolves. */
|
|
23
|
+
export function formatBuildOnlyReport(result) {
|
|
24
|
+
const lines = [result.summary];
|
|
25
|
+
if (result.built) {
|
|
26
|
+
const budget = result.build ? ` against a ${result.build.maxSeconds}s build budget` : '';
|
|
27
|
+
const over = result.build && result.buildSeconds > result.build.maxSeconds ? ' (OVER BUDGET: find the slow step at its owner)' : '';
|
|
28
|
+
lines.push(`Build took ${result.buildSeconds.toFixed(1)}s${budget}${over}.`);
|
|
29
|
+
}
|
|
30
|
+
lines.push(result.refusal
|
|
31
|
+
? `Build only: nothing was uploaded. A deploy of this output would refuse (${result.refusal.reason}).`
|
|
32
|
+
: 'Build only: nothing was uploaded. A deploy of this output would pass the bundling gate.');
|
|
33
|
+
return lines.join('\n');
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=build-only.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-only.js","sourceRoot":"","sources":["../../../src/cli/run/build-only.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACzF,OAAO,EAAE,uBAAuB,EAAgC,MAAM,6BAA6B,CAAC;AAUpG,MAAM,CAAC,KAAK,UAAU,YAAY,CACjC,KAeC,EACD,OAEI,EAAE;IAEN,MAAM,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,IAAI,6BAA6B,CAAC;IAC9F,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;IAClC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAChF,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC;IACtB,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,uBAAuB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACrF,MAAM,kBAAkB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;IAChH,CAAC;IACD,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;IACpE,MAAM,eAAe,GAAG,MAAM,yBAAyB,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IACrF,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC;QAC7C,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK;QACxF,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,OAAO,EAAE,KAAK,CAAC,OAAO;KACtB,CAAC,CAAC;IACH,OAAO,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;AACxG,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,qBAAqB,CAAC,MAAuB;IAC5D,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,UAAU,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,iDAAiD,CAAC,CAAC,CAAC,EAAE,CAAC;QACpI,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC;IAC9E,CAAC;IACD,KAAK,CAAC,IAAI,CACT,MAAM,CAAC,OAAO;QACb,CAAC,CAAC,2EAA2E,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI;QACtG,CAAC,CAAC,yFAAyF,CAC5F,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC"}
|
|
@@ -28,6 +28,12 @@ export type RunDeploySmokeProbeOptions = {
|
|
|
28
28
|
*/
|
|
29
29
|
expectedVersion?: string | null;
|
|
30
30
|
deployment: AppDeployment;
|
|
31
|
+
/**
|
|
32
|
+
* The provider's own origins behind the edge (the release's hostname
|
|
33
|
+
* targets). When the public hostname serves the wrong build, reading these
|
|
34
|
+
* tells an edge serving an old copy apart from a release that did not take.
|
|
35
|
+
*/
|
|
36
|
+
providerOrigins?: readonly string[];
|
|
31
37
|
environmentResolution?: DeploymentEnvironmentResolution;
|
|
32
38
|
deployedUrl?: string | null;
|
|
33
39
|
retryWindowMs?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-smoke.d.ts","sourceRoot":"","sources":["../../../src/cli/run/deploy-smoke.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AACvF,OAAO,EAAU,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,MAAM,iBAAiB,GAAG;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACxC,iIAAiI;IACjI,OAAO,EAAE,UAAU,CAAC;IACpB;;;;;;;;;;;;;;;OAeG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,aAAa,CAAC;IAC1B,qBAAqB,CAAC,EAAE,+BAA+B,CAAC;IACxD,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gEAAgE;IAChE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7D,CAAC;AAoEF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"deploy-smoke.d.ts","sourceRoot":"","sources":["../../../src/cli/run/deploy-smoke.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AACvF,OAAO,EAAU,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,MAAM,iBAAiB,GAAG;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACxC,iIAAiI;IACjI,OAAO,EAAE,UAAU,CAAC;IACpB;;;;;;;;;;;;;;;OAeG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,aAAa,CAAC;IAC1B;;;;OAIG;IACH,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,qBAAqB,CAAC,EAAE,+BAA+B,CAAC;IACxD,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gEAAgE;IAChE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7D,CAAC;AAoEF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAYnF;AA8GD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,mBAAmB,CACxC,OAAO,EAAE,0BAA0B,GACjC,OAAO,CAAC,iBAAiB,CAAC,CAmH5B"}
|