@pipeline-builder/pipeline-manager 4.1.22 → 4.1.24
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/agent/health.d.ts.map +1 -1
- package/dist/agent/health.js +4 -4
- package/dist/commands/provision-steps.d.ts +174 -0
- package/dist/commands/provision-steps.d.ts.map +1 -0
- package/dist/commands/provision-steps.js +597 -0
- package/dist/commands/provision.d.ts +7 -144
- package/dist/commands/provision.d.ts.map +1 -1
- package/dist/commands/provision.js +18 -593
- package/dist/utils/device-auth.d.ts.map +1 -1
- package/dist/utils/device-auth.js +3 -6
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/agent/health.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/agent/health.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAG7C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAIhG;AAaD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GAC5G,OAAO,CAAC,YAAY,CAAC,CAwCvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,EACX,IAAI,GAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GACxE,OAAO,CAAC,IAAI,CAAC,CAiBf"}
|
package/dist/agent/health.js
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* `/health` + `/ready` endpoints, so the executor polls them with backoff.
|
|
8
8
|
*/
|
|
9
9
|
import { spawn } from 'child_process';
|
|
10
|
+
import { sleep } from '@pipeline-builder/api-core';
|
|
10
11
|
import axios from 'axios';
|
|
11
12
|
import { httpsAgentForUrl } from '../utils/tls.js';
|
|
12
13
|
/**
|
|
@@ -31,7 +32,6 @@ async function probe(url) {
|
|
|
31
32
|
return false;
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
|
-
const delay = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
35
35
|
/**
|
|
36
36
|
* Poll `<url>/health` then `<url>/ready` until both pass or the timeout elapses.
|
|
37
37
|
* Non-fatal by design: a timeout returns `healthy: false` with guidance, never throws.
|
|
@@ -71,7 +71,7 @@ export async function waitHealthy(url, opts = {}) {
|
|
|
71
71
|
else {
|
|
72
72
|
opts.onTick?.(`Waiting for ${url}/health …`);
|
|
73
73
|
}
|
|
74
|
-
await
|
|
74
|
+
await sleep(intervalMs);
|
|
75
75
|
}
|
|
76
76
|
// Overall timeout. If /health came up but /ready never did, proceed (non-fatal).
|
|
77
77
|
return healthSeenAt > 0
|
|
@@ -104,6 +104,6 @@ export async function ensureMinikubeGateway(url, opts = {}) {
|
|
|
104
104
|
opts.onInfo?.(`Couldn't start it (is kubectl on PATH?). Start it manually: kubectl port-forward -n ${ns} svc/nginx ${port}:${port}`);
|
|
105
105
|
});
|
|
106
106
|
child.unref(); // detached + unref → survives this CLI so the user keeps the gateway
|
|
107
|
-
await
|
|
107
|
+
await sleep(2000); // let it bind before the caller polls
|
|
108
108
|
}
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhbHRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FnZW50L2hlYWx0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDOzs7OztHQUtHO0FBRUgsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFFMUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFjbkQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQUMsTUFBZ0IsRUFBRSxNQUErQjtJQUMvRSxJQUFJLE1BQU0sS0FBSyxRQUFRLElBQUksTUFBTSxLQUFLLFVBQVU7UUFBRSxPQUFPLHdCQUF3QixDQUFDO0lBQ2xGLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDN0IsT0FBTyxPQUFPLE1BQU0sS0FBSyxRQUFRLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDM0UsQ0FBQztBQUVELEtBQUssVUFBVSxLQUFLLENBQUMsR0FBVztJQUM5QixJQUFJLENBQUM7UUFDSCw2RUFBNkU7UUFDN0UsbUVBQW1FO1FBQ25FLE1BQU0sR0FBRyxHQUFHLE1BQU0sS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsRUFBRSxjQUFjLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNuSCxPQUFPLEdBQUcsQ0FBQyxNQUFNLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO0lBQy9DLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7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RSxHQUFHLElBQUksQ0FBQyxFQUFFLElBQUksa0JBQWtCLENBQUM7SUFDekMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUM7SUFDL0IsSUFBSSxNQUFNLEtBQUssQ0FBQyxHQUFHLEdBQUcsU0FBUyxDQUFDO1FBQUUsT0FBTyxDQUFDLHFDQUFxQztJQUMvRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsd0VBQXdFLElBQUksSUFBSSxJQUFJLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNuSCxtRkFBbUY7SUFDbkYsd0ZBQXdGO0lBQ3hGLHlGQUF5RjtJQUN6RixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEdBQUcsSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDLEVBQUU7UUFDekYsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsUUFBUTtLQUNoQixDQUFDLENBQUM7SUFDSCxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7UUFDckIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLHVGQUF1RixFQUFFLGNBQWMsSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdkksQ0FBQyxDQUFDLENBQUM7SUFDSCxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxxRUFBcUU7SUFDcEYsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxzQ0FBc0M7QUFDM0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG4vKipcbiAqIFBvc3QtZGVwbG95IGhlYWx0aCB2ZXJpZmljYXRpb24uIEEgQ2xvdWRGb3JtYXRpb24gQ1JFQVRFX0NPTVBMRVRFIChvciBhXG4gKiBmaW5pc2hlZCBzZXR1cC5zaCkgZG9lcyBOT1QgbWVhbiB0aGUgYXBwIGlzIHNlcnZpbmcg4oCUIHRoZSBBTEIgdGFyZ2V0cyBzdGF5XG4gKiB1bmhlYWx0aHkgdW50aWwgdGFza3MvcG9kcyBjb21lIHVwLiBUaGUgcmVhbCBkb25lLXNpZ25hbCBpcyB0aGUgcGxhdGZvcm0nc1xuICogYC9oZWFsdGhgICsgYC9yZWFkeWAgZW5kcG9pbnRzLCBzbyB0aGUgZXhlY3V0b3IgcG9sbHMgdGhlbSB3aXRoIGJhY2tvZmYuXG4gKi9cblxuaW1wb3J0IHsgc3Bhd24gfSBmcm9tICdjaGlsZF9wcm9jZXNzJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgdHlwZSB7IFRhcmdldElkIH0gZnJvbSAnLi90YXJnZXRzLmpzJztcbmltcG9ydCB7IGh0dHBzQWdlbnRGb3JVcmwgfSBmcm9tICcuLi91dGlscy90bHMuanMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEhlYWx0aFJlc3VsdCB7XG4gIHJlYWRvbmx5IHVybDogc3RyaW5nO1xuICByZWFkb25seSBoZWFsdGh5OiBib29sZWFuO1xuICAvKipcbiAgICogVHJ1ZSBvbmx5IHdoZW4gQk9USCAvaGVhbHRoIGFuZCAvcmVhZHkgcGFzc2VkLiBEaXN0aW5ndWlzaGVzIGEgZnVsbHktcmVhZHlcbiAgICogcGxhdGZvcm0gZnJvbSB0aGUgZGVncmFkZWQgXCJoZWFsdGggT0sgYnV0IC9yZWFkeSBuZXZlciBjYW1lLCBwcm9jZWVkaW5nIGFueXdheVwiXG4gICAqIHN0YXRlIOKAlCBib3RoIGhhdmUgaGVhbHRoeTp0cnVlLCBzbyBjYWxsZXJzIHNob3VsZCBzdHlsZSBzdWNjZXNzIG9uIGByZWFkeWAuXG4gICAqL1xuICByZWFkb25seSByZWFkeTogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZGV0YWlsOiBzdHJpbmc7XG59XG5cbi8qKlxuICogRGVyaXZlIHRoZSBVUkwgdGhlIHBsYXRmb3JtIHNob3VsZCBiZSByZWFjaGFibGUgYXQuIExvY2FsL21pbmlrdWJlIGZyb250IHRoZVxuICogc3RhY2sgb24gbG9jYWxob3N0Ojg0NDM7IEVDMi9FS1MgdXNlIHRoZSBkZXBsb3kgZG9tYWluLiBSZXR1cm5zIG51bGwgd2hlblxuICogaXQgY2FuJ3QgYmUgZGV0ZXJtaW5lZCAoY2FsbGVyIHN1cmZhY2VzIGEgXCJ2ZXJpZnkgbWFudWFsbHlcIiBub3RlKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlcml2ZUhlYWx0aFVybCh0YXJnZXQ6IFRhcmdldElkLCBwYXJhbXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogc3RyaW5nIHwgbnVsbCB7XG4gIGlmICh0YXJnZXQgPT09ICdkb2NrZXInIHx8IHRhcmdldCA9PT0gJ21pbmlrdWJlJykgcmV0dXJuICdodHRwczovL2xvY2FsaG9zdDo4NDQzJztcbiAgY29uc3QgZG9tYWluID0gcGFyYW1zLmRvbWFpbjtcbiAgcmV0dXJuIHR5cGVvZiBkb21haW4gPT09ICdzdHJpbmcnICYmIGRvbWFpbiA/IGBodHRwczovLyR7ZG9tYWlufWAgOiBudWxsO1xufVxuXG5hc3luYyBmdW5jdGlvbiBwcm9iZSh1cmw6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICB0cnkge1xuICAgIC8vIFNraXAgY2VydCB2ZXJpZmljYXRpb24gb25seSBmb3IgbG9jYWwvc2VsZi1zaWduZWQgaG9zdHMgKGRvY2tlci9taW5pa3ViZSk7XG4gICAgLy8gYSByZWFsIGVjMi9la3MgZG9tYWluIHByZXNlbnRzIGEgdmFsaWQgQUNNIGNlcnQgYW5kIElTIHZlcmlmaWVkLlxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IGF4aW9zLmdldCh1cmwsIHsgdGltZW91dDogNTAwMCwgaHR0cHNBZ2VudDogaHR0cHNBZ2VudEZvclVybCh1cmwpLCB2YWxpZGF0ZVN0YXR1czogKCkgPT4gdHJ1ZSB9KTtcbiAgICByZXR1cm4gcmVzLnN0YXR1cyA+PSAyMDAgJiYgcmVzLnN0YXR1cyA8IDMwMDtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbmNvbnN0IGRlbGF5ID0gKG1zOiBudW1iZXIpID0+IG5ldyBQcm9taXNlPHZvaWQ+KChyKSA9PiBzZXRUaW1lb3V0KHIsIG1zKSk7XG5cbi8qKlxuICogUG9sbCBgPHVybD4vaGVhbHRoYCB0aGVuIGA8dXJsPi9yZWFkeWAgdW50aWwgYm90aCBwYXNzIG9yIHRoZSB0aW1lb3V0IGVsYXBzZXMuXG4gKiBOb24tZmF0YWwgYnkgZGVzaWduOiBhIHRpbWVvdXQgcmV0dXJucyBgaGVhbHRoeTogZmFsc2VgIHdpdGggZ3VpZGFuY2UsIG5ldmVyIHRocm93cy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdhaXRIZWFsdGh5KFxuICB1cmw6IHN0cmluZyxcbiAgb3B0czogeyB0aW1lb3V0TXM/OiBudW1iZXI7IGludGVydmFsTXM/OiBudW1iZXI7IHJlYWR5R3JhY2VNcz86IG51bWJlcjsgb25UaWNrPzogKG1zZzogc3RyaW5nKSA9PiB2b2lkIH0gPSB7fSxcbik6IFByb21pc2U8SGVhbHRoUmVzdWx0PiB7XG4gIGNvbnN0IHRpbWVvdXRNcyA9IG9wdHMudGltZW91dE1zID8/IDMwMF8wMDA7IC8vIDUgbWluIOKAlCBzZXJ2aWNlcyBjb21lIHVwIGFzeW5jXG4gIGNvbnN0IGludGVydmFsTXMgPSBvcHRzLmludGVydmFsTXMgPz8gMTBfMDAwO1xuICAvLyBPbmNlIC9oZWFsdGggaXMgdXAsIG9ubHkgd2FpdCB0aGlzIG11Y2ggbG9uZ2VyIGZvciAvcmVhZHkgYmVmb3JlIHByb2NlZWRpbmcuXG4gIGNvbnN0IHJlYWR5R3JhY2VNcyA9IG9wdHMucmVhZHlHcmFjZU1zID8/IDkwXzAwMDsgLy8gOTBzIGNvdmVycyBub3JtYWwgd2FybXVwXG4gIGNvbnN0IGRlYWRsaW5lID0gRGF0ZS5ub3coKSArIHRpbWVvdXRNcztcblxuICAvLyBXYWl0IGZvciAvaGVhbHRoLCB0aGVuIGdpdmUgL3JlYWR5IGEgQk9VTkRFRCBncmFjZSB3aW5kb3cuIC9oZWFsdGggZmxpcHMgZmlyc3RcbiAgLy8gKHRoZSBwcm9jZXNzIGlzIHVwKTsgL3JlYWR5IGFsc28gcmVxdWlyZXMgZXZlcnkgYmFja2VuZCBkZXBlbmRlbmN5IHRvIGJlIHVwLlxuICAvLyBXZSBwcmVmZXIgL3JlYWR5IChwb3N0LWluc3RhbGwgcmVnaXN0ZXIgaGl0cyBhIG5vdC15ZXQtcmVhZHkgcGxhdGZvcm0g4oaSIDUwMiksXG4gIC8vIGJ1dCBpZiBhIGRlcGVuZGVuY3kgaXMgRE9XTiAoZS5nLiBhIGNyYXNoLWxvb3Bpbmcgc2VydmljZSkgL3JlYWR5IG5ldmVyIGZsaXBzIOKAlFxuICAvLyBzbyB3ZSBtdXN0IG5vdCBibG9jayB0aGUgZnVsbCB0aW1lb3V0IG9uIGl0LiBPbmNlIC9oZWFsdGggaXMgdXAgd2Ugd2FpdCBhdCBtb3N0XG4gIC8vIGByZWFkeUdyYWNlTXNgIG1vcmUsIHRoZW4gcHJvY2VlZCB3aXRoIGEgd2FybmluZyAocmVnaXN0ZXIgb25seSBuZWVkcyB0aGVcbiAgLy8gcGxhdGZvcm0gc2VydmljZSwgd2hpY2ggL2hlYWx0aCBhbHJlYWR5IGNvbmZpcm1zIGlzIHVwKS5cbiAgbGV0IGhlYWx0aFNlZW5BdCA9IDA7XG4gIHdoaWxlIChEYXRlLm5vdygpIDwgZGVhZGxpbmUpIHtcbiAgICBpZiAoYXdhaXQgcHJvYmUoYCR7dXJsfS9oZWFsdGhgKSkge1xuICAgICAgaWYgKGhlYWx0aFNlZW5BdCA9PT0gMCkgaGVhbHRoU2VlbkF0ID0gRGF0ZS5ub3coKTtcbiAgICAgIGlmIChhd2FpdCBwcm9iZShgJHt1cmx9L3JlYWR5YCkpIHtcbiAgICAgICAgcmV0dXJuIHsgdXJsLCBoZWFsdGh5OiB0cnVlLCByZWFkeTogdHJ1ZSwgZGV0YWlsOiAnaGVhbHRoICsgcmVhZHkgT0snIH07XG4gICAgICB9XG4gICAgICBjb25zdCBsZWZ0TXMgPSByZWFkeUdyYWNlTXMgLSAoRGF0ZS5ub3coKSAtIGhlYWx0aFNlZW5BdCk7XG4gICAgICBpZiAobGVmdE1zIDw9IDApIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB1cmwsXG4gICAgICAgICAgaGVhbHRoeTogdHJ1ZSxcbiAgICAgICAgICByZWFkeTogZmFsc2UsXG4gICAgICAgICAgZGV0YWlsOiBgaGVhbHRoIE9LLCBidXQgL3JlYWR5IGRpZG4ndCBwYXNzIHdpdGhpbiAke01hdGgucm91bmQocmVhZHlHcmFjZU1zIC8gMTAwMCl9cyDigJQgYSBiYWNrZW5kIHNlcnZpY2UgaXMgbGlrZWx5IGRvd24gKGNoZWNrIFxcYGRvY2tlciBjb21wb3NlIHBzXFxgIC8gaXRzIGxvZ3MpLiBDb250aW51aW5nOyByb3V0ZXMgZm9yIHRoYXQgc2VydmljZSBtYXkgNTAyIHVudGlsIGl0J3MgaGVhbHRoeS5gLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgb3B0cy5vblRpY2s/LihgSGVhbHRoIE9LIOKAlCB3YWl0aW5nIHVwIHRvICR7TWF0aC5jZWlsKGxlZnRNcyAvIDEwMDApfXMgZm9yICR7dXJsfS9yZWFkeSAoZGVwZW5kZW5jaWVzIHdhcm1pbmcgdXApIOKApmApO1xuICAgIH0gZWxzZSB7XG4gICAgICBvcHRzLm9uVGljaz8uKGBXYWl0aW5nIGZvciAke3VybH0vaGVhbHRoIOKApmApO1xuICAgIH1cbiAgICBhd2FpdCBkZWxheShpbnRlcnZhbE1zKTtcbiAgfVxuICAvLyBPdmVyYWxsIHRpbWVvdXQuIElmIC9oZWFsdGggY2FtZSB1cCBidXQgL3JlYWR5IG5ldmVyIGRpZCwgcHJvY2VlZCAobm9uLWZhdGFsKS5cbiAgcmV0dXJuIGhlYWx0aFNlZW5BdCA+IDBcbiAgICA/IHsgdXJsLCBoZWFsdGh5OiB0cnVlLCByZWFkeTogZmFsc2UsIGRldGFpbDogJ2hlYWx0aCBPSyBidXQgL3JlYWR5IG5vdCByZWFjaGVkIOKAlCB0aGUgcGxhdGZvcm0gaXMgc3RpbGwgd2FybWluZyB1cDsgcG9zdC1pbnN0YWxsIHN0ZXBzIChyZWdpc3RlcikgbWF5IG5lZWQgYSByZS1ydW4nIH1cbiAgICA6IHsgdXJsLCBoZWFsdGh5OiBmYWxzZSwgcmVhZHk6IGZhbHNlLCBkZXRhaWw6IGBub3QgcmVhY2hhYmxlIHdpdGhpbiAke01hdGgucm91bmQodGltZW91dE1zIC8gMTAwMCl9cyDigJQgY2hlY2sgdGhlIHN0YWNrIC8gRE5TIC8gaGVhbHRoIGxvZ3NgIH07XG59XG5cbi8qKlxuICogTWluaWt1YmUgb25seTogdGhlIGdhdGV3YXkgKGh0dHBzOi8vbG9jYWxob3N0Ojg0NDMpIGlzIHJlYWNoZWQgdGhyb3VnaCBhXG4gKiBga3ViZWN0bCBwb3J0LWZvcndhcmQgc3ZjL25naW54YCB0aGF0IHNldHVwLnNoIGJhY2tncm91bmRzIOKAlCB3aGljaCBjYW4gZGllIG9yXG4gKiBmYWlsIHRvIGJpbmQgKGUuZy4gYSBidXN5IHBvcnQpIHdoaWxlIHRoZSBwb2RzIHN0YXkgaGVhbHRoeSwgbGVhdmluZyB0aGUgZ2F0ZXdheVxuICogdW5yZWFjaGFibGUgc28gdGhlIGhlYWx0aCBwb2xsIGp1c3QgdGltZXMgb3V0LiBCZWZvcmUgcG9sbGluZywgcHJvYmUgdGhlIGdhdGV3YXk7XG4gKiBpZiBpdCdzIGRvd24sIChyZSlzdGFydCB0aGUgZm9yd2FyZCBERVRBQ0hFRCBzbyBpdCBvdXRsaXZlcyB0aGlzIENMSSwgdGhlbiBnaXZlXG4gKiBpdCBhIG1vbWVudCB0byBiaW5kLiBCZXN0LWVmZm9ydDogbmV2ZXIgdGhyb3dzOyBvbiBuby1rdWJlY3RsIGl0IGxvZ3MgdGhlIG1hbnVhbFxuICogY29tbWFuZC4gKHNldHVwLnNoIG5vdyBmb3J3YXJkcyA4NDQzIG9ubHksIHNvIGEgYnVzeSA4MDgwIGNhbid0IHRha2UgaXQgZG93bi4pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBlbnN1cmVNaW5pa3ViZUdhdGV3YXkoXG4gIHVybDogc3RyaW5nLFxuICBvcHRzOiB7IG5zPzogc3RyaW5nOyBwb3J0PzogbnVtYmVyOyBvbkluZm8/OiAobXNnOiBzdHJpbmcpID0+IHZvaWQgfSA9IHt9LFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IG5zID0gb3B0cy5ucyA/PyAncGlwZWxpbmUtYnVpbGRlcic7XG4gIGNvbnN0IHBvcnQgPSBvcHRzLnBvcnQgPz8gODQ0MztcbiAgaWYgKGF3YWl0IHByb2JlKGAke3VybH0vaGVhbHRoYCkpIHJldHVybjsgLy8gZm9yd2FyZCBhbHJlYWR5IHVwIOKAlCBub3RoaW5nIHRvIGRvXG4gIG9wdHMub25JbmZvPy4oYEdhdGV3YXkgdW5yZWFjaGFibGUg4oCUIChyZSlzdGFydGluZyB0aGUgbmdpbnggcG9ydC1mb3J3YXJkIChzdmMvbmdpbnggJHtwb3J0fToke3BvcnR9LCBucyAke25zfSkg4oCmYCk7XG4gIC8vIEEgbWlzc2luZyBrdWJlY3RsIHN1cmZhY2VzIGFzIGFuIGFzeW5jICdlcnJvcicgZXZlbnQgKEVOT0VOVCksIE5PVCBhIHN5bmNocm9ub3VzXG4gIC8vIHRocm93IOKAlCBhIHRyeS9jYXRjaCB3b3VsZCBtaXNzIGl0IGFuZCB0aGUgdW5oYW5kbGVkIGV2ZW50IHdvdWxkIGNyYXNoIHRoZSBDTEkuIEF0dGFjaFxuICAvLyBhbiAnZXJyb3InIGxpc3RlbmVyIHNvIHRoaXMgc3RheXMgYmVzdC1lZmZvcnQgKGxvZ3MgdGhlIG1hbnVhbCBjb21tYW5kLCBuZXZlciB0aHJvd3MpLlxuICBjb25zdCBjaGlsZCA9IHNwYXduKCdrdWJlY3RsJywgWydwb3J0LWZvcndhcmQnLCAnLW4nLCBucywgJ3N2Yy9uZ2lueCcsIGAke3BvcnR9OiR7cG9ydH1gXSwge1xuICAgIGRldGFjaGVkOiB0cnVlLFxuICAgIHN0ZGlvOiAnaWdub3JlJyxcbiAgfSk7XG4gIGNoaWxkLm9uKCdlcnJvcicsICgpID0+IHtcbiAgICBvcHRzLm9uSW5mbz8uKGBDb3VsZG4ndCBzdGFydCBpdCAoaXMga3ViZWN0bCBvbiBQQVRIPykuIFN0YXJ0IGl0IG1hbnVhbGx5OiBrdWJlY3RsIHBvcnQtZm9yd2FyZCAtbiAke25zfSBzdmMvbmdpbnggJHtwb3J0fToke3BvcnR9YCk7XG4gIH0pO1xuICBjaGlsZC51bnJlZigpOyAvLyBkZXRhY2hlZCArIHVucmVmIOKGkiBzdXJ2aXZlcyB0aGlzIENMSSBzbyB0aGUgdXNlciBrZWVwcyB0aGUgZ2F0ZXdheVxuICBhd2FpdCBkZWxheSgyMDAwKTsgLy8gbGV0IGl0IGJpbmQgYmVmb3JlIHRoZSBjYWxsZXIgcG9sbHNcbn1cbiJdfQ==
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhbHRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FnZW50L2hlYWx0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDOzs7OztHQUtHO0FBRUgsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkQsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBY25EOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQUFDLE1BQWdCLEVBQUUsTUFBK0I7SUFDL0UsSUFBSSxNQUFNLEtBQUssUUFBUSxJQUFJLE1BQU0sS0FBSyxVQUFVO1FBQUUsT0FBTyx3QkFBd0IsQ0FBQztJQUNsRixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQzdCLE9BQU8sT0FBTyxNQUFNLEtBQUssUUFBUSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQzNFLENBQUM7QUFFRCxLQUFLLFVBQVUsS0FBSyxDQUFDLEdBQVc7SUFDOUIsSUFBSSxDQUFDO1FBQ0gsNkVBQTZFO1FBQzdFLG1FQUFtRTtRQUNuRSxNQUFNLEdBQUcsR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEVBQUUsY0FBYyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDbkgsT0FBTyxHQUFHLENBQUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztJQUMvQyxDQUFDO0lB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SSxDQUFDO0lBQy9CLElBQUksTUFBTSxLQUFLLENBQUMsR0FBRyxHQUFHLFNBQVMsQ0FBQztRQUFFLE9BQU8sQ0FBQyxxQ0FBcUM7SUFDL0UsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLHdFQUF3RSxJQUFJLElBQUksSUFBSSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkgsbUZBQW1GO0lBQ25GLHdGQUF3RjtJQUN4Rix5RkFBeUY7SUFDekYsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxHQUFHLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFO1FBQ3pGLFFBQVEsRUFBRSxJQUFJO1FBQ2QsS0FBSyxFQUFFLFFBQVE7S0FDaEIsQ0FBQyxDQUFDO0lBQ0gsS0FBSyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO1FBQ3JCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyx1RkFBdUYsRUFBRSxjQUFjLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZJLENBQUMsQ0FBQyxDQUFDO0lBQ0gsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMscUVBQXFFO0lBQ3BGLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsc0NBQXNDO0FBQzNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuLyoqXG4gKiBQb3N0LWRlcGxveSBoZWFsdGggdmVyaWZpY2F0aW9uLiBBIENsb3VkRm9ybWF0aW9uIENSRUFURV9DT01QTEVURSAob3IgYVxuICogZmluaXNoZWQgc2V0dXAuc2gpIGRvZXMgTk9UIG1lYW4gdGhlIGFwcCBpcyBzZXJ2aW5nIOKAlCB0aGUgQUxCIHRhcmdldHMgc3RheVxuICogdW5oZWFsdGh5IHVudGlsIHRhc2tzL3BvZHMgY29tZSB1cC4gVGhlIHJlYWwgZG9uZS1zaWduYWwgaXMgdGhlIHBsYXRmb3JtJ3NcbiAqIGAvaGVhbHRoYCArIGAvcmVhZHlgIGVuZHBvaW50cywgc28gdGhlIGV4ZWN1dG9yIHBvbGxzIHRoZW0gd2l0aCBiYWNrb2ZmLlxuICovXG5cbmltcG9ydCB7IHNwYXduIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgeyBzbGVlcCB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgdHlwZSB7IFRhcmdldElkIH0gZnJvbSAnLi90YXJnZXRzLmpzJztcbmltcG9ydCB7IGh0dHBzQWdlbnRGb3JVcmwgfSBmcm9tICcuLi91dGlscy90bHMuanMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEhlYWx0aFJlc3VsdCB7XG4gIHJlYWRvbmx5IHVybDogc3RyaW5nO1xuICByZWFkb25seSBoZWFsdGh5OiBib29sZWFuO1xuICAvKipcbiAgICogVHJ1ZSBvbmx5IHdoZW4gQk9USCAvaGVhbHRoIGFuZCAvcmVhZHkgcGFzc2VkLiBEaXN0aW5ndWlzaGVzIGEgZnVsbHktcmVhZHlcbiAgICogcGxhdGZvcm0gZnJvbSB0aGUgZGVncmFkZWQgXCJoZWFsdGggT0sgYnV0IC9yZWFkeSBuZXZlciBjYW1lLCBwcm9jZWVkaW5nIGFueXdheVwiXG4gICAqIHN0YXRlIOKAlCBib3RoIGhhdmUgaGVhbHRoeTp0cnVlLCBzbyBjYWxsZXJzIHNob3VsZCBzdHlsZSBzdWNjZXNzIG9uIGByZWFkeWAuXG4gICAqL1xuICByZWFkb25seSByZWFkeTogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZGV0YWlsOiBzdHJpbmc7XG59XG5cbi8qKlxuICogRGVyaXZlIHRoZSBVUkwgdGhlIHBsYXRmb3JtIHNob3VsZCBiZSByZWFjaGFibGUgYXQuIExvY2FsL21pbmlrdWJlIGZyb250IHRoZVxuICogc3RhY2sgb24gbG9jYWxob3N0Ojg0NDM7IEVDMi9FS1MgdXNlIHRoZSBkZXBsb3kgZG9tYWluLiBSZXR1cm5zIG51bGwgd2hlblxuICogaXQgY2FuJ3QgYmUgZGV0ZXJtaW5lZCAoY2FsbGVyIHN1cmZhY2VzIGEgXCJ2ZXJpZnkgbWFudWFsbHlcIiBub3RlKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlcml2ZUhlYWx0aFVybCh0YXJnZXQ6IFRhcmdldElkLCBwYXJhbXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogc3RyaW5nIHwgbnVsbCB7XG4gIGlmICh0YXJnZXQgPT09ICdkb2NrZXInIHx8IHRhcmdldCA9PT0gJ21pbmlrdWJlJykgcmV0dXJuICdodHRwczovL2xvY2FsaG9zdDo4NDQzJztcbiAgY29uc3QgZG9tYWluID0gcGFyYW1zLmRvbWFpbjtcbiAgcmV0dXJuIHR5cGVvZiBkb21haW4gPT09ICdzdHJpbmcnICYmIGRvbWFpbiA/IGBodHRwczovLyR7ZG9tYWlufWAgOiBudWxsO1xufVxuXG5hc3luYyBmdW5jdGlvbiBwcm9iZSh1cmw6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICB0cnkge1xuICAgIC8vIFNraXAgY2VydCB2ZXJpZmljYXRpb24gb25seSBmb3IgbG9jYWwvc2VsZi1zaWduZWQgaG9zdHMgKGRvY2tlci9taW5pa3ViZSk7XG4gICAgLy8gYSByZWFsIGVjMi9la3MgZG9tYWluIHByZXNlbnRzIGEgdmFsaWQgQUNNIGNlcnQgYW5kIElTIHZlcmlmaWVkLlxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IGF4aW9zLmdldCh1cmwsIHsgdGltZW91dDogNTAwMCwgaHR0cHNBZ2VudDogaHR0cHNBZ2VudEZvclVybCh1cmwpLCB2YWxpZGF0ZVN0YXR1czogKCkgPT4gdHJ1ZSB9KTtcbiAgICByZXR1cm4gcmVzLnN0YXR1cyA+PSAyMDAgJiYgcmVzLnN0YXR1cyA8IDMwMDtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogUG9sbCBgPHVybD4vaGVhbHRoYCB0aGVuIGA8dXJsPi9yZWFkeWAgdW50aWwgYm90aCBwYXNzIG9yIHRoZSB0aW1lb3V0IGVsYXBzZXMuXG4gKiBOb24tZmF0YWwgYnkgZGVzaWduOiBhIHRpbWVvdXQgcmV0dXJucyBgaGVhbHRoeTogZmFsc2VgIHdpdGggZ3VpZGFuY2UsIG5ldmVyIHRocm93cy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdhaXRIZWFsdGh5KFxuICB1cmw6IHN0cmluZyxcbiAgb3B0czogeyB0aW1lb3V0TXM/OiBudW1iZXI7IGludGVydmFsTXM/OiBudW1iZXI7IHJlYWR5R3JhY2VNcz86IG51bWJlcjsgb25UaWNrPzogKG1zZzogc3RyaW5nKSA9PiB2b2lkIH0gPSB7fSxcbik6IFByb21pc2U8SGVhbHRoUmVzdWx0PiB7XG4gIGNvbnN0IHRpbWVvdXRNcyA9IG9wdHMudGltZW91dE1zID8/IDMwMF8wMDA7IC8vIDUgbWluIOKAlCBzZXJ2aWNlcyBjb21lIHVwIGFzeW5jXG4gIGNvbnN0IGludGVydmFsTXMgPSBvcHRzLmludGVydmFsTXMgPz8gMTBfMDAwO1xuICAvLyBPbmNlIC9oZWFsdGggaXMgdXAsIG9ubHkgd2FpdCB0aGlzIG11Y2ggbG9uZ2VyIGZvciAvcmVhZHkgYmVmb3JlIHByb2NlZWRpbmcuXG4gIGNvbnN0IHJlYWR5R3JhY2VNcyA9IG9wdHMucmVhZHlHcmFjZU1zID8/IDkwXzAwMDsgLy8gOTBzIGNvdmVycyBub3JtYWwgd2FybXVwXG4gIGNvbnN0IGRlYWRsaW5lID0gRGF0ZS5ub3coKSArIHRpbWVvdXRNcztcblxuICAvLyBXYWl0IGZvciAvaGVhbHRoLCB0aGVuIGdpdmUgL3JlYWR5IGEgQk9VTkRFRCBncmFjZSB3aW5kb3cuIC9oZWFsdGggZmxpcHMgZmlyc3RcbiAgLy8gKHRoZSBwcm9jZXNzIGlzIHVwKTsgL3JlYWR5IGFsc28gcmVxdWlyZXMgZXZlcnkgYmFja2VuZCBkZXBlbmRlbmN5IHRvIGJlIHVwLlxuICAvLyBXZSBwcmVmZXIgL3JlYWR5IChwb3N0LWluc3RhbGwgcmVnaXN0ZXIgaGl0cyBhIG5vdC15ZXQtcmVhZHkgcGxhdGZvcm0g4oaSIDUwMiksXG4gIC8vIGJ1dCBpZiBhIGRlcGVuZGVuY3kgaXMgRE9XTiAoZS5nLiBhIGNyYXNoLWxvb3Bpbmcgc2VydmljZSkgL3JlYWR5IG5ldmVyIGZsaXBzIOKAlFxuICAvLyBzbyB3ZSBtdXN0IG5vdCBibG9jayB0aGUgZnVsbCB0aW1lb3V0IG9uIGl0LiBPbmNlIC9oZWFsdGggaXMgdXAgd2Ugd2FpdCBhdCBtb3N0XG4gIC8vIGByZWFkeUdyYWNlTXNgIG1vcmUsIHRoZW4gcHJvY2VlZCB3aXRoIGEgd2FybmluZyAocmVnaXN0ZXIgb25seSBuZWVkcyB0aGVcbiAgLy8gcGxhdGZvcm0gc2VydmljZSwgd2hpY2ggL2hlYWx0aCBhbHJlYWR5IGNvbmZpcm1zIGlzIHVwKS5cbiAgbGV0IGhlYWx0aFNlZW5BdCA9IDA7XG4gIHdoaWxlIChEYXRlLm5vdygpIDwgZGVhZGxpbmUpIHtcbiAgICBpZiAoYXdhaXQgcHJvYmUoYCR7dXJsfS9oZWFsdGhgKSkge1xuICAgICAgaWYgKGhlYWx0aFNlZW5BdCA9PT0gMCkgaGVhbHRoU2VlbkF0ID0gRGF0ZS5ub3coKTtcbiAgICAgIGlmIChhd2FpdCBwcm9iZShgJHt1cmx9L3JlYWR5YCkpIHtcbiAgICAgICAgcmV0dXJuIHsgdXJsLCBoZWFsdGh5OiB0cnVlLCByZWFkeTogdHJ1ZSwgZGV0YWlsOiAnaGVhbHRoICsgcmVhZHkgT0snIH07XG4gICAgICB9XG4gICAgICBjb25zdCBsZWZ0TXMgPSByZWFkeUdyYWNlTXMgLSAoRGF0ZS5ub3coKSAtIGhlYWx0aFNlZW5BdCk7XG4gICAgICBpZiAobGVmdE1zIDw9IDApIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB1cmwsXG4gICAgICAgICAgaGVhbHRoeTogdHJ1ZSxcbiAgICAgICAgICByZWFkeTogZmFsc2UsXG4gICAgICAgICAgZGV0YWlsOiBgaGVhbHRoIE9LLCBidXQgL3JlYWR5IGRpZG4ndCBwYXNzIHdpdGhpbiAke01hdGgucm91bmQocmVhZHlHcmFjZU1zIC8gMTAwMCl9cyDigJQgYSBiYWNrZW5kIHNlcnZpY2UgaXMgbGlrZWx5IGRvd24gKGNoZWNrIFxcYGRvY2tlciBjb21wb3NlIHBzXFxgIC8gaXRzIGxvZ3MpLiBDb250aW51aW5nOyByb3V0ZXMgZm9yIHRoYXQgc2VydmljZSBtYXkgNTAyIHVudGlsIGl0J3MgaGVhbHRoeS5gLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgb3B0cy5vblRpY2s/LihgSGVhbHRoIE9LIOKAlCB3YWl0aW5nIHVwIHRvICR7TWF0aC5jZWlsKGxlZnRNcyAvIDEwMDApfXMgZm9yICR7dXJsfS9yZWFkeSAoZGVwZW5kZW5jaWVzIHdhcm1pbmcgdXApIOKApmApO1xuICAgIH0gZWxzZSB7XG4gICAgICBvcHRzLm9uVGljaz8uKGBXYWl0aW5nIGZvciAke3VybH0vaGVhbHRoIOKApmApO1xuICAgIH1cbiAgICBhd2FpdCBzbGVlcChpbnRlcnZhbE1zKTtcbiAgfVxuICAvLyBPdmVyYWxsIHRpbWVvdXQuIElmIC9oZWFsdGggY2FtZSB1cCBidXQgL3JlYWR5IG5ldmVyIGRpZCwgcHJvY2VlZCAobm9uLWZhdGFsKS5cbiAgcmV0dXJuIGhlYWx0aFNlZW5BdCA+IDBcbiAgICA/IHsgdXJsLCBoZWFsdGh5OiB0cnVlLCByZWFkeTogZmFsc2UsIGRldGFpbDogJ2hlYWx0aCBPSyBidXQgL3JlYWR5IG5vdCByZWFjaGVkIOKAlCB0aGUgcGxhdGZvcm0gaXMgc3RpbGwgd2FybWluZyB1cDsgcG9zdC1pbnN0YWxsIHN0ZXBzIChyZWdpc3RlcikgbWF5IG5lZWQgYSByZS1ydW4nIH1cbiAgICA6IHsgdXJsLCBoZWFsdGh5OiBmYWxzZSwgcmVhZHk6IGZhbHNlLCBkZXRhaWw6IGBub3QgcmVhY2hhYmxlIHdpdGhpbiAke01hdGgucm91bmQodGltZW91dE1zIC8gMTAwMCl9cyDigJQgY2hlY2sgdGhlIHN0YWNrIC8gRE5TIC8gaGVhbHRoIGxvZ3NgIH07XG59XG5cbi8qKlxuICogTWluaWt1YmUgb25seTogdGhlIGdhdGV3YXkgKGh0dHBzOi8vbG9jYWxob3N0Ojg0NDMpIGlzIHJlYWNoZWQgdGhyb3VnaCBhXG4gKiBga3ViZWN0bCBwb3J0LWZvcndhcmQgc3ZjL25naW54YCB0aGF0IHNldHVwLnNoIGJhY2tncm91bmRzIOKAlCB3aGljaCBjYW4gZGllIG9yXG4gKiBmYWlsIHRvIGJpbmQgKGUuZy4gYSBidXN5IHBvcnQpIHdoaWxlIHRoZSBwb2RzIHN0YXkgaGVhbHRoeSwgbGVhdmluZyB0aGUgZ2F0ZXdheVxuICogdW5yZWFjaGFibGUgc28gdGhlIGhlYWx0aCBwb2xsIGp1c3QgdGltZXMgb3V0LiBCZWZvcmUgcG9sbGluZywgcHJvYmUgdGhlIGdhdGV3YXk7XG4gKiBpZiBpdCdzIGRvd24sIChyZSlzdGFydCB0aGUgZm9yd2FyZCBERVRBQ0hFRCBzbyBpdCBvdXRsaXZlcyB0aGlzIENMSSwgdGhlbiBnaXZlXG4gKiBpdCBhIG1vbWVudCB0byBiaW5kLiBCZXN0LWVmZm9ydDogbmV2ZXIgdGhyb3dzOyBvbiBuby1rdWJlY3RsIGl0IGxvZ3MgdGhlIG1hbnVhbFxuICogY29tbWFuZC4gKHNldHVwLnNoIG5vdyBmb3J3YXJkcyA4NDQzIG9ubHksIHNvIGEgYnVzeSA4MDgwIGNhbid0IHRha2UgaXQgZG93bi4pXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBlbnN1cmVNaW5pa3ViZUdhdGV3YXkoXG4gIHVybDogc3RyaW5nLFxuICBvcHRzOiB7IG5zPzogc3RyaW5nOyBwb3J0PzogbnVtYmVyOyBvbkluZm8/OiAobXNnOiBzdHJpbmcpID0+IHZvaWQgfSA9IHt9LFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IG5zID0gb3B0cy5ucyA/PyAncGlwZWxpbmUtYnVpbGRlcic7XG4gIGNvbnN0IHBvcnQgPSBvcHRzLnBvcnQgPz8gODQ0MztcbiAgaWYgKGF3YWl0IHByb2JlKGAke3VybH0vaGVhbHRoYCkpIHJldHVybjsgLy8gZm9yd2FyZCBhbHJlYWR5IHVwIOKAlCBub3RoaW5nIHRvIGRvXG4gIG9wdHMub25JbmZvPy4oYEdhdGV3YXkgdW5yZWFjaGFibGUg4oCUIChyZSlzdGFydGluZyB0aGUgbmdpbnggcG9ydC1mb3J3YXJkIChzdmMvbmdpbnggJHtwb3J0fToke3BvcnR9LCBucyAke25zfSkg4oCmYCk7XG4gIC8vIEEgbWlzc2luZyBrdWJlY3RsIHN1cmZhY2VzIGFzIGFuIGFzeW5jICdlcnJvcicgZXZlbnQgKEVOT0VOVCksIE5PVCBhIHN5bmNocm9ub3VzXG4gIC8vIHRocm93IOKAlCBhIHRyeS9jYXRjaCB3b3VsZCBtaXNzIGl0IGFuZCB0aGUgdW5oYW5kbGVkIGV2ZW50IHdvdWxkIGNyYXNoIHRoZSBDTEkuIEF0dGFjaFxuICAvLyBhbiAnZXJyb3InIGxpc3RlbmVyIHNvIHRoaXMgc3RheXMgYmVzdC1lZmZvcnQgKGxvZ3MgdGhlIG1hbnVhbCBjb21tYW5kLCBuZXZlciB0aHJvd3MpLlxuICBjb25zdCBjaGlsZCA9IHNwYXduKCdrdWJlY3RsJywgWydwb3J0LWZvcndhcmQnLCAnLW4nLCBucywgJ3N2Yy9uZ2lueCcsIGAke3BvcnR9OiR7cG9ydH1gXSwge1xuICAgIGRldGFjaGVkOiB0cnVlLFxuICAgIHN0ZGlvOiAnaWdub3JlJyxcbiAgfSk7XG4gIGNoaWxkLm9uKCdlcnJvcicsICgpID0+IHtcbiAgICBvcHRzLm9uSW5mbz8uKGBDb3VsZG4ndCBzdGFydCBpdCAoaXMga3ViZWN0bCBvbiBQQVRIPykuIFN0YXJ0IGl0IG1hbnVhbGx5OiBrdWJlY3RsIHBvcnQtZm9yd2FyZCAtbiAke25zfSBzdmMvbmdpbnggJHtwb3J0fToke3BvcnR9YCk7XG4gIH0pO1xuICBjaGlsZC51bnJlZigpOyAvLyBkZXRhY2hlZCArIHVucmVmIOKGkiBzdXJ2aXZlcyB0aGlzIENMSSBzbyB0aGUgdXNlciBrZWVwcyB0aGUgZ2F0ZXdheVxuICBhd2FpdCBzbGVlcCgyMDAwKTsgLy8gbGV0IGl0IGJpbmQgYmVmb3JlIHRoZSBjYWxsZXIgcG9sbHNcbn1cbiJdfQ==
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { type AiOptions } from '../agent/ai.js';
|
|
2
|
+
import { type BootstrapSpec } from '../agent/bootstrap.js';
|
|
3
|
+
import { type PostStep, type SkippedStep } from '../agent/post-steps.js';
|
|
4
|
+
import { type PrereqCheck } from '../agent/prereqs.js';
|
|
5
|
+
import { type AssembleResult, type TargetId, type TargetSpec } from '../agent/targets.js';
|
|
6
|
+
/**
|
|
7
|
+
* The `provision` command's STEPS: one exported function per phase of a
|
|
8
|
+
* provision run (port pre-flight, teardown, bootstrap+locate, the deploy
|
|
9
|
+
* retry loop, the interactive load picker, post-steps, health, diagnose,
|
|
10
|
+
* plan printing).
|
|
11
|
+
*
|
|
12
|
+
* Split out from `provision.ts` so that file holds only what it is about — the
|
|
13
|
+
* ~40-option table and the sequencing narrative that calls these in order. The
|
|
14
|
+
* steps are the part with behaviour worth testing on its own, and the repo
|
|
15
|
+
* already calls them that (`test/provision-seams.test.ts`).
|
|
16
|
+
*
|
|
17
|
+
* Each step takes what it needs and returns what the next one needs: no
|
|
18
|
+
* module-level mutable state crosses this boundary, so the two halves can be
|
|
19
|
+
* read independently.
|
|
20
|
+
*/
|
|
21
|
+
/**
|
|
22
|
+
* Post-deploy initialization mode (the single `--init <mode>` flag):
|
|
23
|
+
* - `auto` — init-platform runs once the platform is up (register admin + load plugins/
|
|
24
|
+
* compliance/samples). On ec2 the instance does it itself on first boot; on
|
|
25
|
+
* local/minikube/eks `provision` runs it for you. This is the DEFAULT.
|
|
26
|
+
* - `manual` — don't self-init; surface the exact step for you to run yourself.
|
|
27
|
+
* - `skip` — don't initialize at all (no register, no loads).
|
|
28
|
+
*/
|
|
29
|
+
export type InitMode = 'auto' | 'manual' | 'skip';
|
|
30
|
+
export declare const INIT_MODES: readonly InitMode[];
|
|
31
|
+
/**
|
|
32
|
+
* Resolve the init mode from `--init <mode>`, defaulting to `auto` when the flag is absent.
|
|
33
|
+
* Returns `null` when `--init` was given an invalid value (caller errors).
|
|
34
|
+
*/
|
|
35
|
+
export declare function resolveInitMode(options: {
|
|
36
|
+
init?: unknown;
|
|
37
|
+
}): InitMode | null;
|
|
38
|
+
/** Interactive y/N confirmation; auto-true when `autoYes` (the `--yes` flag). */
|
|
39
|
+
export declare function confirm(question: string, autoYes: boolean): Promise<boolean>;
|
|
40
|
+
/**
|
|
41
|
+
* Host-port pre-flight (local/minikube). Ports are DERIVED from the target's cloned
|
|
42
|
+
* deploy source (compose / setup.sh) so the list can't drift — hence this runs AFTER
|
|
43
|
+
* the clone. A taken port makes a container/forward fail to bind mid-deploy (for the
|
|
44
|
+
* gateway, a silent unreachable hang). Prints a ✓/✗ summary and returns false ONLY
|
|
45
|
+
* when the caller must ABORT (a fatal local conflict). minikube ports are managed
|
|
46
|
+
* forwards (setup.sh pkills/restarts them), so a conflict there warns but proceeds.
|
|
47
|
+
* Remote targets (ec2/eks) bind nothing locally → returns true.
|
|
48
|
+
*/
|
|
49
|
+
export declare function preflightPorts(spec: TargetSpec, target: TargetId, cwd: string): Promise<boolean>;
|
|
50
|
+
/**
|
|
51
|
+
* Teardown mode — the destroy counterpart of provisioning, gated HARDER than deploy:
|
|
52
|
+
* AWS targets are irreversible, so the operator must TYPE the target id (--force
|
|
53
|
+
* bypasses for CI; --yes alone does NOT). Terminal: owns its output + exitCode.
|
|
54
|
+
*/
|
|
55
|
+
export declare function runTeardown(spec: TargetSpec, target: TargetId, cwd: string, executionId: string, opts: {
|
|
56
|
+
stackName?: string;
|
|
57
|
+
clusterName?: string;
|
|
58
|
+
region?: string;
|
|
59
|
+
domain?: string;
|
|
60
|
+
hostedZoneId?: string;
|
|
61
|
+
force?: boolean;
|
|
62
|
+
yes?: boolean;
|
|
63
|
+
json?: boolean;
|
|
64
|
+
}): Promise<void>;
|
|
65
|
+
/**
|
|
66
|
+
* Run the deploy command (real, secrets unmasked, streamed + captured) with a
|
|
67
|
+
* bounded auto-fix + retry loop — the deploy scripts are idempotent, so a fixed
|
|
68
|
+
* re-run resumes rather than starting over. Returns whether it succeeded plus the
|
|
69
|
+
* (possibly fix-adjusted) params, which the caller needs for SES guidance.
|
|
70
|
+
*/
|
|
71
|
+
export declare function runDeployWithRetry(spec: TargetSpec, url: string | null, cwd: string, params: Record<string, unknown>, aiOpts: {
|
|
72
|
+
provider?: string;
|
|
73
|
+
model?: string;
|
|
74
|
+
}, opts: {
|
|
75
|
+
retries?: string;
|
|
76
|
+
yes?: boolean;
|
|
77
|
+
}): Promise<{
|
|
78
|
+
succeeded: boolean;
|
|
79
|
+
runParams: Record<string, unknown>;
|
|
80
|
+
}>;
|
|
81
|
+
/**
|
|
82
|
+
* Execute the post-install steps (register → loads → smoke → events → custom). On
|
|
83
|
+
* EC2/EKS the register step + the events bundle (store-token → setup-events) are
|
|
84
|
+
* SURFACED as ordered manual next-steps instead of auto-run: ec2 register must run
|
|
85
|
+
* ON the box (the minikube user owns the cluster), and the events bundle needs a
|
|
86
|
+
* registered platform + AWS creds. (eks register itself port-forwards, so it runs
|
|
87
|
+
* from anywhere with kubectl access.) Sets exitCode on a step failure.
|
|
88
|
+
*/
|
|
89
|
+
export declare function runPostSteps(postSteps: PostStep[], skippedSteps: SkippedStep[], target: TargetId, cwd: string, adminEnv: Record<string, string>, opts: {
|
|
90
|
+
yes?: boolean;
|
|
91
|
+
autoRun?: boolean;
|
|
92
|
+
autoInit?: boolean;
|
|
93
|
+
}): Promise<void>;
|
|
94
|
+
/**
|
|
95
|
+
* Sparse-clone the platform repo (when --repo, or accepted via the interactive
|
|
96
|
+
* offer), repoint cwd into it, and verify the deploy entrypoint exists. Owns the
|
|
97
|
+
* cwd/bootstrapped state. Sets exitCode on a hard failure (clone error / missing
|
|
98
|
+
* entrypoint); a plain decline leaves exitCode
|
|
99
|
+
* untouched. Returns ok:false when the caller must abort.
|
|
100
|
+
*/
|
|
101
|
+
export declare function bootstrapAndLocate(spec: TargetSpec, bootstrap: BootstrapSpec, bootstrapCmd: string | null, sparsePaths: readonly string[], startCwd: string, opts: {
|
|
102
|
+
yes?: boolean;
|
|
103
|
+
}): Promise<{
|
|
104
|
+
cwd: string;
|
|
105
|
+
bootstrapped: boolean;
|
|
106
|
+
ok: boolean;
|
|
107
|
+
}>;
|
|
108
|
+
/**
|
|
109
|
+
* Interactive opt-in loads, offered AFTER the clone (so we only ask once the operator
|
|
110
|
+
* has agreed to proceed). Prompts per load, additively sparse-fetches the picked
|
|
111
|
+
* folders into a bootstrapped sparse clone, then re-resolves the post-install steps
|
|
112
|
+
* with the selections. Returns the chosen ids + the recomputed steps.
|
|
113
|
+
*/
|
|
114
|
+
export declare function resolveLoadsInteractively(target: TargetId, url: string | null, region: string | undefined, cwd: string, bootstrapped: boolean, bootstrap: BootstrapSpec, postStepFlags: {
|
|
115
|
+
init: boolean;
|
|
116
|
+
autoInit: boolean;
|
|
117
|
+
buildBootstrap: boolean;
|
|
118
|
+
smokeTest: boolean;
|
|
119
|
+
events: boolean;
|
|
120
|
+
steps: string[];
|
|
121
|
+
}): Promise<{
|
|
122
|
+
enabledLoadIds: string[];
|
|
123
|
+
steps: PostStep[];
|
|
124
|
+
skipped: SkippedStep[];
|
|
125
|
+
}>;
|
|
126
|
+
/**
|
|
127
|
+
* Assemble deploy params from explicit flags (flags always win over the NL
|
|
128
|
+
* parse, which only fills gaps).
|
|
129
|
+
*/
|
|
130
|
+
export declare function buildParams(options: Record<string, unknown>, selfInit: boolean): Record<string, unknown>;
|
|
131
|
+
/**
|
|
132
|
+
* `--diagnose <file>`: explain a deploy failure with the configured model. A
|
|
133
|
+
* read-only inspection mode — the caller returns afterwards whether or not a
|
|
134
|
+
* target was given, so it never falls through into a (possibly --yes) deploy.
|
|
135
|
+
*/
|
|
136
|
+
export declare function runDiagnose(file: string, json: boolean, aiOpts: AiOptions, executionId: string): Promise<void>;
|
|
137
|
+
/** Print the provision plan (shown before the gated execution). */
|
|
138
|
+
export declare function printPlan(p: {
|
|
139
|
+
spec: TargetSpec;
|
|
140
|
+
target: TargetId;
|
|
141
|
+
prereqs: PrereqCheck[];
|
|
142
|
+
missing: AssembleResult['missing'];
|
|
143
|
+
bootstrap: BootstrapSpec;
|
|
144
|
+
bootstrapCmd: string | null;
|
|
145
|
+
sparsePaths: string[];
|
|
146
|
+
command: string;
|
|
147
|
+
postSteps: PostStep[];
|
|
148
|
+
skippedSteps: SkippedStep[];
|
|
149
|
+
}): void;
|
|
150
|
+
/**
|
|
151
|
+
* Plugins were picked interactively: re-check the plugin-specific prereqs that
|
|
152
|
+
* were deliberately not hard-required up front (e.g. yq for minikube plugin
|
|
153
|
+
* builds). Offer to fetch any fetchable one; warn (don't block — the platform
|
|
154
|
+
* still deploys) if it can't be resolved, so the later plugin build doesn't
|
|
155
|
+
* fail opaquely.
|
|
156
|
+
*/
|
|
157
|
+
export declare function recheckPluginPrereqs(target: TargetId, wantBootstrap: boolean, prereqs: PrereqCheck[], yes: boolean): Promise<void>;
|
|
158
|
+
/**
|
|
159
|
+
* local/minikube's setup.sh REQUIRES a `.env` and aborts without it — create
|
|
160
|
+
* it from .env.example with generated secrets so the deploy is non-interactive.
|
|
161
|
+
* ec2 and eks don't need a local `.env`: ec2 bootstraps its secrets on the
|
|
162
|
+
* instance, and eks's setup.sh creates the k8s secrets itself.
|
|
163
|
+
*/
|
|
164
|
+
export declare function ensureLocalEnvFile(target: TargetId, spec: TargetSpec, cwd: string, yes: boolean): Promise<void>;
|
|
165
|
+
/**
|
|
166
|
+
* Any missing required prereq that's a single static binary (e.g. yq) can be
|
|
167
|
+
* fetched into the tools cache instead of a system install — no brew/apt.
|
|
168
|
+
* Offer it, then re-check (the cache dir is already on PATH). Returns the
|
|
169
|
+
* (possibly refreshed) prereq list.
|
|
170
|
+
*/
|
|
171
|
+
export declare function offerToolFetch(prereqs: PrereqCheck[], yes: boolean, recheck: () => PrereqCheck[]): Promise<PrereqCheck[]>;
|
|
172
|
+
/** Verify health after the deploy (CREATE_COMPLETE != serving). */
|
|
173
|
+
export declare function verifyHealth(target: TargetId, url: string): Promise<void>;
|
|
174
|
+
//# sourceMappingURL=provision-steps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provision-steps.d.ts","sourceRoot":"","sources":["../../src/commands/provision-steps.ts"],"names":[],"mappings":"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"}
|