@calltelemetry/cli 0.12.2 → 0.12.5
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/commands/cube.d.ts.map +1 -1
- package/dist/commands/cube.js +7 -2
- package/dist/commands/cube.js.map +1 -1
- package/dist/lib/appliance-proxy-policy.d.ts +10 -3
- package/dist/lib/appliance-proxy-policy.d.ts.map +1 -1
- package/dist/lib/appliance-proxy-policy.js +39 -10
- package/dist/lib/appliance-proxy-policy.js.map +1 -1
- package/dist/lib/cube-diag.d.ts +5 -1
- package/dist/lib/cube-diag.d.ts.map +1 -1
- package/dist/lib/cube-diag.js +490 -8
- package/dist/lib/cube-diag.js.map +1 -1
- package/dist/lib/seaweed-backup.d.ts +53 -0
- package/dist/lib/seaweed-backup.d.ts.map +1 -0
- package/dist/lib/seaweed-backup.js +252 -0
- package/dist/lib/seaweed-backup.js.map +1 -0
- package/dist/lib/update-steps.d.ts.map +1 -1
- package/dist/lib/update-steps.js +43 -0
- package/dist/lib/update-steps.js.map +1 -1
- package/dist/lib/update.d.ts.map +1 -1
- package/dist/lib/update.js +29 -0
- package/dist/lib/update.js.map +1 -1
- package/dist/lib/version.d.ts +1 -1
- package/dist/lib/version.js +1 -1
- package/dist/shell/commands/cube.d.ts +1 -1
- package/dist/shell/commands/cube.d.ts.map +1 -1
- package/dist/shell/commands/cube.js +7 -3
- package/dist/shell/commands/cube.js.map +1 -1
- package/dist/shell/commands/registry.d.ts.map +1 -1
- package/dist/shell/commands/registry.js +1 -0
- package/dist/shell/commands/registry.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cube.d.ts","sourceRoot":"","sources":["../../src/commands/cube.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"cube.d.ts","sourceRoot":"","sources":["../../src/commands/cube.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,QA0CnD"}
|
package/dist/commands/cube.js
CHANGED
|
@@ -15,14 +15,18 @@ export function registerCubeCommand(program) {
|
|
|
15
15
|
.option('--output <path>', 'Write the bundle to this path instead of ./cube-diag-<ISO>.log')
|
|
16
16
|
.option('--capture <secs>', 'Live-capture cube.> and alarms.> NATS subjects for N seconds', '0')
|
|
17
17
|
.option('--monitor <secs>', 'RPC-poll each cube state/interval every ~5s for N seconds', '0')
|
|
18
|
+
.option('--pcap <secs>', 'tcpdump the XCC wire (bridge web:4080 + host TLS ingress) for N seconds', '0')
|
|
18
19
|
.action(async (opts) => {
|
|
19
|
-
// Strict parse FIRST — a junk `--capture`/`--monitor` must fail
|
|
20
|
-
// silently coerce to 0 and look like a successful run that
|
|
20
|
+
// Strict parse FIRST — a junk `--capture`/`--monitor`/`--pcap` must fail
|
|
21
|
+
// loudly, not silently coerce to 0 and look like a successful run that
|
|
22
|
+
// skipped the requested collection.
|
|
21
23
|
let captureSecs;
|
|
22
24
|
let monitorSecs;
|
|
25
|
+
let pcapSecs;
|
|
23
26
|
try {
|
|
24
27
|
captureSecs = parseNonNegativeSecs(opts.capture, '--capture');
|
|
25
28
|
monitorSecs = parseNonNegativeSecs(opts.monitor, '--monitor');
|
|
29
|
+
pcapSecs = parseNonNegativeSecs(opts.pcap, '--pcap');
|
|
26
30
|
}
|
|
27
31
|
catch (err) {
|
|
28
32
|
out.fail(err instanceof Error ? err.message : String(err));
|
|
@@ -35,6 +39,7 @@ export function registerCubeCommand(program) {
|
|
|
35
39
|
outputPath: opts.output,
|
|
36
40
|
captureSecs,
|
|
37
41
|
monitorSecs,
|
|
42
|
+
pcapSecs,
|
|
38
43
|
});
|
|
39
44
|
out.ok(`Cube diagnostic bundle written to ${path}`);
|
|
40
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cube.js","sourceRoot":"","sources":["../../src/commands/cube.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAE1C;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,MAAM,IAAI,GAAG,OAAO;SACjB,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAEnC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;SACjB,WAAW,CAAC,4EAA4E,CAAC;SACzF,MAAM,CAAC,iBAAiB,EAAE,gEAAgE,CAAC;SAC3F,MAAM,CAAC,kBAAkB,EAAE,8DAA8D,EAAE,GAAG,CAAC;SAC/F,MAAM,CAAC,kBAAkB,EAAE,2DAA2D,EAAE,GAAG,CAAC;SAC5F,MAAM,CAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"cube.js","sourceRoot":"","sources":["../../src/commands/cube.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAE1C;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,MAAM,IAAI,GAAG,OAAO;SACjB,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAEnC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;SACjB,WAAW,CAAC,4EAA4E,CAAC;SACzF,MAAM,CAAC,iBAAiB,EAAE,gEAAgE,CAAC;SAC3F,MAAM,CAAC,kBAAkB,EAAE,8DAA8D,EAAE,GAAG,CAAC;SAC/F,MAAM,CAAC,kBAAkB,EAAE,2DAA2D,EAAE,GAAG,CAAC;SAC5F,MAAM,CAAC,eAAe,EAAE,yEAAyE,EAAE,GAAG,CAAC;SACvG,MAAM,CAAC,KAAK,EAAE,IAA4E,EAAE,EAAE;QAC7F,yEAAyE;QACzE,uEAAuE;QACvE,oCAAoC;QACpC,IAAI,WAAmB,CAAC;QACxB,IAAI,WAAmB,CAAC;QACxB,IAAI,QAAgB,CAAC;QACrB,IAAI,CAAC;YACH,WAAW,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAC9D,WAAW,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAC9D,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,GAAG,CAAC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3D,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC;gBACjC,UAAU,EAAE,IAAI,CAAC,MAAM;gBACvB,WAAW;gBACX,WAAW;gBACX,QAAQ;aACT,CAAC,CAAC;YACH,GAAG,CAAC,EAAE,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
* registry auths), so the stack the unit launches can't inherit the host proxy.
|
|
12
12
|
* The only service that gets a proxy is `web`, via compose env from .env — which
|
|
13
13
|
* the appliance owns. The proxy->.env migration carries any existing host proxy
|
|
14
|
-
* into .env so web keeps its internet across the cutover.
|
|
14
|
+
* into .env so web keeps its internet across the cutover. When there is no
|
|
15
|
+
* configured proxy the keys are OMITTED (never written blank) — a blank
|
|
16
|
+
* HTTP_PROXY= crashes hackney in the container (API-1767).
|
|
15
17
|
*
|
|
16
18
|
* Mirrors ova/cli.sh (_ensure_appliance_proxy_policy) and the Go shadow CLI
|
|
17
19
|
* (ensureApplianceProxyPolicy). Best-effort and idempotent; never fatal.
|
|
@@ -26,8 +28,13 @@ export declare function writeApplianceDockerConfig(): void;
|
|
|
26
28
|
export declare function writeDockerConfigDropin(): void;
|
|
27
29
|
/**
|
|
28
30
|
* Carry an existing host proxy into .env HTTP_PROXY/HTTPS_PROXY/NO_PROXY
|
|
29
|
-
* (no-clobber) so `web` keeps its internet across the cutover
|
|
30
|
-
*
|
|
31
|
+
* (no-clobber) so `web` keeps its internet across the cutover.
|
|
32
|
+
*
|
|
33
|
+
* Critically, when there is NO configured proxy value we OMIT the key rather
|
|
34
|
+
* than seeding a blank `HTTP_PROXY=` — an empty proxy value crashes hackney in
|
|
35
|
+
* the container (API-1767). We also STRIP any pre-existing blank proxy lines so
|
|
36
|
+
* already-deployed .228-style appliances that seeded `HTTP_PROXY=` get cleaned
|
|
37
|
+
* up idempotently on the next apply.
|
|
31
38
|
*/
|
|
32
39
|
export declare function migrateProxyToEnv(): Promise<void>;
|
|
33
40
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appliance-proxy-policy.d.ts","sourceRoot":"","sources":["../../src/lib/appliance-proxy-policy.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"appliance-proxy-policy.d.ts","sourceRoot":"","sources":["../../src/lib/appliance-proxy-policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AA0CH;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,CAuBjD;AAED,gFAAgF;AAChF,wBAAgB,uBAAuB,IAAI,IAAI,CAY9C;AAcD;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CA2BvD;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAWhE"}
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
* registry auths), so the stack the unit launches can't inherit the host proxy.
|
|
12
12
|
* The only service that gets a proxy is `web`, via compose env from .env — which
|
|
13
13
|
* the appliance owns. The proxy->.env migration carries any existing host proxy
|
|
14
|
-
* into .env so web keeps its internet across the cutover.
|
|
14
|
+
* into .env so web keeps its internet across the cutover. When there is no
|
|
15
|
+
* configured proxy the keys are OMITTED (never written blank) — a blank
|
|
16
|
+
* HTTP_PROXY= crashes hackney in the container (API-1767).
|
|
15
17
|
*
|
|
16
18
|
* Mirrors ova/cli.sh (_ensure_appliance_proxy_policy) and the Go shadow CLI
|
|
17
19
|
* (ensureApplianceProxyPolicy). Best-effort and idempotent; never fatal.
|
|
@@ -89,25 +91,52 @@ export function writeDockerConfigDropin() {
|
|
|
89
91
|
mkdirSync(dirname(dropin), { recursive: true });
|
|
90
92
|
writeFileSync(dropin, want, { mode: 0o644 });
|
|
91
93
|
}
|
|
94
|
+
// The proxy keys compose passes into containers. When any of these is present
|
|
95
|
+
// in .env but blank, compose forwards `HTTP_PROXY=` into the container env, and
|
|
96
|
+
// Elixir's hackney treats the empty string as a proxy URL and CRASHES
|
|
97
|
+
// (CaseClauseError in :hackney_url.parse_netloc/2), killing outbound HTTP
|
|
98
|
+
// (XCC reconnect, syslog/Loki). So we NEVER write a blank proxy key: when there
|
|
99
|
+
// is no configured proxy value the key is omitted entirely (API-1767).
|
|
100
|
+
const PROXY_ENV_KEYS = [
|
|
101
|
+
['httpProxy', 'HTTP_PROXY'],
|
|
102
|
+
['httpsProxy', 'HTTPS_PROXY'],
|
|
103
|
+
['noProxy', 'NO_PROXY'],
|
|
104
|
+
];
|
|
92
105
|
/**
|
|
93
106
|
* Carry an existing host proxy into .env HTTP_PROXY/HTTPS_PROXY/NO_PROXY
|
|
94
|
-
* (no-clobber) so `web` keeps its internet across the cutover
|
|
95
|
-
*
|
|
107
|
+
* (no-clobber) so `web` keeps its internet across the cutover.
|
|
108
|
+
*
|
|
109
|
+
* Critically, when there is NO configured proxy value we OMIT the key rather
|
|
110
|
+
* than seeding a blank `HTTP_PROXY=` — an empty proxy value crashes hackney in
|
|
111
|
+
* the container (API-1767). We also STRIP any pre-existing blank proxy lines so
|
|
112
|
+
* already-deployed .228-style appliances that seeded `HTTP_PROXY=` get cleaned
|
|
113
|
+
* up idempotently on the next apply.
|
|
96
114
|
*/
|
|
97
115
|
export async function migrateProxyToEnv() {
|
|
98
116
|
const src = readJsonOrEmpty(hostRootDockerConfig());
|
|
99
117
|
const def = (src.proxies && src.proxies.default && typeof src.proxies.default === 'object')
|
|
100
118
|
? src.proxies.default
|
|
101
119
|
: {};
|
|
102
|
-
const str = (k) => (typeof def[k] === 'string' ? def[k] : '');
|
|
120
|
+
const str = (k) => (typeof def[k] === 'string' ? def[k].trim() : '');
|
|
103
121
|
const env = readEnvKeys();
|
|
122
|
+
// `undefined` removes the key (see updateEnvKeys). We only ever write a
|
|
123
|
+
// non-empty value; a blank/missing host value results in the key being
|
|
124
|
+
// omitted, and a pre-existing blank line is removed.
|
|
104
125
|
const updates = {};
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
126
|
+
for (const [srcKey, envKey] of PROXY_ENV_KEYS) {
|
|
127
|
+
const existing = env[envKey];
|
|
128
|
+
if (existing !== undefined) {
|
|
129
|
+
// Operator/prior value already in .env: keep a real value untouched
|
|
130
|
+
// (no-clobber), but strip a blank one so the container never sees `KEY=`.
|
|
131
|
+
if (existing.trim() === '')
|
|
132
|
+
updates[envKey] = undefined;
|
|
133
|
+
continue;
|
|
134
|
+
}
|
|
135
|
+
// Not in .env yet: seed only when the host actually has a real value.
|
|
136
|
+
const val = str(srcKey);
|
|
137
|
+
if (val !== '')
|
|
138
|
+
updates[envKey] = val;
|
|
139
|
+
}
|
|
111
140
|
if (Object.keys(updates).length > 0)
|
|
112
141
|
await updateEnvKeys(updates);
|
|
113
142
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appliance-proxy-policy.js","sourceRoot":"","sources":["../../src/lib/appliance-proxy-policy.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"appliance-proxy-policy.js","sourceRoot":"","sources":["../../src/lib/appliance-proxy-policy.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/cube-diag.d.ts
CHANGED
|
@@ -11,16 +11,20 @@
|
|
|
11
11
|
* that explain why that keepalive never lands.
|
|
12
12
|
*/
|
|
13
13
|
/**
|
|
14
|
-
* Collect the full cube-diag bundle and write it to a single .log file
|
|
14
|
+
* Collect the full cube-diag bundle and write it to a single .log file (plus,
|
|
15
|
+
* when `--pcap` is requested, sibling `xcc-bridge.pcap` / `xcc-ingress.pcap` /
|
|
16
|
+
* `xcc.pcap` files in the same directory as `outputPath`).
|
|
15
17
|
*
|
|
16
18
|
* @param opts.outputPath Target log path. Defaults to ./cube-diag-<ISO>.log.
|
|
17
19
|
* @param opts.captureSecs Seconds to live-capture cube.> / alarms.> subjects (0 = skip).
|
|
18
20
|
* @param opts.monitorSecs Seconds to RPC-poll each cube's state/interval ~every 5s (0 = skip).
|
|
21
|
+
* @param opts.pcapSecs Seconds to tcpdump the XCC wire (bridge + host TLS ingress legs, 0 = skip).
|
|
19
22
|
* @returns the path the bundle was written to.
|
|
20
23
|
*/
|
|
21
24
|
export declare function collectCubeDiag(opts?: {
|
|
22
25
|
outputPath?: string;
|
|
23
26
|
captureSecs?: number;
|
|
24
27
|
monitorSecs?: number;
|
|
28
|
+
pcapSecs?: number;
|
|
25
29
|
}): Promise<string>;
|
|
26
30
|
//# sourceMappingURL=cube-diag.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cube-diag.d.ts","sourceRoot":"","sources":["../../src/lib/cube-diag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"cube-diag.d.ts","sourceRoot":"","sources":["../../src/lib/cube-diag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAmtBH;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,IAAI,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5F,OAAO,CAAC,MAAM,CAAC,CAqOjB"}
|