@edgible-team/cli 1.2.13 → 1.2.17
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/README.md +5 -3
- package/dist/client/api-client.d.ts +13 -1
- package/dist/client/api-client.d.ts.map +1 -1
- package/dist/client/api-client.js +19 -0
- package/dist/commands/agent/install.d.ts +2 -1
- package/dist/commands/agent/install.d.ts.map +1 -1
- package/dist/commands/agent/install.js +24 -7
- package/dist/commands/agent/start.d.ts +5 -1
- package/dist/commands/agent/start.d.ts.map +1 -1
- package/dist/commands/agent/start.js +19 -280
- package/dist/commands/agent/uninstall.d.ts.map +1 -1
- package/dist/commands/agent/uninstall.js +14 -7
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +3 -2
- package/dist/commands/ai/setup.d.ts +1 -1
- package/dist/commands/ai/setup.d.ts.map +1 -1
- package/dist/commands/ai.js +1 -1
- package/dist/commands/application/create-docker-compose.d.ts +3 -1
- package/dist/commands/application/create-docker-compose.d.ts.map +1 -1
- package/dist/commands/application/create-docker-compose.js +25 -69
- package/dist/commands/application/create-existing.d.ts +2 -2
- package/dist/commands/application/create-existing.d.ts.map +1 -1
- package/dist/commands/application/create-existing.js +27 -132
- package/dist/commands/application/create-managed-process.d.ts +3 -1
- package/dist/commands/application/create-managed-process.d.ts.map +1 -1
- package/dist/commands/application/create-managed-process.js +31 -75
- package/dist/commands/application/delete.d.ts +2 -1
- package/dist/commands/application/delete.d.ts.map +1 -1
- package/dist/commands/application/delete.js +19 -5
- package/dist/commands/application/update.d.ts +3 -0
- package/dist/commands/application/update.d.ts.map +1 -1
- package/dist/commands/application/update.js +45 -1
- package/dist/commands/application.d.ts.map +1 -1
- package/dist/commands/application.js +33 -19
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +44 -0
- package/dist/commands/debug.js +1 -1
- package/dist/commands/device/application-health.d.ts +7 -0
- package/dist/commands/device/application-health.d.ts.map +1 -0
- package/dist/commands/device/application-health.js +103 -0
- package/dist/commands/device/delete.d.ts +7 -0
- package/dist/commands/device/delete.d.ts.map +1 -0
- package/dist/commands/device/delete.js +69 -0
- package/dist/commands/device/health.d.ts +7 -0
- package/dist/commands/device/health.d.ts.map +1 -0
- package/dist/commands/device/health.js +78 -0
- package/dist/commands/device/list.d.ts +5 -0
- package/dist/commands/device/list.d.ts.map +1 -0
- package/dist/commands/device/list.js +46 -0
- package/dist/commands/device/telemetry.d.ts +8 -0
- package/dist/commands/device/telemetry.d.ts.map +1 -0
- package/dist/commands/device/telemetry.js +59 -0
- package/dist/commands/device.d.ts +6 -0
- package/dist/commands/device.d.ts.map +1 -0
- package/dist/commands/device.js +86 -0
- package/dist/commands/stack/deploy.d.ts +8 -0
- package/dist/commands/stack/deploy.d.ts.map +1 -0
- package/dist/commands/stack/deploy.js +61 -0
- package/dist/commands/stack/diff.d.ts +7 -0
- package/dist/commands/stack/diff.d.ts.map +1 -0
- package/dist/commands/stack/diff.js +66 -0
- package/dist/commands/stack/status.d.ts +9 -0
- package/dist/commands/stack/status.d.ts.map +1 -0
- package/dist/commands/stack/status.js +55 -0
- package/dist/commands/stack/teardown.d.ts +8 -0
- package/dist/commands/stack/teardown.d.ts.map +1 -0
- package/dist/commands/stack/teardown.js +107 -0
- package/dist/commands/stack/validate.d.ts +7 -0
- package/dist/commands/stack/validate.d.ts.map +1 -0
- package/dist/commands/stack/validate.js +44 -0
- package/dist/commands/stack.d.ts +10 -0
- package/dist/commands/stack.d.ts.map +1 -0
- package/dist/commands/stack.js +117 -0
- package/dist/commands/utils/auth-prompt.d.ts +25 -0
- package/dist/commands/utils/auth-prompt.d.ts.map +1 -0
- package/dist/commands/utils/auth-prompt.js +115 -0
- package/dist/commands/utils/device-prompt.d.ts +18 -0
- package/dist/commands/utils/device-prompt.d.ts.map +1 -0
- package/dist/commands/utils/device-prompt.js +58 -0
- package/dist/commands/utils/output-formatter.d.ts +13 -0
- package/dist/commands/utils/output-formatter.d.ts.map +1 -1
- package/dist/commands/utils/output-formatter.js +21 -0
- package/dist/index.js +4 -0
- package/dist/services/LocalAgentManager.d.ts +2 -1
- package/dist/services/LocalAgentManager.d.ts.map +1 -1
- package/dist/services/LocalAgentManager.js +6 -4
- package/dist/services/application/ApplicationService.d.ts +19 -0
- package/dist/services/application/ApplicationService.d.ts.map +1 -1
- package/dist/services/application/ApplicationService.js +14 -1
- package/dist/services/device/DeviceService.d.ts +62 -0
- package/dist/services/device/DeviceService.d.ts.map +1 -0
- package/dist/services/device/DeviceService.js +235 -0
- package/dist/services/edgible.d.ts +3 -1
- package/dist/services/edgible.d.ts.map +1 -1
- package/dist/services/edgible.js +5 -4
- package/dist/services/instances.d.ts +27 -1
- package/dist/services/instances.d.ts.map +1 -1
- package/dist/services/instances.js +53 -4
- package/dist/services/stack/DependencyGraphManager.d.ts +69 -0
- package/dist/services/stack/DependencyGraphManager.d.ts.map +1 -0
- package/dist/services/stack/DependencyGraphManager.js +204 -0
- package/dist/services/stack/DeviceResolver.d.ts +63 -0
- package/dist/services/stack/DeviceResolver.d.ts.map +1 -0
- package/dist/services/stack/DeviceResolver.js +147 -0
- package/dist/services/stack/GatewayResolver.d.ts +84 -0
- package/dist/services/stack/GatewayResolver.d.ts.map +1 -0
- package/dist/services/stack/GatewayResolver.js +179 -0
- package/dist/services/stack/StackParser.d.ts +38 -0
- package/dist/services/stack/StackParser.d.ts.map +1 -0
- package/dist/services/stack/StackParser.js +234 -0
- package/dist/services/stack/StackService.d.ts +76 -0
- package/dist/services/stack/StackService.d.ts.map +1 -0
- package/dist/services/stack/StackService.js +476 -0
- package/dist/types/AgentConfig.d.ts +26 -0
- package/dist/types/AgentConfig.d.ts.map +1 -1
- package/dist/types/ApiRequests.d.ts +5 -1
- package/dist/types/ApiRequests.d.ts.map +1 -1
- package/dist/types/ApiResponses.d.ts +5 -0
- package/dist/types/ApiResponses.d.ts.map +1 -1
- package/dist/types/JobTypes.d.ts +103 -0
- package/dist/types/JobTypes.d.ts.map +1 -0
- package/dist/types/JobTypes.js +80 -0
- package/dist/types/WebSocketMessages.d.ts +89 -0
- package/dist/types/WebSocketMessages.d.ts.map +1 -0
- package/dist/types/WebSocketMessages.js +5 -0
- package/dist/types/backendJobs.d.ts +102 -0
- package/dist/types/backendJobs.d.ts.map +1 -0
- package/dist/types/backendJobs.js +5 -0
- package/dist/types/models/ApplicationData.d.ts +1 -1
- package/dist/types/models/ApplicationData.d.ts.map +1 -1
- package/dist/types/models/DeviceData.d.ts +4 -0
- package/dist/types/models/DeviceData.d.ts.map +1 -1
- package/dist/types/stack.d.ts +191 -0
- package/dist/types/stack.d.ts.map +1 -0
- package/dist/types/stack.js +5 -0
- package/dist/types/validation/schemas.d.ts +20 -20
- package/dist/types/validation/schemas.js +1 -1
- package/dist/utils/stack-errors.d.ts +103 -0
- package/dist/utils/stack-errors.d.ts.map +1 -0
- package/dist/utils/stack-errors.js +158 -0
- package/dist/utils/stack-file.d.ts +11 -0
- package/dist/utils/stack-file.d.ts.map +1 -0
- package/dist/utils/stack-file.js +66 -0
- package/dist/validation/stack-schemas.d.ts +535 -0
- package/dist/validation/stack-schemas.d.ts.map +1 -0
- package/dist/validation/stack-schemas.js +178 -0
- package/package.json +4 -2
- package/dist/commands/agent/agent-handlers.d.ts +0 -45
- package/dist/commands/agent/agent-handlers.d.ts.map +0 -1
- package/dist/commands/agent/agent-handlers.js +0 -1159
- package/dist/commands/application/api-keys.d.ts +0 -3
- package/dist/commands/application/api-keys.d.ts.map +0 -1
- package/dist/commands/application/api-keys.js +0 -227
- package/dist/commands/application/create-compose.d.ts +0 -3
- package/dist/commands/application/create-compose.d.ts.map +0 -1
- package/dist/commands/application/create-compose.js +0 -381
- package/dist/commands/application/create-interactive.d.ts +0 -3
- package/dist/commands/application/create-interactive.d.ts.map +0 -1
- package/dist/commands/application/create-interactive.js +0 -326
- package/dist/commands/application/create-workload.d.ts +0 -5
- package/dist/commands/application/create-workload.d.ts.map +0 -1
- package/dist/commands/application/create-workload.js +0 -48
- package/dist/commands/application/short-codes.d.ts +0 -3
- package/dist/commands/application/short-codes.d.ts.map +0 -1
- package/dist/commands/application/short-codes.js +0 -226
- package/dist/commands/application/toggle.d.ts +0 -2
- package/dist/commands/application/toggle.d.ts.map +0 -1
- package/dist/commands/application/toggle.js +0 -78
- package/dist/commands/examples/migrated-command-example.d.ts +0 -31
- package/dist/commands/examples/migrated-command-example.d.ts.map +0 -1
- package/dist/commands/examples/migrated-command-example.js +0 -180
- package/dist/commands/managedGateway/create.d.ts +0 -6
- package/dist/commands/managedGateway/create.d.ts.map +0 -1
- package/dist/commands/managedGateway/create.js +0 -50
- package/dist/commands/managedGateway/delete.d.ts +0 -5
- package/dist/commands/managedGateway/delete.d.ts.map +0 -1
- package/dist/commands/managedGateway/delete.js +0 -57
- package/dist/commands/managedGateway/get.d.ts +0 -4
- package/dist/commands/managedGateway/get.d.ts.map +0 -1
- package/dist/commands/managedGateway/get.js +0 -71
- package/dist/commands/managedGateway/haproxy-stats.d.ts +0 -6
- package/dist/commands/managedGateway/haproxy-stats.d.ts.map +0 -1
- package/dist/commands/managedGateway/haproxy-stats.js +0 -131
- package/dist/commands/managedGateway/list.d.ts +0 -4
- package/dist/commands/managedGateway/list.d.ts.map +0 -1
- package/dist/commands/managedGateway/list.js +0 -50
- package/dist/commands/managedGateway/logs.d.ts +0 -10
- package/dist/commands/managedGateway/logs.d.ts.map +0 -1
- package/dist/commands/managedGateway/logs.js +0 -100
- package/dist/commands/managedGateway/reboot.d.ts +0 -5
- package/dist/commands/managedGateway/reboot.d.ts.map +0 -1
- package/dist/commands/managedGateway/reboot.js +0 -95
- package/dist/commands/managedGateway/resync.d.ts +0 -10
- package/dist/commands/managedGateway/resync.d.ts.map +0 -1
- package/dist/commands/managedGateway/resync.js +0 -69
- package/dist/commands/managedGateway/ssh.d.ts +0 -4
- package/dist/commands/managedGateway/ssh.d.ts.map +0 -1
- package/dist/commands/managedGateway/ssh.js +0 -130
- package/dist/commands/managedGateway/wipe-logs.d.ts +0 -4
- package/dist/commands/managedGateway/wipe-logs.d.ts.map +0 -1
- package/dist/commands/managedGateway/wipe-logs.js +0 -67
- package/dist/commands/managedGateway/wireguard.d.ts +0 -4
- package/dist/commands/managedGateway/wireguard.d.ts.map +0 -1
- package/dist/commands/managedGateway/wireguard.js +0 -68
- package/dist/di/bindings.d.ts +0 -15
- package/dist/di/bindings.d.ts.map +0 -1
- package/dist/di/bindings.js +0 -99
- package/dist/di/container.d.ts +0 -44
- package/dist/di/container.d.ts.map +0 -1
- package/dist/di/container.js +0 -88
- package/dist/di/types.d.ts +0 -23
- package/dist/di/types.d.ts.map +0 -1
- package/dist/di/types.js +0 -32
- package/dist/repositories/config-repository.d.ts +0 -46
- package/dist/repositories/config-repository.d.ts.map +0 -1
- package/dist/repositories/config-repository.js +0 -62
- package/dist/repositories/gateway-repository.d.ts +0 -37
- package/dist/repositories/gateway-repository.d.ts.map +0 -1
- package/dist/repositories/gateway-repository.js +0 -35
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.handleManagedGatewayList = handleManagedGatewayList;
|
|
7
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
-
const instances_1 = require("../../services/instances");
|
|
9
|
-
const config_validator_1 = require("../utils/config-validator");
|
|
10
|
-
async function handleManagedGatewayList(options) {
|
|
11
|
-
wrapCommand(async (options) => {
|
|
12
|
-
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
13
|
-
requireAuth: true,
|
|
14
|
-
});
|
|
15
|
-
instances_1.logger.debug('Listing managed gateways');
|
|
16
|
-
const response = await instances_1.managedGatewayService.listManagedGateways();
|
|
17
|
-
if (!response.success || !response.gateways || response.gateways.length === 0) {
|
|
18
|
-
console.log(chalk_1.default.yellow('⚠ No managed gateways found'));
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
if (options.json) {
|
|
22
|
-
console.log(JSON.stringify({
|
|
23
|
-
gateways: response.gateways.map((gateway) => ({
|
|
24
|
-
id: gateway.id,
|
|
25
|
-
name: gateway.name,
|
|
26
|
-
description: gateway.description,
|
|
27
|
-
ipAddress: gateway.ipAddress,
|
|
28
|
-
status: gateway.status,
|
|
29
|
-
lastSeen: gateway.lastSeen,
|
|
30
|
-
createdAt: gateway.createdAt,
|
|
31
|
-
organizationId: gateway.organizationId,
|
|
32
|
-
})),
|
|
33
|
-
}, null, 2));
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
console.log(chalk_1.default.blue('\n🌐 Managed Gateways:'));
|
|
37
|
-
response.gateways.forEach((gateway) => {
|
|
38
|
-
console.log(chalk_1.default.white(`\n ID: ${gateway.id}`));
|
|
39
|
-
console.log(chalk_1.default.white(` Name: ${gateway.name}`));
|
|
40
|
-
if (gateway.description) {
|
|
41
|
-
console.log(chalk_1.default.gray(` Description: ${gateway.description}`));
|
|
42
|
-
}
|
|
43
|
-
console.log(chalk_1.default.white(` IP Address: ${gateway.ipAddress || 'N/A'}`));
|
|
44
|
-
console.log(chalk_1.default.white(` Status: ${gateway.status || 'N/A'}`));
|
|
45
|
-
console.log(chalk_1.default.white(` Last Seen: ${gateway.lastSeen ? new Date(gateway.lastSeen).toLocaleString() : 'N/A'}`));
|
|
46
|
-
console.log(chalk_1.default.white(` Created: ${new Date(gateway.createdAt).toLocaleString()}`));
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=list.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/logs.ts"],"names":[],"mappings":"AAMA,wBAAsB,wBAAwB,CAAC,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAmGxM"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.handleManagedGatewayLogs = handleManagedGatewayLogs;
|
|
7
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const instances_1 = require("../../services/instances");
|
|
10
|
-
const config_validator_1 = require("../utils/config-validator");
|
|
11
|
-
const log_formatter_1 = require("../../utils/log-formatter");
|
|
12
|
-
async function handleManagedGatewayLogs(options) {
|
|
13
|
-
wrapCommand(async (options) => {
|
|
14
|
-
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
15
|
-
requireAuth: true,
|
|
16
|
-
});
|
|
17
|
-
let gatewayId = options.id;
|
|
18
|
-
if (!gatewayId) {
|
|
19
|
-
// List gateways first to allow selection
|
|
20
|
-
const listResponse = await instances_1.managedGatewayService.listManagedGateways();
|
|
21
|
-
if (!listResponse.success || !listResponse.gateways || listResponse.gateways.length === 0) {
|
|
22
|
-
console.log(chalk_1.default.yellow('⚠ No managed gateways found'));
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
const choices = listResponse.gateways.map((gateway) => ({
|
|
26
|
-
name: `${gateway.name} (${gateway.id})`,
|
|
27
|
-
value: gateway.id,
|
|
28
|
-
}));
|
|
29
|
-
const answer = await inquirer_1.default.prompt([
|
|
30
|
-
{
|
|
31
|
-
type: 'list',
|
|
32
|
-
name: 'gatewayId',
|
|
33
|
-
message: 'Select managed gateway:',
|
|
34
|
-
choices,
|
|
35
|
-
},
|
|
36
|
-
]);
|
|
37
|
-
gatewayId = answer.gatewayId;
|
|
38
|
-
}
|
|
39
|
-
const lines = parseInt(options.lines || '50') || 50;
|
|
40
|
-
const follow = options.follow || false;
|
|
41
|
-
const level = options.level || 'all';
|
|
42
|
-
const module = options.module;
|
|
43
|
-
const comprehensive = options.comprehensive || false;
|
|
44
|
-
instances_1.logger.info('Retrieving managed gateway logs', {
|
|
45
|
-
gatewayId,
|
|
46
|
-
lines: follow ? undefined : lines,
|
|
47
|
-
follow,
|
|
48
|
-
level,
|
|
49
|
-
module,
|
|
50
|
-
comprehensive,
|
|
51
|
-
});
|
|
52
|
-
// Use the dedicated getManagedGatewayLogs method
|
|
53
|
-
try {
|
|
54
|
-
if (!gatewayId) {
|
|
55
|
-
console.log(chalk_1.default.red('✗ Gateway ID is required'));
|
|
56
|
-
return;
|
|
57
|
-
}
|
|
58
|
-
const result = await instances_1.managedGatewayService.getManagedGatewayLogs(gatewayId, {
|
|
59
|
-
lines: follow ? undefined : lines,
|
|
60
|
-
follow: follow,
|
|
61
|
-
level: level,
|
|
62
|
-
comprehensive: comprehensive,
|
|
63
|
-
});
|
|
64
|
-
if (result.success) {
|
|
65
|
-
// For comprehensive mode, just output raw logs
|
|
66
|
-
if (comprehensive) {
|
|
67
|
-
console.log(result.logs);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
// Parse and format JSON logs nicely
|
|
71
|
-
const formattedLogs = (0, log_formatter_1.processLogs)(result.logs, {
|
|
72
|
-
module: module,
|
|
73
|
-
level: level,
|
|
74
|
-
singleLine: options.singleLine || false
|
|
75
|
-
});
|
|
76
|
-
if (formattedLogs.trim()) {
|
|
77
|
-
console.log(formattedLogs);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
if (module) {
|
|
81
|
-
console.log(chalk_1.default.yellow(`No logs found for module(s): ${module}`));
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
console.log(chalk_1.default.yellow('No logs found'));
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
instances_1.logger.error('Failed to retrieve logs');
|
|
91
|
-
console.log(chalk_1.default.red('✗ Failed to retrieve logs'));
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
catch (error) {
|
|
95
|
-
instances_1.logger.error('Error retrieving managed gateway logs', error);
|
|
96
|
-
console.log(chalk_1.default.red('✗ Error retrieving logs'));
|
|
97
|
-
}
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
//# sourceMappingURL=logs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reboot.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/reboot.ts"],"names":[],"mappings":"AAKA,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4FzG"}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.handleManagedGatewayReboot = handleManagedGatewayReboot;
|
|
7
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const instances_1 = require("../../services/instances");
|
|
10
|
-
const config_validator_1 = require("../utils/config-validator");
|
|
11
|
-
async function handleManagedGatewayReboot(options) {
|
|
12
|
-
wrapCommand(async (options) => {
|
|
13
|
-
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
14
|
-
requireAuth: true,
|
|
15
|
-
});
|
|
16
|
-
let gatewayId = options.id;
|
|
17
|
-
if (!gatewayId) {
|
|
18
|
-
// List gateways first to allow selection
|
|
19
|
-
const listResponse = await instances_1.managedGatewayService.listManagedGateways();
|
|
20
|
-
if (!listResponse.success || !listResponse.gateways || listResponse.gateways.length === 0) {
|
|
21
|
-
console.log(chalk_1.default.yellow('⚠ No managed gateways found'));
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const choices = listResponse.gateways.map((gateway) => ({
|
|
25
|
-
name: `${gateway.name} (${gateway.id})`,
|
|
26
|
-
value: gateway.id,
|
|
27
|
-
}));
|
|
28
|
-
const answer = await inquirer_1.default.prompt([
|
|
29
|
-
{
|
|
30
|
-
type: 'list',
|
|
31
|
-
name: 'gatewayId',
|
|
32
|
-
message: 'Select managed gateway to reboot:',
|
|
33
|
-
choices,
|
|
34
|
-
},
|
|
35
|
-
]);
|
|
36
|
-
gatewayId = answer.gatewayId;
|
|
37
|
-
}
|
|
38
|
-
// Confirm reboot unless force flag is set
|
|
39
|
-
if (!options.force) {
|
|
40
|
-
const confirm = await inquirer_1.default.prompt([
|
|
41
|
-
{
|
|
42
|
-
type: 'confirm',
|
|
43
|
-
name: 'confirm',
|
|
44
|
-
message: `Are you sure you want to reboot managed gateway ${gatewayId}?`,
|
|
45
|
-
default: false,
|
|
46
|
-
},
|
|
47
|
-
]);
|
|
48
|
-
if (!confirm.confirm) {
|
|
49
|
-
instances_1.logger.info('Gateway reboot cancelled');
|
|
50
|
-
console.log(chalk_1.default.gray('Reboot cancelled'));
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
instances_1.logger.info('Rebooting managed gateway', { gatewayId });
|
|
55
|
-
try {
|
|
56
|
-
if (!gatewayId) {
|
|
57
|
-
console.log(chalk_1.default.red('✗ Gateway ID is required'));
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
console.log(chalk_1.default.blue(`Rebooting gateway ${gatewayId}...`));
|
|
61
|
-
// Execute reboot command (this will disconnect SSH, which is expected)
|
|
62
|
-
const result = await instances_1.diagnosticsService.executeManagedGatewayCommand(gatewayId, 'sudo reboot');
|
|
63
|
-
// Note: The command may not return successfully because the gateway reboots
|
|
64
|
-
// and disconnects the SSH session. We check if we got an error that suggests
|
|
65
|
-
// the connection was lost (which is expected during reboot)
|
|
66
|
-
if (result.success || (result.error && result.error.includes('ECONNRESET'))) {
|
|
67
|
-
console.log(chalk_1.default.green('✓ Reboot command sent successfully'));
|
|
68
|
-
console.log(chalk_1.default.yellow('⚠ Gateway is rebooting. SSH connection will be lost.'));
|
|
69
|
-
console.log(chalk_1.default.gray(' The gateway should be back online in a few minutes.'));
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
instances_1.logger.error('Failed to reboot gateway', { error: result.error });
|
|
73
|
-
console.log(chalk_1.default.red('✗ Failed to send reboot command'));
|
|
74
|
-
if (result.error) {
|
|
75
|
-
console.log(chalk_1.default.red(` Error: ${result.error}`));
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
catch (error) {
|
|
80
|
-
// If the error is a connection reset, that's expected during reboot
|
|
81
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
82
|
-
if (errorMessage.includes('ECONNRESET') || errorMessage.includes('connection')) {
|
|
83
|
-
console.log(chalk_1.default.green('✓ Reboot command sent successfully'));
|
|
84
|
-
console.log(chalk_1.default.yellow('⚠ Gateway is rebooting. SSH connection was lost (expected).'));
|
|
85
|
-
console.log(chalk_1.default.gray(' The gateway should be back online in a few minutes.'));
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
instances_1.logger.error('Error rebooting gateway', error);
|
|
89
|
-
console.log(chalk_1.default.red('✗ Error rebooting gateway'));
|
|
90
|
-
console.log(chalk_1.default.red(` ${errorMessage}`));
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
//# sourceMappingURL=reboot.js.map
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export declare function handleManagedGatewayResync(options: {
|
|
2
|
-
id?: string;
|
|
3
|
-
version?: string;
|
|
4
|
-
local?: boolean;
|
|
5
|
-
installFromLocal?: boolean;
|
|
6
|
-
reboot?: boolean;
|
|
7
|
-
wipeLogs?: boolean;
|
|
8
|
-
debug?: boolean;
|
|
9
|
-
}): Promise<void>;
|
|
10
|
-
//# sourceMappingURL=resync.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resync.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/resync.ts"],"names":[],"mappings":"AAKA,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwE9M"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.handleManagedGatewayResync = handleManagedGatewayResync;
|
|
7
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const instances_1 = require("../../services/instances");
|
|
10
|
-
const config_validator_1 = require("../utils/config-validator");
|
|
11
|
-
async function handleManagedGatewayResync(options) {
|
|
12
|
-
wrapCommand(async (options) => {
|
|
13
|
-
// Map --local to installFromLocal for backward compatibility
|
|
14
|
-
const installFromLocal = options.local || options.installFromLocal;
|
|
15
|
-
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
16
|
-
requireAuth: true,
|
|
17
|
-
});
|
|
18
|
-
let gatewayId = options.id;
|
|
19
|
-
if (!gatewayId) {
|
|
20
|
-
// List gateways first to allow selection
|
|
21
|
-
const listResponse = await instances_1.managedGatewayService.listManagedGateways();
|
|
22
|
-
if (!listResponse.success || !listResponse.gateways || listResponse.gateways.length === 0) {
|
|
23
|
-
console.log(chalk_1.default.yellow('⚠ No managed gateways found'));
|
|
24
|
-
return;
|
|
25
|
-
}
|
|
26
|
-
const choices = listResponse.gateways.map((gateway) => ({
|
|
27
|
-
name: `${gateway.name} (${gateway.id})`,
|
|
28
|
-
value: gateway.id,
|
|
29
|
-
}));
|
|
30
|
-
const answer = await inquirer_1.default.prompt([
|
|
31
|
-
{
|
|
32
|
-
type: 'list',
|
|
33
|
-
name: 'gatewayId',
|
|
34
|
-
message: 'Select managed gateway to resync:',
|
|
35
|
-
choices,
|
|
36
|
-
},
|
|
37
|
-
]);
|
|
38
|
-
gatewayId = answer.gatewayId;
|
|
39
|
-
}
|
|
40
|
-
instances_1.logger.info('Resyncing agent on managed gateway', {
|
|
41
|
-
gatewayId,
|
|
42
|
-
version: options.version,
|
|
43
|
-
installFromLocal,
|
|
44
|
-
reboot: options.reboot,
|
|
45
|
-
wipeLogs: options.wipeLogs,
|
|
46
|
-
debug: options.debug
|
|
47
|
-
});
|
|
48
|
-
const result = await instances_1.managedGatewayService.resyncManagedGatewayAgent(gatewayId, options.version, installFromLocal, options.reboot, options.wipeLogs, options.debug);
|
|
49
|
-
console.log(chalk_1.default.green('\n✓ Agent resynced successfully!'));
|
|
50
|
-
console.log(chalk_1.default.blue('\n📋 Resync Details:'));
|
|
51
|
-
console.log(chalk_1.default.white(` Gateway ID: ${gatewayId}`));
|
|
52
|
-
if (result.agentVersion) {
|
|
53
|
-
console.log(chalk_1.default.white(` Agent Version: ${result.agentVersion}`));
|
|
54
|
-
}
|
|
55
|
-
if (result.syncTimestamp) {
|
|
56
|
-
console.log(chalk_1.default.white(` Sync Time: ${new Date(result.syncTimestamp).toLocaleString()}`));
|
|
57
|
-
}
|
|
58
|
-
if (options.debug) {
|
|
59
|
-
console.log(chalk_1.default.cyan(` Log Level: Debug (enabled)`));
|
|
60
|
-
}
|
|
61
|
-
if (options.wipeLogs && result.logsWiped) {
|
|
62
|
-
console.log(chalk_1.default.yellow(` Logs: Wiped before resync`));
|
|
63
|
-
}
|
|
64
|
-
if (options.reboot && result.rebooted) {
|
|
65
|
-
console.log(chalk_1.default.yellow(` Reboot: Command sent (gateway is rebooting)`));
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=resync.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ssh.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/ssh.ts"],"names":[],"mappings":"AAKA,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuIrF"}
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.handleManagedGatewaySsh = handleManagedGatewaySsh;
|
|
7
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const instances_1 = require("../../services/instances");
|
|
10
|
-
const config_validator_1 = require("../utils/config-validator");
|
|
11
|
-
async function handleManagedGatewaySsh(options) {
|
|
12
|
-
wrapCommand(async (options) => {
|
|
13
|
-
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
14
|
-
requireAuth: true,
|
|
15
|
-
});
|
|
16
|
-
let gatewayId = options.id;
|
|
17
|
-
if (!gatewayId) {
|
|
18
|
-
// List gateways first to allow selection
|
|
19
|
-
const listResponse = await instances_1.managedGatewayService.listManagedGateways();
|
|
20
|
-
if (!listResponse.success || !listResponse.gateways || listResponse.gateways.length === 0) {
|
|
21
|
-
console.log(chalk_1.default.yellow('⚠ No managed gateways found'));
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const choices = listResponse.gateways.map((gateway) => ({
|
|
25
|
-
name: `${gateway.name} (${gateway.id})`,
|
|
26
|
-
value: gateway.id,
|
|
27
|
-
}));
|
|
28
|
-
const answer = await inquirer_1.default.prompt([
|
|
29
|
-
{
|
|
30
|
-
type: 'list',
|
|
31
|
-
name: 'gatewayId',
|
|
32
|
-
message: 'Select managed gateway:',
|
|
33
|
-
choices,
|
|
34
|
-
},
|
|
35
|
-
]);
|
|
36
|
-
gatewayId = answer.gatewayId;
|
|
37
|
-
}
|
|
38
|
-
instances_1.logger.info('Connecting to managed gateway via SSH', { gatewayId });
|
|
39
|
-
// Get managed gateway details
|
|
40
|
-
const gatewayDetails = await instances_1.managedGatewayService.getManagedGateway(gatewayId);
|
|
41
|
-
if (!gatewayDetails.success || !gatewayDetails.gateway) {
|
|
42
|
-
console.log(chalk_1.default.red('✗ Managed gateway not found'));
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
const gateway = gatewayDetails.gateway;
|
|
46
|
-
const ipAddress = gateway.ipAddress;
|
|
47
|
-
if (!ipAddress) {
|
|
48
|
-
console.log(chalk_1.default.red('✗ Gateway IP address not available'));
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
// Get SSH key from backend
|
|
52
|
-
console.log(chalk_1.default.gray('Fetching SSH key from backend...'));
|
|
53
|
-
const sshKeyResponse = await instances_1.managedGatewayService.getManagedGatewaySSHKey(gatewayId);
|
|
54
|
-
if (!sshKeyResponse.success || !sshKeyResponse.sshPrivateKey) {
|
|
55
|
-
console.log(chalk_1.default.red('✗ Failed to retrieve SSH key for managed gateway'));
|
|
56
|
-
return;
|
|
57
|
-
}
|
|
58
|
-
const sshPrivateKey = sshKeyResponse.sshPrivateKey;
|
|
59
|
-
// Create temporary SSH key file
|
|
60
|
-
const os = require('os');
|
|
61
|
-
const path = require('path');
|
|
62
|
-
const fs = require('fs');
|
|
63
|
-
const tempKeyPath = path.join(os.tmpdir(), `edgible-mgw-ssh-${gatewayId}-${Date.now()}.pem`);
|
|
64
|
-
try {
|
|
65
|
-
// Write SSH key to temp file with proper permissions
|
|
66
|
-
fs.writeFileSync(tempKeyPath, sshPrivateKey, { mode: 0o600 });
|
|
67
|
-
console.log(chalk_1.default.blue(`\nConnecting to managed gateway: ${gatewayId}`));
|
|
68
|
-
console.log(chalk_1.default.gray(`Public IP: ${ipAddress}`));
|
|
69
|
-
console.log(chalk_1.default.gray(`Region: ${gateway.organizationId || 'N/A'}`));
|
|
70
|
-
console.log(chalk_1.default.yellow('\nOpening SSH connection...\n'));
|
|
71
|
-
// Build SSH command
|
|
72
|
-
const sshCommand = `ssh -i "${tempKeyPath}" -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ec2-user@${ipAddress}`;
|
|
73
|
-
console.log(chalk_1.default.green('✓ Opening interactive SSH session...'));
|
|
74
|
-
console.log(chalk_1.default.gray('─'.repeat(80)));
|
|
75
|
-
console.log(chalk_1.default.gray('Tip: Type "exit" to disconnect from the gateway\n'));
|
|
76
|
-
// Execute SSH using child_process
|
|
77
|
-
const { spawn } = require('child_process');
|
|
78
|
-
const sshProcess = spawn('sh', ['-c', sshCommand], {
|
|
79
|
-
stdio: 'inherit',
|
|
80
|
-
shell: false,
|
|
81
|
-
});
|
|
82
|
-
sshProcess.on('error', (error) => {
|
|
83
|
-
instances_1.logger.error('SSH connection error', error);
|
|
84
|
-
console.error(chalk_1.default.red('✗ SSH connection error:'), error.message);
|
|
85
|
-
console.log(chalk_1.default.yellow('\nMake sure SSH is installed and the key file has correct permissions'));
|
|
86
|
-
throw error;
|
|
87
|
-
});
|
|
88
|
-
sshProcess.on('exit', (code) => {
|
|
89
|
-
if (code === 0) {
|
|
90
|
-
instances_1.logger.debug('SSH session ended normally');
|
|
91
|
-
console.log(chalk_1.default.gray('\nSSH session ended'));
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
instances_1.logger.warn('SSH session ended with non-zero code', { code });
|
|
95
|
-
console.log(chalk_1.default.yellow(`\nSSH session ended with code: ${code}`));
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
// Wait for process to exit
|
|
99
|
-
await new Promise((resolve, reject) => {
|
|
100
|
-
sshProcess.on('exit', (code) => {
|
|
101
|
-
if (code === 0 || code === null) {
|
|
102
|
-
resolve();
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
reject(new Error(`SSH session exited with code ${code}`));
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
sshProcess.on('error', reject);
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
catch (error) {
|
|
112
|
-
instances_1.logger.error('Error connecting to managed gateway via SSH', error);
|
|
113
|
-
console.error(chalk_1.default.red('✗ Error connecting to managed gateway:'), error instanceof Error ? error.message : String(error));
|
|
114
|
-
throw error;
|
|
115
|
-
}
|
|
116
|
-
finally {
|
|
117
|
-
// Clean up temp key file
|
|
118
|
-
try {
|
|
119
|
-
if (fs.existsSync(tempKeyPath)) {
|
|
120
|
-
fs.unlinkSync(tempKeyPath);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
catch (cleanupError) {
|
|
124
|
-
// Ignore cleanup errors
|
|
125
|
-
instances_1.logger.debug('Failed to cleanup temp SSH key file', cleanupError);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
//# sourceMappingURL=ssh.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wipe-logs.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/wipe-logs.ts"],"names":[],"mappings":"AAKA,wBAAsB,4BAA4B,CAAC,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgE1F"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.handleManagedGatewayWipeLogs = handleManagedGatewayWipeLogs;
|
|
7
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const instances_1 = require("../../services/instances");
|
|
10
|
-
const config_validator_1 = require("../utils/config-validator");
|
|
11
|
-
async function handleManagedGatewayWipeLogs(options) {
|
|
12
|
-
wrapCommand(async (options) => {
|
|
13
|
-
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
14
|
-
requireAuth: true,
|
|
15
|
-
});
|
|
16
|
-
let gatewayId = options.id;
|
|
17
|
-
if (!gatewayId) {
|
|
18
|
-
// List gateways first to allow selection
|
|
19
|
-
const listResponse = await instances_1.managedGatewayService.listManagedGateways();
|
|
20
|
-
if (!listResponse.success || !listResponse.gateways || listResponse.gateways.length === 0) {
|
|
21
|
-
console.log(chalk_1.default.yellow('⚠ No managed gateways found'));
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const choices = listResponse.gateways.map((gateway) => ({
|
|
25
|
-
name: `${gateway.name} (${gateway.id})`,
|
|
26
|
-
value: gateway.id,
|
|
27
|
-
}));
|
|
28
|
-
const answer = await inquirer_1.default.prompt([
|
|
29
|
-
{
|
|
30
|
-
type: 'list',
|
|
31
|
-
name: 'gatewayId',
|
|
32
|
-
message: 'Select managed gateway:',
|
|
33
|
-
choices,
|
|
34
|
-
},
|
|
35
|
-
]);
|
|
36
|
-
gatewayId = answer.gatewayId;
|
|
37
|
-
}
|
|
38
|
-
instances_1.logger.info('Wiping managed gateway logs', { gatewayId });
|
|
39
|
-
// Confirm action
|
|
40
|
-
const confirm = await inquirer_1.default.prompt([
|
|
41
|
-
{
|
|
42
|
-
type: 'confirm',
|
|
43
|
-
name: 'confirm',
|
|
44
|
-
message: `Are you sure you want to clear all logs on managed gateway ${gatewayId}?`,
|
|
45
|
-
default: false,
|
|
46
|
-
},
|
|
47
|
-
]);
|
|
48
|
-
if (!confirm.confirm) {
|
|
49
|
-
instances_1.logger.info('Log wipe cancelled');
|
|
50
|
-
console.log(chalk_1.default.gray('Log wipe cancelled'));
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
// Get managed gateway logs and wipe them
|
|
54
|
-
const result = await instances_1.diagnosticsService.wipeManagedGatewayLogs(gatewayId);
|
|
55
|
-
if (result.success) {
|
|
56
|
-
console.log(chalk_1.default.green('✓ Managed gateway logs cleared successfully!'));
|
|
57
|
-
console.log(chalk_1.default.gray(` Log file: ${result.logFile || 'agent.log'}`));
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
console.log(chalk_1.default.red('✗ Failed to clear logs'));
|
|
61
|
-
if (result.message) {
|
|
62
|
-
console.log(chalk_1.default.yellow(result.message));
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=wipe-logs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wireguard.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/wireguard.ts"],"names":[],"mappings":"AAKA,wBAAsB,6BAA6B,CAAC,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8D3F"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.handleManagedGatewayWireguard = handleManagedGatewayWireguard;
|
|
7
|
-
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const instances_1 = require("../../services/instances");
|
|
10
|
-
const config_validator_1 = require("../utils/config-validator");
|
|
11
|
-
async function handleManagedGatewayWireguard(options) {
|
|
12
|
-
wrapCommand(async (options) => {
|
|
13
|
-
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
14
|
-
requireAuth: true,
|
|
15
|
-
});
|
|
16
|
-
let gatewayId = options.id;
|
|
17
|
-
if (!gatewayId) {
|
|
18
|
-
// List gateways first to allow selection
|
|
19
|
-
const listResponse = await instances_1.managedGatewayService.listManagedGateways();
|
|
20
|
-
if (!listResponse.success || !listResponse.gateways || listResponse.gateways.length === 0) {
|
|
21
|
-
console.log(chalk_1.default.yellow('⚠ No managed gateways found'));
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const choices = listResponse.gateways.map((gateway) => ({
|
|
25
|
-
name: `${gateway.name} (${gateway.id})`,
|
|
26
|
-
value: gateway.id,
|
|
27
|
-
}));
|
|
28
|
-
const answer = await inquirer_1.default.prompt([
|
|
29
|
-
{
|
|
30
|
-
type: 'list',
|
|
31
|
-
name: 'gatewayId',
|
|
32
|
-
message: 'Select managed gateway:',
|
|
33
|
-
choices,
|
|
34
|
-
},
|
|
35
|
-
]);
|
|
36
|
-
gatewayId = answer.gatewayId;
|
|
37
|
-
}
|
|
38
|
-
instances_1.logger.info('Retrieving WireGuard status', { gatewayId });
|
|
39
|
-
try {
|
|
40
|
-
if (!gatewayId) {
|
|
41
|
-
console.log(chalk_1.default.red('✗ Gateway ID is required'));
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
const result = await instances_1.diagnosticsService.executeManagedGatewayCommand(gatewayId, 'sudo wg show');
|
|
45
|
-
if (result.success) {
|
|
46
|
-
if (result.output.trim()) {
|
|
47
|
-
console.log(result.output);
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
console.log(chalk_1.default.yellow('No WireGuard interfaces found'));
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
instances_1.logger.error('Failed to retrieve WireGuard status', { error: result.error });
|
|
55
|
-
console.log(chalk_1.default.red('✗ Failed to retrieve WireGuard status'));
|
|
56
|
-
if (result.error) {
|
|
57
|
-
console.log(chalk_1.default.red(` Error: ${result.error}`));
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
catch (error) {
|
|
62
|
-
instances_1.logger.error('Error retrieving WireGuard status', error);
|
|
63
|
-
console.log(chalk_1.default.red('✗ Error retrieving WireGuard status'));
|
|
64
|
-
console.log(chalk_1.default.red(` ${error instanceof Error ? error.message : String(error)}`));
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=wireguard.js.map
|