@calltelemetry/cli 0.12.1 → 0.12.4

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.
@@ -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, and always seed
30
- * the three keys (empty = no proxy) so compose ${HTTP_PROXY:-} resolves.
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;;;;;;;;;;;;;;;;;GAiBG;AA0CH;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,CAuBjD;AAED,gFAAgF;AAChF,wBAAgB,uBAAuB,IAAI,IAAI,CAY9C;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAavD;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAWhE"}
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, and always seed
95
- * the three keys (empty = no proxy) so compose ${HTTP_PROXY:-} resolves.
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
- if (!('HTTP_PROXY' in env))
106
- updates.HTTP_PROXY = str('httpProxy');
107
- if (!('HTTPS_PROXY' in env))
108
- updates.HTTPS_PROXY = str('httpsProxy');
109
- if (!('NO_PROXY' in env))
110
- updates.NO_PROXY = str('noProxy');
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":"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"}
1
+ {"version":3,"file":"appliance-proxy-policy.js","sourceRoot":"","sources":["../../src/lib/appliance-proxy-policy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cube-diag.d.ts","sourceRoot":"","sources":["../../src/lib/cube-diag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAuPH;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,IAAI,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAgJjI"}
1
+ {"version":3,"file":"cube-diag.d.ts","sourceRoot":"","sources":["../../src/lib/cube-diag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA8RH;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,IAAI,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAoKjI"}
@@ -22,6 +22,15 @@ const NATS_BOX_IMAGE = 'natsio/nats-box:0.14.5';
22
22
  const NATS_URL = 'nats://nats:4222';
23
23
  const DEFAULT_TIMEOUT = 10_000;
24
24
  const RPC_TIMEOUT = 25_000;
25
+ // Longer statement budget for cube_event_logs under SQL distress (Lane B/D) —
26
+ // parity with the bash _cd_psql_long / Go cubePSQLLong helpers.
27
+ const LONG_TIMEOUT = 25_000;
28
+ // Server-side statement/lock timeouts, set via PGOPTIONS so a locked/hot table
29
+ // can't hang the collector past the process-level timeout above. The bash and
30
+ // Go ports already set these; the TS port previously relied on the process
31
+ // timeout alone (API-1791 gap fix).
32
+ const PG_OPTIONS_DEFAULT = "-c statement_timeout=5000 -c lock_timeout=1000";
33
+ const PG_OPTIONS_LONG = "-c statement_timeout=15000 -c lock_timeout=2000";
25
34
  /** Sleep helper for the heartbeat-trace loop. */
26
35
  function sleep(ms) {
27
36
  return new Promise(resolve => setTimeout(resolve, ms));
@@ -113,9 +122,34 @@ for c <- Cdrcisco.Repo.all(from c in Cube, where: c.xcc_enabled == true, order_b
113
122
  end
114
123
  end
115
124
  :ok`;
116
- /** Run a psql query in the db container, returning trimmed stdout. */
125
+ /**
126
+ * Run a psql query in the db container, returning trimmed stdout. Sets a
127
+ * server-side statement/lock timeout via PGOPTIONS (spread over the shared
128
+ * PG_ENV so other PG_ENV consumers are unaffected) so a locked/hot table
129
+ * can't hang past the process-level timeout — parity with the bash
130
+ * _cd_psql / Go cubePSQL helpers (API-1791 gap fix: this port previously had
131
+ * no server-side statement_timeout at all for cube-diag queries).
132
+ *
133
+ * This 5s cap now also applies to the `cubes` / `cube_connection_health_*` /
134
+ * `alarm_events` calls below, matching what bash/Go already ship today. Those
135
+ * are small-table or LIMIT-bounded reads except `alarm_events`, whose
136
+ * `alarm_type ILIKE '%...%'` predicates can't use a btree index — but it's
137
+ * filtered by the indexed `status IN (...)` first, and bash's equivalent
138
+ * `_cd_psql "active cube/xcc/policy alarms"` call has run at 5s in production
139
+ * without incident. If this section starts timing out under distress, route
140
+ * it through psqlLong (or a dedicated per-section budget) rather than
141
+ * reverting the whole-file default to uncapped.
142
+ */
117
143
  async function psql(sql) {
118
- const result = await composeExec('db', ['psql', '-U', DB_USER, '-d', DB_NAME, '-c', sql], { env: PG_ENV, pipe: true, timeout: DEFAULT_TIMEOUT });
144
+ const result = await composeExec('db', ['psql', '-U', DB_USER, '-d', DB_NAME, '-c', sql], { env: { ...PG_ENV, PGCONNECT_TIMEOUT: '3', PGOPTIONS: PG_OPTIONS_DEFAULT }, pipe: true, timeout: DEFAULT_TIMEOUT });
145
+ return (result.stdout ?? '').toString();
146
+ }
147
+ /**
148
+ * Longer statement budget for cube_event_logs under SQL distress (Lane B/D) —
149
+ * parity with the bash _cd_psql_long / Go cubePSQLLong helpers.
150
+ */
151
+ async function psqlLong(sql) {
152
+ const result = await composeExec('db', ['psql', '-U', DB_USER, '-d', DB_NAME, '-c', sql], { env: { ...PG_ENV, PGCONNECT_TIMEOUT: '3', PGOPTIONS: PG_OPTIONS_LONG }, pipe: true, timeout: LONG_TIMEOUT });
119
153
  return (result.stdout ?? '').toString();
120
154
  }
121
155
  /** Run one collection step, capturing its output (or error) into a labeled block. */
@@ -258,8 +292,28 @@ export async function collectCubeDiag(opts) {
258
292
  `WHERE status IN ('active','acknowledged') ` +
259
293
  `AND (alarm_type ILIKE '%cube%' OR alarm_type ILIKE '%xcc%' OR alarm_type ILIKE '%policy%') ` +
260
294
  `ORDER BY inserted_at DESC;`)));
261
- parts.push(await section('DB: cube_event_logs (24h volume per cube)', () => psql(`SELECT cube_id, COUNT(*) AS events_24h FROM cube_event_logs ` +
262
- `WHERE inserted_at > NOW() - INTERVAL '24 hours' GROUP BY cube_id ORDER BY cube_id;`)));
295
+ // Per-cube LATERAL, not a table-wide GROUP BY: cubes is tiny (~dozens of
296
+ // rows), and each subquery's `cube_id = c.id` predicate lets the planner use
297
+ // an Index Only Scan on cube_event_logs_*_cube_id_inserted_at_idx bounded to
298
+ // that cube's rows, instead of a Seq/Parallel Seq Scan over every row in the
299
+ // last 24h across every cube (the shape that blew the bash/Go ports'
300
+ // statement_timeout on the Rutgers box — API-1791). Cost now scales with
301
+ // rows-per-cube, not total 24h volume. Uses psqlLong (15s statement_timeout,
302
+ // new in this port) as a belt-and-suspenders budget, in addition to — not
303
+ // instead of — the query fix.
304
+ //
305
+ // Row-set change: the old query only listed cube_ids with >=1 event in the
306
+ // window; this LEFT JOINs from `cubes`, so every cube appears (COALESCE to
307
+ // 0 for silent ones) — better for spotting a dead cube, at the cost of also
308
+ // listing disabled/test cubes.
309
+ parts.push(await section('DB: cube_event_logs (24h volume per cube)', () => psqlLong(`SELECT c.id AS cube_id, COALESCE(e.events_24h,0) AS events_24h, e.last_seen ` +
310
+ `FROM cubes c ` +
311
+ `LEFT JOIN LATERAL (` +
312
+ ` SELECT COUNT(*) AS events_24h, MAX(inserted_at) AS last_seen ` +
313
+ ` FROM cube_event_logs ` +
314
+ ` WHERE cube_id = c.id AND inserted_at > NOW() - INTERVAL '24 hours'` +
315
+ `) e ON true ` +
316
+ `ORDER BY c.id;`)));
263
317
  // ── NATS sections ──────────────────────────────────────────────────────
264
318
  const net = await resolveCtNetwork();
265
319
  parts.push(`\n===== NATS: resolved network = ${net} =====`);
@@ -1 +1 @@
1
- {"version":3,"file":"cube-diag.js","sourceRoot":"","sources":["../../src/lib/cube-diag.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cube-diag.js","sourceRoot":"","sources":["../../src/lib/cube-diag.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * SeaweedFS (S3 bucket) pre-upgrade backup + clean restore.
3
+ *
4
+ * The storage twin of the database backup: tar the seaweedfs-data volume into
5
+ * <installDir>/backups/seaweedfs-data-<ts>.tar.gz and VERIFY the archive
6
+ * (tar -tzf) before declaring success. A backup that cannot be taken or
7
+ * verified means the storage layer already has problems — the update pipeline
8
+ * throws and aborts BEFORE mutating anything, surfacing them ahead of time.
9
+ *
10
+ * The clean restore wipes the volume and restores the just-verified archive so
11
+ * the upgraded stack boots storage from a known-good, freshly-restored state —
12
+ * permission drift, torn files, and stray junk are eliminated by construction,
13
+ * and the restore path is exercised (proven) on every upgrade.
14
+ *
15
+ * Matches the snapshot archives written by ova/cli.sh and the Go ct binary
16
+ * (same tar.gz format), so any engine can restore another's backup.
17
+ */
18
+ /** Restore failure carrying whether the live volume was already mutated. */
19
+ export declare class SeaweedRestoreError extends Error {
20
+ /** true = the wipe began; the volume may be partial. false = untouched. */
21
+ volumeTouched: boolean;
22
+ constructor(message: string, volumeTouched: boolean);
23
+ }
24
+ /**
25
+ * Resolve the host mountpoint of THIS project's SeaweedFS data volume.
26
+ * Prefers the /data mount binding of the project's own seaweedfs container
27
+ * (unambiguous on hosts carrying several `*_seaweedfs-data` volumes); falls
28
+ * back to the volume-name suffix match when no container exists yet.
29
+ * '' = docker absent or nothing matches.
30
+ */
31
+ export declare function seaweedDataMountpoint(): Promise<string>;
32
+ /**
33
+ * Take + VERIFY the SeaweedFS backup.
34
+ *
35
+ * With `keepStopped`, seaweedfs stays down on SUCCESS — the upgrade bracket
36
+ * (backup → clean restore) uses this so no S3 write can land between the
37
+ * snapshot and the restore and be silently wiped; with seaweed down, uploads
38
+ * fail loudly instead. On FAILURE seaweedfs is always started back.
39
+ *
40
+ * @returns the archive path, or null when no seaweedfs-data volume exists.
41
+ * @throws when the backup cannot be taken or verified — callers abort the
42
+ * upgrade so storage problems surface ahead of time.
43
+ */
44
+ export declare function backupSeaweedStorage(options?: {
45
+ keepStopped?: boolean;
46
+ }): Promise<string | null>;
47
+ /**
48
+ * Wipe the volume and restore the verified archive (clean state). Re-verifies
49
+ * the archive immediately before the wipe; non-fatal (throws only when the
50
+ * volume itself cannot be read).
51
+ */
52
+ export declare function restoreSeaweedStorageClean(archive: string): Promise<boolean>;
53
+ //# sourceMappingURL=seaweed-backup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seaweed-backup.d.ts","sourceRoot":"","sources":["../../src/lib/seaweed-backup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAOH,4EAA4E;AAC5E,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,2EAA2E;IAC3E,aAAa,EAAE,OAAO,CAAC;gBACX,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO;CAKpD;AAGD;;;;;;GAMG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAiC7D;AAkDD;;;;;;;;;;;GAWG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuC1G;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgElF"}
@@ -0,0 +1,252 @@
1
+ /**
2
+ * SeaweedFS (S3 bucket) pre-upgrade backup + clean restore.
3
+ *
4
+ * The storage twin of the database backup: tar the seaweedfs-data volume into
5
+ * <installDir>/backups/seaweedfs-data-<ts>.tar.gz and VERIFY the archive
6
+ * (tar -tzf) before declaring success. A backup that cannot be taken or
7
+ * verified means the storage layer already has problems — the update pipeline
8
+ * throws and aborts BEFORE mutating anything, surfacing them ahead of time.
9
+ *
10
+ * The clean restore wipes the volume and restores the just-verified archive so
11
+ * the upgraded stack boots storage from a known-good, freshly-restored state —
12
+ * permission drift, torn files, and stray junk are eliminated by construction,
13
+ * and the restore path is exercised (proven) on every upgrade.
14
+ *
15
+ * Matches the snapshot archives written by ova/cli.sh and the Go ct binary
16
+ * (same tar.gz format), so any engine can restore another's backup.
17
+ */
18
+ import { join, basename } from 'node:path';
19
+ import { existsSync, statSync, mkdirSync, chmodSync, renameSync, rmSync, readdirSync } from 'node:fs';
20
+ import { execa } from 'execa';
21
+ import { compose } from './compose.js';
22
+ /** Restore failure carrying whether the live volume was already mutated. */
23
+ export class SeaweedRestoreError extends Error {
24
+ /** true = the wipe began; the volume may be partial. false = untouched. */
25
+ volumeTouched;
26
+ constructor(message, volumeTouched) {
27
+ super(message);
28
+ this.name = 'SeaweedRestoreError';
29
+ this.volumeTouched = volumeTouched;
30
+ }
31
+ }
32
+ import { getPaths } from './paths.js';
33
+ /**
34
+ * Resolve the host mountpoint of THIS project's SeaweedFS data volume.
35
+ * Prefers the /data mount binding of the project's own seaweedfs container
36
+ * (unambiguous on hosts carrying several `*_seaweedfs-data` volumes); falls
37
+ * back to the volume-name suffix match when no container exists yet.
38
+ * '' = docker absent or nothing matches.
39
+ */
40
+ export async function seaweedDataMountpoint() {
41
+ try {
42
+ const cid = (await compose(['ps', '-aq', 'seaweedfs'], { pipe: true })
43
+ .then(r => (r.stdout ?? '').trim().split('\n')[0])
44
+ .catch(() => ''));
45
+ if (cid) {
46
+ const r = await execa('docker', ['inspect', '-f',
47
+ '{{range .Mounts}}{{if eq .Destination "/data"}}{{.Source}}{{end}}{{end}}', cid], { reject: false });
48
+ const mp = (r.stdout ?? '').trim();
49
+ if (mp)
50
+ return mp;
51
+ }
52
+ }
53
+ catch {
54
+ /* fall through to volume-name match */
55
+ }
56
+ // Fallback by volume name — but ONLY the name this compose project would
57
+ // create (default project name = lowercased install-dir basename). A bare
58
+ // suffix match could select ANOTHER install's bucket on a shared host and
59
+ // later snapshot/WIPE it. Prefer the project-derived name; accept the
60
+ // unprefixed "seaweedfs-data" only when the project-derived one is absent.
61
+ try {
62
+ const { installDir } = getPaths();
63
+ const project = process.env.COMPOSE_PROJECT_NAME || basename(installDir);
64
+ const expected = `${project.toLowerCase()}_seaweedfs-data`;
65
+ const { stdout } = await execa('docker', ['volume', 'ls', '-q'], { reject: false });
66
+ const names = (stdout ?? '').split('\n').map(s => s.trim());
67
+ const pick = names.includes(expected) ? expected : names.includes('seaweedfs-data') ? 'seaweedfs-data' : '';
68
+ if (!pick)
69
+ return '';
70
+ const r = await execa('docker', ['volume', 'inspect', '-f', '{{.Mountpoint}}', pick], { reject: false });
71
+ return (r.stdout ?? '').trim();
72
+ }
73
+ catch {
74
+ /* docker absent */
75
+ }
76
+ return '';
77
+ }
78
+ /**
79
+ * True when THIS project's seaweedfs container is currently RUNNING.
80
+ * Anchored on the compose-resolved container id + docker inspect so it works
81
+ * on both compose v1 and v2 (v1 has no `ps --status`) and never matches
82
+ * another project's seaweedfs on a shared host. FAILS CLOSED: with a container
83
+ * present but an unverifiable state, report "running" so callers refuse to
84
+ * snapshot/wipe.
85
+ */
86
+ async function seaweedIsRunning() {
87
+ let cid = '';
88
+ try {
89
+ const r = await compose(['ps', '-aq', 'seaweedfs'], { pipe: true });
90
+ cid = (r.stdout ?? '').trim().split('\n')[0] ?? '';
91
+ }
92
+ catch {
93
+ return true; // cannot even enumerate — fail closed
94
+ }
95
+ if (!cid)
96
+ return false; // no container at all cannot be running
97
+ try {
98
+ const r = await execa('docker', ['inspect', '-f', '{{.State.Running}}', cid], { reject: false });
99
+ if (r.exitCode !== 0)
100
+ return true; // fail closed on unverifiable state
101
+ return (r.stdout ?? '').trim() === 'true';
102
+ }
103
+ catch {
104
+ return true;
105
+ }
106
+ }
107
+ function timestamp() {
108
+ const d = new Date();
109
+ const p = (n) => String(n).padStart(2, '0');
110
+ return `${d.getFullYear()}-${p(d.getMonth() + 1)}-${p(d.getDate())}-${p(d.getHours())}-${p(d.getMinutes())}-${p(d.getSeconds())}`;
111
+ }
112
+ async function stopSeaweed() {
113
+ try {
114
+ await compose(['stop', 'seaweedfs'], { pipe: true });
115
+ }
116
+ catch {
117
+ /* not running / no storage profile — fine */
118
+ }
119
+ }
120
+ async function startSeaweed() {
121
+ try {
122
+ await compose(['start', 'seaweedfs'], { pipe: true });
123
+ }
124
+ catch {
125
+ /* upgrade restart brings the stack up anyway */
126
+ }
127
+ }
128
+ /**
129
+ * Take + VERIFY the SeaweedFS backup.
130
+ *
131
+ * With `keepStopped`, seaweedfs stays down on SUCCESS — the upgrade bracket
132
+ * (backup → clean restore) uses this so no S3 write can land between the
133
+ * snapshot and the restore and be silently wiped; with seaweed down, uploads
134
+ * fail loudly instead. On FAILURE seaweedfs is always started back.
135
+ *
136
+ * @returns the archive path, or null when no seaweedfs-data volume exists.
137
+ * @throws when the backup cannot be taken or verified — callers abort the
138
+ * upgrade so storage problems surface ahead of time.
139
+ */
140
+ export async function backupSeaweedStorage(options = {}) {
141
+ const mount = await seaweedDataMountpoint();
142
+ if (!mount || !existsSync(mount) || !statSync(mount).isDirectory())
143
+ return null;
144
+ const { backupDir } = getPaths();
145
+ mkdirSync(backupDir, { recursive: true });
146
+ const archive = join(backupDir, `seaweedfs-data-${timestamp()}.tar.gz`);
147
+ const tmp = `${archive}.tmp`;
148
+ // Stop seaweed for a consistent copy of the .dat/.idx files. A snapshot
149
+ // taken under a still-running writer can be torn — and the keep-stopped
150
+ // bracket would then WIPE a live volume — so verify the stop took.
151
+ await stopSeaweed();
152
+ if (await seaweedIsRunning()) {
153
+ await startSeaweed();
154
+ throw new Error('seaweedfs did not stop for the storage backup — refusing to snapshot a live volume.');
155
+ }
156
+ let ok = false;
157
+ try {
158
+ const tarRes = await execa('tar', ['-czf', tmp, '-C', mount, '.'], { reject: false });
159
+ if (tarRes.exitCode !== 0) {
160
+ rmSync(tmp, { force: true });
161
+ throw new Error('SeaweedFS storage backup failed (tar error) — the storage volume or backup disk already has problems; resolve before upgrading.');
162
+ }
163
+ // VERIFY: a backup we cannot read back is not a backup.
164
+ const verify = await execa('tar', ['-tzf', tmp], { reject: false });
165
+ if (verify.exitCode !== 0) {
166
+ rmSync(tmp, { force: true });
167
+ throw new Error('SeaweedFS storage backup failed verification — resolve before upgrading.');
168
+ }
169
+ renameSync(tmp, archive);
170
+ chmodSync(archive, 0o600);
171
+ ok = true;
172
+ return archive;
173
+ }
174
+ finally {
175
+ // Restart unless the caller is bracketing straight into a clean restore;
176
+ // always restart on failure so an aborted upgrade leaves seaweed as found.
177
+ if (!ok || !options.keepStopped)
178
+ await startSeaweed();
179
+ }
180
+ }
181
+ /**
182
+ * Wipe the volume and restore the verified archive (clean state). Re-verifies
183
+ * the archive immediately before the wipe; non-fatal (throws only when the
184
+ * volume itself cannot be read).
185
+ */
186
+ export async function restoreSeaweedStorageClean(archive) {
187
+ if (!existsSync(archive))
188
+ return false;
189
+ const mount = await seaweedDataMountpoint();
190
+ if (!mount || !existsSync(mount))
191
+ return false;
192
+ const verify = await execa('tar', ['-tzf', archive], { reject: false });
193
+ if (verify.exitCode !== 0) {
194
+ // Never wipe on an unverifiable archive.
195
+ return false;
196
+ }
197
+ // ATOMIC restore: extract into a same-filesystem staging dir FIRST, so a
198
+ // failed extraction never leaves the live volume already wiped.
199
+ const staging = `${mount.replace(/\/+$/, '')}.restore-tmp`;
200
+ rmSync(staging, { recursive: true, force: true });
201
+ mkdirSync(staging, { recursive: true });
202
+ const untar = await execa('tar', ['-xzf', archive, '-C', staging], { reject: false });
203
+ if (untar.exitCode !== 0) {
204
+ rmSync(staging, { recursive: true, force: true });
205
+ throw new SeaweedRestoreError(`SeaweedFS restore extraction failed (volume left untouched); re-run manually: tar -xzf ${archive} -C ${mount}`, false);
206
+ }
207
+ await stopSeaweed();
208
+ // NEVER wipe under a live seaweedfs — a racing S3 write would corrupt the
209
+ // bucket. If the stop didn't take, abort with the volume untouched.
210
+ if (await seaweedIsRunning()) {
211
+ rmSync(staging, { recursive: true, force: true });
212
+ throw new SeaweedRestoreError('seaweedfs did not stop for the clean restore — volume left untouched.', false);
213
+ }
214
+ // The wipe + move need the owner-write bit even as root (and a drifted
215
+ // read-only volume is one of the states this restore exists to fix).
216
+ try {
217
+ chmodSync(mount, (statSync(mount).mode & 0o777) | 0o700);
218
+ }
219
+ catch {
220
+ /* best-effort */
221
+ }
222
+ try {
223
+ for (const e of readdirSync(mount)) {
224
+ rmSync(join(mount, e), { recursive: true, force: true });
225
+ }
226
+ }
227
+ catch (err) {
228
+ throw new SeaweedRestoreError(`SeaweedFS volume wipe failed midway (${err instanceof Error ? err.message : String(err)}) — volume may be partial. Staged copy kept at ${staging}; recover manually: tar -xzf ${archive} -C ${mount}`, true);
229
+ }
230
+ // Verify the wipe actually emptied the volume — a partial wipe followed by
231
+ // the move would boot a mixed old/new bucket under a false success signal.
232
+ if (readdirSync(mount).length > 0) {
233
+ throw new SeaweedRestoreError(`SeaweedFS volume wipe left files behind in ${mount} — volume NOT restored. Staged copy kept at ${staging}; recover manually: tar -xzf ${archive} -C ${mount}`, true);
234
+ }
235
+ try {
236
+ for (const e of readdirSync(staging)) {
237
+ renameSync(join(staging, e), join(mount, e));
238
+ }
239
+ }
240
+ catch {
241
+ // The archive is VERIFIED — recover by extracting it straight into the
242
+ // (now partially-populated) volume.
243
+ const recover = await execa('tar', ['-xzf', archive, '-C', mount], { reject: false });
244
+ if (recover.exitCode !== 0) {
245
+ throw new SeaweedRestoreError(`SeaweedFS restore FAILED mid-move and re-extraction also failed. Staged copy kept at ${staging}; recover manually: tar -xzf ${archive} -C ${mount}`, true);
246
+ }
247
+ }
248
+ rmSync(staging, { recursive: true, force: true });
249
+ chmodSync(mount, 0o755);
250
+ return true;
251
+ }
252
+ //# sourceMappingURL=seaweed-backup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seaweed-backup.js","sourceRoot":"","sources":["../../src/lib/seaweed-backup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"update-steps.d.ts","sourceRoot":"","sources":["../../src/lib/update-steps.ts"],"names":[],"mappings":"AAkBA,oEAAoE;AACpE,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAED,sEAAsE;AACtE,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACpD;AAgDD,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,EAAE,CAqDlE;AAID,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,EAAE,CA6RhE;AAID;;;GAGG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAepE"}
1
+ {"version":3,"file":"update-steps.d.ts","sourceRoot":"","sources":["../../src/lib/update-steps.ts"],"names":[],"mappings":"AAkBA,oEAAoE;AACpE,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAED,sEAAsE;AACtE,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACpD;AAgDD,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,EAAE,CAqDlE;AAID,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,EAAE,CAsUhE;AAID;;;GAGG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAepE"}
@@ -114,6 +114,9 @@ export function preflightSteps(targetVersion) {
114
114
  export function executeSteps(targetVersion) {
115
115
  const { installDir } = getPaths();
116
116
  const tempFile = join(installDir, 'temp-docker-compose.yml');
117
+ // Set by the "Backup SeaweedFS storage" step; consumed by the clean-restore
118
+ // step just before the restart. null = no storage volume on this appliance.
119
+ let seaweedArchive = null;
117
120
  return [
118
121
  {
119
122
  label: 'Ensure IPv4 forwarding',
@@ -268,6 +271,46 @@ export function executeSteps(targetVersion) {
268
271
  return 'not present';
269
272
  },
270
273
  },
274
+ {
275
+ // SeaweedFS (S3 bucket) backup + clean restore as ONE bracketed operation
276
+ // immediately before the restart: stop seaweedfs → tar + VERIFY → wipe
277
+ // volume → restore verified archive → (the restart brings it up).
278
+ // Seaweedfs stays stopped for the whole bracket so no S3 write can land
279
+ // between snapshot and restore and be silently lost. A backup that cannot
280
+ // be taken or verified THROWS and aborts the upgrade BEFORE the restart —
281
+ // storage problems surface ahead of time.
282
+ label: 'Backup + clean-restore SeaweedFS storage',
283
+ run: async (ctx) => {
284
+ const { backupSeaweedStorage, restoreSeaweedStorageClean } = await import('./seaweed-backup.js');
285
+ seaweedArchive = await backupSeaweedStorage({ keepStopped: true });
286
+ if (seaweedArchive === null) {
287
+ ctx?.log('no storage volume — skipped');
288
+ return 'no storage volume';
289
+ }
290
+ ctx?.log(`backed up + verified: ${seaweedArchive}`);
291
+ try {
292
+ const restored = await restoreSeaweedStorageClean(seaweedArchive);
293
+ ctx?.log(restored ? 'restored clean' : 'restore skipped (archive unavailable)');
294
+ return restored ? 'backed up + restored clean' : 'backed up';
295
+ }
296
+ catch (err) {
297
+ // The bracket left seaweedfs stopped. Restart it ONLY when the volume
298
+ // was untouched — booting on a partially-wiped bucket would serve
299
+ // wrong data under a healthy facade. Then surface the failure (which
300
+ // aborts the upgrade before the restart).
301
+ const { SeaweedRestoreError } = await import('./seaweed-backup.js');
302
+ const touched = err instanceof SeaweedRestoreError && err.volumeTouched;
303
+ if (!touched) {
304
+ const { compose } = await import('./compose.js');
305
+ await compose(['start', 'seaweedfs'], { pipe: true }).catch(() => undefined);
306
+ }
307
+ else {
308
+ ctx?.log('SeaweedFS left STOPPED: volume partially wiped — restore from the verified archive before starting.');
309
+ }
310
+ throw err;
311
+ }
312
+ },
313
+ },
271
314
  {
272
315
  label: 'Apply and restart services',
273
316
  run: async (ctx) => {
@@ -1 +1 @@
1
- {"version":3,"file":"update-steps.js","sourceRoot":"","sources":["../../src/lib/update-steps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-steps.js","sourceRoot":"","sources":["../../src/lib/update-steps.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/lib/update.ts"],"names":[],"mappings":"AAcA;;;;;;;;kDAQkD;AAClD,wBAAgB,iBAAiB,IAAI,MAAM,CAsC1C;AAED,qEAAqE;AACrE,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CA2CrD;AAuFD,2DAA2D;AAC3D,wBAAsB,eAAe,CAAC,OAAO,CAAC,EAAE;IAAE,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkHjG;AAED,iFAAiF;AACjF,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAanE;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAiB5D;AAED,8EAA8E;AAC9E,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAMnD;AAED,wEAAwE;AACxE,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAO3D;AAED,sEAAsE;AACtE,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAO3D;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,CAsE9D;AAED,iEAAiE;AACjE,wBAAsB,UAAU,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAW3E"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/lib/update.ts"],"names":[],"mappings":"AAcA;;;;;;;;kDAQkD;AAClD,wBAAgB,iBAAiB,IAAI,MAAM,CAsC1C;AAED,qEAAqE;AACrE,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAsErD;AAuFD,2DAA2D;AAC3D,wBAAsB,eAAe,CAAC,OAAO,CAAC,EAAE;IAAE,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkHjG;AAED,iFAAiF;AACjF,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAanE;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAiB5D;AAED,8EAA8E;AAC9E,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAMnD;AAED,wEAAwE;AACxE,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAO3D;AAED,sEAAsE;AACtE,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAO3D;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,CAsE9D;AAED,iEAAiE;AACjE,wBAAsB,UAAU,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAW3E"}
@@ -100,6 +100,35 @@ export async function backupCompose() {
100
100
  // are best-effort: a missing file is skipped and never fails the backup.
101
101
  await backupConfigFile(daemonJsonPath(), join(backupDir, `daemon-${timestamp}.json`));
102
102
  await backupConfigFile(serviceUnitPath(), join(backupDir, `docker-compose-app-${timestamp}.service`));
103
+ // Caddyfile + ./certs — the bundle OVERWRITES ./Caddyfile when it differs,
104
+ // and ./certs holds operator-installed TLS material. Both are small;
105
+ // back them up alongside compose (same best-effort contract).
106
+ const { installDir } = getPaths();
107
+ await backupConfigFile(join(installDir, 'Caddyfile'), join(backupDir, `Caddyfile-${timestamp}`));
108
+ try {
109
+ const certsDir = join(installDir, 'certs');
110
+ const { readdir } = await import('node:fs/promises');
111
+ const entries = await readdir(certsDir).catch(() => []);
112
+ if (entries.length > 0) {
113
+ const { execa } = await import('execa');
114
+ const archive = join(backupDir, `certs-${timestamp}.tar.gz`);
115
+ const tarRes = await execa('tar', ['-czf', archive, '-C', certsDir, '.'], { reject: false });
116
+ const verify = tarRes.exitCode === 0
117
+ ? await execa('tar', ['-tzf', archive], { reject: false })
118
+ : tarRes;
119
+ if (verify.exitCode !== 0) {
120
+ const { rm } = await import('node:fs/promises');
121
+ await rm(archive, { force: true }).catch(() => undefined);
122
+ }
123
+ else {
124
+ const { chmod } = await import('node:fs/promises');
125
+ await chmod(archive, 0o600).catch(() => undefined);
126
+ }
127
+ }
128
+ }
129
+ catch {
130
+ /* best-effort — never fail the backup over TLS material */
131
+ }
103
132
  // Guardrail 2: capture the appliance-owned Docker config + DOCKER_CONFIG
104
133
  // drop-in so a rollback preserves the appliance's proxy policy + registry auth.
105
134
  await backupConfigFile(serviceUnitPath() + '.d/docker-config.conf', join(backupDir, `docker-config-${timestamp}.conf`));
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/lib/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/lib/update.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  /** Single source of truth for the CLI version. */
2
- export declare const VERSION = "0.12.1";
2
+ export declare const VERSION = "0.12.4";
3
3
  //# sourceMappingURL=version.d.ts.map
@@ -1,3 +1,3 @@
1
1
  /** Single source of truth for the CLI version. */
2
- export const VERSION = '0.12.1';
2
+ export const VERSION = '0.12.4';
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@calltelemetry/cli",
3
- "version": "0.12.1",
3
+ "version": "0.12.4",
4
4
  "description": "CallTelemetry appliance management CLI",
5
5
  "type": "module",
6
6
  "bin": {