@calltelemetry/cli 0.2.1 → 0.2.2
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/index.js
CHANGED
|
@@ -25,7 +25,7 @@ const program = new Command();
|
|
|
25
25
|
program
|
|
26
26
|
.name('ct')
|
|
27
27
|
.description('CallTelemetry appliance management CLI')
|
|
28
|
-
.version('0.2.
|
|
28
|
+
.version('0.2.2')
|
|
29
29
|
.hook('preAction', () => {
|
|
30
30
|
// Only show logo for direct CLI invocations, not TUI
|
|
31
31
|
console.log(LOGO);
|
|
@@ -51,7 +51,7 @@ if (!hasCommand && process.stdout.isTTY) {
|
|
|
51
51
|
const React = await import('react');
|
|
52
52
|
const { MainMenu } = await import('./ui/views/MainMenu.js');
|
|
53
53
|
const { unmount, waitUntilExit } = render(React.createElement(MainMenu, {
|
|
54
|
-
version: '0.2.
|
|
54
|
+
version: '0.2.2',
|
|
55
55
|
onCliCommand: (command) => {
|
|
56
56
|
unmount();
|
|
57
57
|
// Fall back to Commander for commands without TUI views
|
package/dist/lib/bundle.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/lib/bundle.ts"],"names":[],"mappings":"AAOA,wBAAsB,kBAAkB,CAAC,OAAO,GAAE,QAAQ,GAAG,QAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBjG;
|
|
1
|
+
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/lib/bundle.ts"],"names":[],"mappings":"AAOA,wBAAsB,kBAAkB,CAAC,OAAO,GAAE,QAAQ,GAAG,QAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBjG;AAeD,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkGnE;AAED,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAW1E;AAED,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAiBlF"}
|
package/dist/lib/bundle.js
CHANGED
|
@@ -22,6 +22,20 @@ export async function fetchLatestVersion(channel = 'stable') {
|
|
|
22
22
|
: "Specify a version manually: ct update <version>"));
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
+
/** Copy a file, falling back to sudo cp if destination is owned by root */
|
|
26
|
+
async function safeCopy(src, dest) {
|
|
27
|
+
try {
|
|
28
|
+
await copyFile(src, dest);
|
|
29
|
+
}
|
|
30
|
+
catch (err) {
|
|
31
|
+
if (err?.code === 'EACCES') {
|
|
32
|
+
await execa('sudo', ['cp', src, dest]);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
throw err;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
25
39
|
export async function downloadBundle(version) {
|
|
26
40
|
const { gcsBundleBaseUrl, installDir, composeFile } = getPaths();
|
|
27
41
|
const bundleName = `calltelemetry-bundle-${version}.tar.gz`;
|
|
@@ -64,12 +78,12 @@ export async function downloadBundle(version) {
|
|
|
64
78
|
await chmod(cliDest, 0o755);
|
|
65
79
|
out.ok('cli.sh');
|
|
66
80
|
}
|
|
67
|
-
// Prometheus
|
|
81
|
+
// Prometheus – destination may be owned by root (Docker volume mount)
|
|
68
82
|
const extractedProm = join(extractDir, 'prometheus', 'prometheus.yml');
|
|
69
83
|
if (existsSync(extractedProm)) {
|
|
70
84
|
const promDir = join(installDir, 'prometheus');
|
|
71
85
|
await mkdir(promDir, { recursive: true });
|
|
72
|
-
await
|
|
86
|
+
await safeCopy(extractedProm, join(promDir, 'prometheus.yml'));
|
|
73
87
|
out.ok('prometheus/prometheus.yml');
|
|
74
88
|
}
|
|
75
89
|
// Grafana
|
|
@@ -79,21 +93,27 @@ export async function downloadBundle(version) {
|
|
|
79
93
|
await mkdir(join(grafanaDir, 'dashboards'), { recursive: true });
|
|
80
94
|
await mkdir(join(grafanaDir, 'provisioning', 'datasources'), { recursive: true });
|
|
81
95
|
await mkdir(join(grafanaDir, 'provisioning', 'dashboards'), { recursive: true });
|
|
82
|
-
// Copy dashboards and provisioning recursively
|
|
83
|
-
|
|
84
|
-
|
|
96
|
+
// Copy dashboards and provisioning recursively; sudo fallback for root-owned dirs
|
|
97
|
+
for (const sub of ['dashboards', 'provisioning']) {
|
|
98
|
+
try {
|
|
99
|
+
await execa('cp', ['-r', join(extractedGrafana, sub), grafanaDir]);
|
|
100
|
+
}
|
|
101
|
+
catch {
|
|
102
|
+
await execa('sudo', ['cp', '-r', join(extractedGrafana, sub), grafanaDir]).catch(() => { });
|
|
103
|
+
}
|
|
104
|
+
}
|
|
85
105
|
out.ok('grafana configs');
|
|
86
106
|
}
|
|
87
107
|
// Nats
|
|
88
108
|
const extractedNats = join(extractDir, 'nats.conf');
|
|
89
109
|
if (existsSync(extractedNats)) {
|
|
90
|
-
await
|
|
110
|
+
await safeCopy(extractedNats, join(installDir, 'nats.conf'));
|
|
91
111
|
out.ok('nats.conf');
|
|
92
112
|
}
|
|
93
113
|
// Caddyfile
|
|
94
114
|
const extractedCaddy = join(extractDir, 'Caddyfile');
|
|
95
115
|
if (existsSync(extractedCaddy)) {
|
|
96
|
-
await
|
|
116
|
+
await safeCopy(extractedCaddy, join(installDir, 'Caddyfile'));
|
|
97
117
|
out.ok('Caddyfile');
|
|
98
118
|
}
|
|
99
119
|
// Cleanup
|
package/dist/lib/bundle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/lib/bundle.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/lib/bundle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useEffect, useCallback } from 'react';
|
|
3
3
|
import { Box, Text, useInput } from 'ink';
|
|
4
4
|
import { AppShell, Section, StepList, Spinner } from '../components/index.js';
|
|
5
5
|
import { usePolling, useStepRunner, useFinish } from '../hooks/index.js';
|
|
@@ -51,79 +51,70 @@ function OneShotView({ action, service, onBack }) {
|
|
|
51
51
|
return (_jsx(AppShell, { command: `ct services ${action} ${service}`, children: _jsx(Section, { title: `${action.charAt(0).toUpperCase() + action.slice(1)} Service`, children: _jsx(StepList, { steps: states }) }) }));
|
|
52
52
|
}
|
|
53
53
|
/* ------------------------------------------------------------------ */
|
|
54
|
-
/*
|
|
54
|
+
/* Health / state helpers */
|
|
55
55
|
/* ------------------------------------------------------------------ */
|
|
56
|
-
function
|
|
57
|
-
|
|
58
|
-
|
|
56
|
+
function healthIcon(health, state) {
|
|
57
|
+
if (state === 'exited' || state === 'dead')
|
|
58
|
+
return '●';
|
|
59
|
+
if (health === 'healthy')
|
|
60
|
+
return '●';
|
|
61
|
+
if (health === 'unhealthy')
|
|
62
|
+
return '●';
|
|
63
|
+
if (health === 'starting')
|
|
64
|
+
return '●';
|
|
65
|
+
if (state === 'running')
|
|
66
|
+
return '●';
|
|
67
|
+
return '○';
|
|
68
|
+
}
|
|
69
|
+
function healthColor(health, state) {
|
|
70
|
+
if (state === 'exited' || state === 'dead')
|
|
71
|
+
return 'red';
|
|
72
|
+
if (health === 'healthy')
|
|
59
73
|
return 'green';
|
|
60
|
-
if (
|
|
74
|
+
if (health === 'unhealthy')
|
|
61
75
|
return 'red';
|
|
62
|
-
if (
|
|
76
|
+
if (health === 'starting')
|
|
63
77
|
return 'yellow';
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
const defs = [
|
|
68
|
-
{ header: 'Service', key: 'service' },
|
|
69
|
-
{ header: 'State', key: 'state' },
|
|
70
|
-
{ header: 'Health', key: 'health' },
|
|
71
|
-
{ header: 'Status', key: 'status' },
|
|
72
|
-
];
|
|
73
|
-
return defs.map(d => {
|
|
74
|
-
const dataMax = services.reduce((max, s) => Math.max(max, (s[d.key] ?? '').length), 0);
|
|
75
|
-
return { ...d, width: Math.max(d.header.length, dataMax) + 2 };
|
|
76
|
-
});
|
|
78
|
+
if (state === 'running')
|
|
79
|
+
return 'green';
|
|
80
|
+
return 'gray';
|
|
77
81
|
}
|
|
78
|
-
function
|
|
79
|
-
|
|
82
|
+
function extractVersion(image) {
|
|
83
|
+
if (!image)
|
|
84
|
+
return '';
|
|
85
|
+
const tag = image.includes(':') ? image.split(':').pop() : image;
|
|
86
|
+
// Trim registry/org prefixes from the tag portion if it leaked through
|
|
87
|
+
return tag;
|
|
80
88
|
}
|
|
81
|
-
function
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
'
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
function extractUptime(status) {
|
|
90
|
+
if (!status)
|
|
91
|
+
return '';
|
|
92
|
+
// "Up 36 minutes (healthy)" -> "36m"
|
|
93
|
+
const m = status.match(/Up\s+(?:About\s+)?(\d+)\s*(second|minute|hour|day|week|month)/i);
|
|
94
|
+
if (!m) {
|
|
95
|
+
if (status.toLowerCase().startsWith('exited'))
|
|
96
|
+
return 'exited';
|
|
97
|
+
return status.replace(/\s*\(.*\)/, '').trim();
|
|
98
|
+
}
|
|
99
|
+
const n = m[1];
|
|
100
|
+
const unit = m[2].charAt(0);
|
|
101
|
+
return `${n}${unit}`;
|
|
92
102
|
}
|
|
93
|
-
function
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
if (col.key === 'state') {
|
|
100
|
-
const color = stateColor(value);
|
|
101
|
-
if (isActive) {
|
|
102
|
-
return (_jsx(Text, { color: "cyan", bold: true, children: padded }, col.key));
|
|
103
|
-
}
|
|
104
|
-
// Render the leading space normally + colored state text + trailing pad
|
|
105
|
-
return (_jsxs(React.Fragment, { children: [_jsx(Text, { children: ' ' }), _jsx(Text, { color: color, children: value }), _jsx(Text, { children: ' '.repeat(Math.max(0, col.width - value.length - 1)) })] }, col.key));
|
|
106
|
-
}
|
|
107
|
-
if (isActive) {
|
|
108
|
-
return (_jsx(Text, { color: "cyan", bold: true, children: padded }, col.key));
|
|
109
|
-
}
|
|
110
|
-
return _jsx(Text, { children: padded }, col.key);
|
|
111
|
-
});
|
|
112
|
-
// Build row with box-drawing separators
|
|
113
|
-
// We need to interleave cells with │ separators
|
|
103
|
+
function formatPorts(ports) {
|
|
104
|
+
if (!ports)
|
|
105
|
+
return '';
|
|
106
|
+
// Extract published->target mappings from the ports string
|
|
107
|
+
const matches = ports.matchAll(/(\d+)->(\d+)/g);
|
|
108
|
+
const seen = new Set();
|
|
114
109
|
const parts = [];
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
110
|
+
for (const m of matches) {
|
|
111
|
+
const key = `${m[1]}→${m[2]}`;
|
|
112
|
+
if (!seen.has(key)) {
|
|
113
|
+
seen.add(key);
|
|
114
|
+
parts.push(key);
|
|
115
|
+
}
|
|
119
116
|
}
|
|
120
|
-
return
|
|
121
|
-
}
|
|
122
|
-
function TableFooter({ columns }) {
|
|
123
|
-
const bottom = '\u2514' +
|
|
124
|
-
columns.map(c => '\u2500'.repeat(c.width)).join('\u2534') +
|
|
125
|
-
'\u2518';
|
|
126
|
-
return _jsx(Text, { children: bottom });
|
|
117
|
+
return parts.join(' ');
|
|
127
118
|
}
|
|
128
119
|
function InteractiveView({ onBack }) {
|
|
129
120
|
const finish = useFinish(onBack);
|
|
@@ -222,8 +213,22 @@ function InteractiveView({ onBack }) {
|
|
|
222
213
|
}
|
|
223
214
|
// --- Phase: list ---
|
|
224
215
|
const serviceList = services ?? [];
|
|
225
|
-
const
|
|
226
|
-
|
|
216
|
+
const svcWidth = Math.max(9, ...serviceList.map(s => s.service.length)) + 2;
|
|
217
|
+
const verWidth = Math.max(9, ...serviceList.map(s => extractVersion(s.image).length)) + 2;
|
|
218
|
+
// Summary counts
|
|
219
|
+
const runningCount = serviceList.filter(s => s.state === 'running').length;
|
|
220
|
+
const healthyCount = serviceList.filter(s => s.health === 'healthy').length;
|
|
221
|
+
const unhealthyCount = serviceList.filter(s => s.health === 'unhealthy').length;
|
|
222
|
+
const stoppedCount = serviceList.filter(s => s.state === 'exited' || s.state === 'dead').length;
|
|
223
|
+
return (_jsxs(AppShell, { command: "ct services", children: [_jsxs(Section, { title: "Containers", children: [error && !services && (_jsx(Box, { paddingLeft: 2, children: _jsxs(Text, { color: "red", children: ["Error loading services: ", error.message] }) })), !services && !error && _jsx(Spinner, { label: "Loading services..." }), serviceList.length > 0 && (_jsxs(_Fragment, { children: [_jsx(Box, { paddingLeft: 2, marginBottom: 1, children: _jsxs(Text, { children: [_jsx(Text, { bold: true, children: serviceList.length }), _jsx(Text, { children: " containers" }), runningCount > 0 && _jsxs(Text, { color: "green", children: [" \u2014 ", runningCount, " running"] }), healthyCount > 0 && _jsxs(Text, { color: "green", children: [" (", healthyCount, " healthy)"] }), unhealthyCount > 0 && _jsxs(Text, { color: "red", children: [" \u2014 ", unhealthyCount, " unhealthy"] }), stoppedCount > 0 && _jsxs(Text, { color: "red", children: [" \u2014 ", stoppedCount, " stopped"] })] }) }), _jsxs(Box, { paddingLeft: 2, children: [_jsx(Text, { dimColor: true, bold: true, children: ' '.padEnd(3) }), _jsx(Text, { dimColor: true, bold: true, children: 'Service'.padEnd(svcWidth) }), _jsx(Text, { dimColor: true, bold: true, children: 'Version'.padEnd(verWidth) }), _jsx(Text, { dimColor: true, bold: true, children: 'Uptime'.padEnd(10) }), _jsx(Text, { dimColor: true, bold: true, children: 'Ports' })] }), serviceList.map((svc, i) => {
|
|
224
|
+
const isActive = i === cursor;
|
|
225
|
+
const icon = healthIcon(svc.health, svc.state);
|
|
226
|
+
const color = healthColor(svc.health, svc.state);
|
|
227
|
+
const version = extractVersion(svc.image);
|
|
228
|
+
const uptime = extractUptime(svc.status);
|
|
229
|
+
const ports = formatPorts(svc.ports);
|
|
230
|
+
return (_jsxs(Box, { paddingLeft: 2, children: [_jsx(Text, { color: isActive ? 'cyan' : color, children: isActive ? ' ❯ ' : ` ${icon} ` }), _jsx(Text, { color: isActive ? 'cyan' : undefined, bold: isActive, children: svc.service.padEnd(svcWidth) }), _jsx(Text, { color: isActive ? 'cyan' : undefined, dimColor: !isActive, children: version.padEnd(verWidth) }), _jsx(Text, { color: isActive ? 'cyan' : undefined, dimColor: !isActive, children: uptime.padEnd(10) }), _jsx(Text, { color: isActive ? 'cyan' : undefined, dimColor: !isActive, children: ports })] }, svc.service));
|
|
231
|
+
})] })), services && serviceList.length === 0 && (_jsx(Box, { paddingLeft: 2, children: _jsx(Text, { dimColor: true, children: "No services found in compose file." }) }))] }), serviceList.length > 0 && serviceList[cursor] && (_jsxs(Box, { paddingLeft: 4, paddingTop: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, color: "cyan", children: serviceList[cursor].service }), _jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: ' Image: ' }), _jsx(Text, { children: serviceList[cursor].image })] }), _jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: ' State: ' }), _jsxs(Text, { color: healthColor(serviceList[cursor].health, serviceList[cursor].state), children: [serviceList[cursor].state, serviceList[cursor].health ? ` (${serviceList[cursor].health})` : ''] })] }), _jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: ' Status: ' }), _jsx(Text, { children: serviceList[cursor].status })] }), serviceList[cursor].ports && (_jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: ' Ports: ' }), _jsx(Text, { children: serviceList[cursor].ports })] }))] })), _jsx(Box, { paddingLeft: 2, paddingTop: 1, children: _jsx(Text, { dimColor: true, children: '↑↓ Navigate Enter/l Logs s Start x Stop r Restart a Start All X Stop All q Back' }) })] }));
|
|
227
232
|
}
|
|
228
233
|
/* ------------------------------------------------------------------ */
|
|
229
234
|
/* Export */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServicesView.js","sourceRoot":"","sources":["../../../src/ui/views/ServicesView.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ServicesView.js","sourceRoot":"","sources":["../../../src/ui/views/ServicesView.tsx"],"names":[],"mappings":"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"}
|