@edgible-team/cli 1.2.4 → 1.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/agent/agent-handlers.d.ts +45 -0
- package/dist/commands/agent/agent-handlers.d.ts.map +1 -0
- package/dist/commands/agent/agent-handlers.js +1159 -0
- package/dist/commands/agent/install.d.ts +11 -0
- package/dist/commands/agent/install.d.ts.map +1 -0
- package/dist/commands/agent/install.js +399 -0
- package/dist/commands/agent/logs.d.ts +12 -0
- package/dist/commands/agent/logs.d.ts.map +1 -0
- package/dist/commands/agent/logs.js +77 -0
- package/dist/commands/agent/restart.d.ts +4 -0
- package/dist/commands/agent/restart.d.ts.map +1 -0
- package/dist/commands/agent/restart.js +33 -0
- package/dist/commands/agent/set-log-level.d.ts +8 -0
- package/dist/commands/agent/set-log-level.d.ts.map +1 -0
- package/dist/commands/agent/set-log-level.js +133 -0
- package/dist/commands/agent/setup.d.ts +9 -0
- package/dist/commands/agent/setup.d.ts.map +1 -0
- package/dist/commands/agent/setup.js +149 -0
- package/dist/commands/agent/start.d.ts +12 -0
- package/dist/commands/agent/start.d.ts.map +1 -0
- package/dist/commands/agent/start.js +308 -0
- package/dist/commands/agent/status.d.ts +7 -0
- package/dist/commands/agent/status.d.ts.map +1 -0
- package/dist/commands/agent/status.js +68 -0
- package/dist/commands/agent/stop.d.ts +4 -0
- package/dist/commands/agent/stop.d.ts.map +1 -0
- package/dist/commands/agent/stop.js +33 -0
- package/dist/commands/agent/uninstall.d.ts +7 -0
- package/dist/commands/agent/uninstall.d.ts.map +1 -0
- package/dist/commands/agent/uninstall.js +168 -0
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +24 -1190
- package/dist/commands/ai/helpers.d.ts +139 -0
- package/dist/commands/ai/helpers.d.ts.map +1 -0
- package/dist/commands/ai/helpers.js +1470 -0
- package/dist/commands/ai/serve.d.ts +6 -0
- package/dist/commands/ai/serve.d.ts.map +1 -0
- package/dist/commands/ai/serve.js +124 -0
- package/dist/commands/ai/setup.d.ts +14 -0
- package/dist/commands/ai/setup.d.ts.map +1 -0
- package/dist/commands/ai/setup.js +86 -0
- package/dist/commands/ai/status.d.ts +2 -0
- package/dist/commands/ai/status.d.ts.map +1 -0
- package/dist/commands/ai/status.js +160 -0
- package/dist/commands/ai/stop.d.ts +2 -0
- package/dist/commands/ai/stop.d.ts.map +1 -0
- package/dist/commands/ai/stop.js +21 -0
- package/dist/commands/ai/teardown.d.ts +5 -0
- package/dist/commands/ai/teardown.d.ts.map +1 -0
- package/dist/commands/ai/teardown.js +78 -0
- package/dist/commands/ai/test.d.ts +4 -0
- package/dist/commands/ai/test.d.ts.map +1 -0
- package/dist/commands/ai/test.js +65 -0
- package/dist/commands/ai.d.ts.map +1 -1
- package/dist/commands/ai.js +16 -1938
- package/dist/commands/application/api-keys/create.d.ts +6 -0
- package/dist/commands/application/api-keys/create.d.ts.map +1 -0
- package/dist/commands/application/api-keys/create.js +68 -0
- package/dist/commands/application/api-keys/delete.d.ts +6 -0
- package/dist/commands/application/api-keys/delete.d.ts.map +1 -0
- package/dist/commands/application/api-keys/delete.js +79 -0
- package/dist/commands/application/api-keys/list.d.ts +5 -0
- package/dist/commands/application/api-keys/list.d.ts.map +1 -0
- package/dist/commands/application/api-keys/list.js +65 -0
- package/dist/commands/application/api-keys.d.ts +3 -0
- package/dist/commands/application/api-keys.d.ts.map +1 -0
- package/dist/commands/application/api-keys.js +227 -0
- package/dist/commands/application/create-compose.d.ts +3 -0
- package/dist/commands/application/create-compose.d.ts.map +1 -0
- package/dist/commands/application/create-compose.js +381 -0
- package/dist/commands/application/create-docker-compose.d.ts +10 -0
- package/dist/commands/application/create-docker-compose.d.ts.map +1 -0
- package/dist/commands/application/create-docker-compose.js +334 -0
- package/dist/commands/application/create-existing.d.ts +14 -0
- package/dist/commands/application/create-existing.d.ts.map +1 -0
- package/dist/commands/application/create-existing.js +359 -0
- package/dist/commands/application/create-interactive.d.ts +3 -0
- package/dist/commands/application/create-interactive.d.ts.map +1 -0
- package/dist/commands/application/create-interactive.js +326 -0
- package/dist/commands/application/create-managed-process.d.ts +15 -0
- package/dist/commands/application/create-managed-process.d.ts.map +1 -0
- package/dist/commands/application/create-managed-process.js +371 -0
- package/dist/commands/application/create-stubs.d.ts +4 -0
- package/dist/commands/application/create-stubs.d.ts.map +1 -0
- package/dist/commands/application/create-stubs.js +19 -0
- package/dist/commands/application/create-workload.d.ts +5 -0
- package/dist/commands/application/create-workload.d.ts.map +1 -0
- package/dist/commands/application/create-workload.js +48 -0
- package/dist/commands/application/delete.d.ts +6 -0
- package/dist/commands/application/delete.d.ts.map +1 -0
- package/dist/commands/application/delete.js +76 -0
- package/dist/commands/application/get.d.ts +5 -0
- package/dist/commands/application/get.d.ts.map +1 -0
- package/dist/commands/application/get.js +35 -0
- package/dist/commands/application/list.d.ts +4 -0
- package/dist/commands/application/list.d.ts.map +1 -0
- package/dist/commands/application/list.js +41 -0
- package/dist/commands/application/short-codes/create.d.ts +7 -0
- package/dist/commands/application/short-codes/create.d.ts.map +1 -0
- package/dist/commands/application/short-codes/create.js +69 -0
- package/dist/commands/application/short-codes/delete.d.ts +6 -0
- package/dist/commands/application/short-codes/delete.d.ts.map +1 -0
- package/dist/commands/application/short-codes/delete.js +79 -0
- package/dist/commands/application/short-codes/list.d.ts +5 -0
- package/dist/commands/application/short-codes/list.d.ts.map +1 -0
- package/dist/commands/application/short-codes/list.js +63 -0
- package/dist/commands/application/short-codes/toggle.d.ts +5 -0
- package/dist/commands/application/short-codes/toggle.d.ts.map +1 -0
- package/dist/commands/application/short-codes/toggle.js +71 -0
- package/dist/commands/application/short-codes.d.ts +3 -0
- package/dist/commands/application/short-codes.d.ts.map +1 -0
- package/dist/commands/application/short-codes.js +226 -0
- package/dist/commands/application/toggle.d.ts +2 -0
- package/dist/commands/application/toggle.d.ts.map +1 -0
- package/dist/commands/application/toggle.js +78 -0
- package/dist/commands/application/update.d.ts +4 -0
- package/dist/commands/application/update.d.ts.map +1 -0
- package/dist/commands/application/update.js +11 -0
- package/dist/commands/application.d.ts.map +1 -1
- package/dist/commands/application.js +32 -1630
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +31 -49
- package/dist/commands/base/BaseCommand.d.ts +3 -3
- package/dist/commands/base/BaseCommand.d.ts.map +1 -1
- package/dist/commands/base/BaseCommand.js +3 -3
- package/dist/commands/base/command-wrapper.d.ts +0 -4
- package/dist/commands/base/command-wrapper.d.ts.map +1 -1
- package/dist/commands/base/command-wrapper.js +13 -14
- package/dist/commands/base/middleware.d.ts +3 -3
- package/dist/commands/base/middleware.d.ts.map +1 -1
- package/dist/commands/base/middleware.js +4 -4
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +15 -32
- package/dist/commands/connectivity.d.ts.map +1 -1
- package/dist/commands/connectivity.js +6 -11
- package/dist/commands/debug.d.ts.map +1 -1
- package/dist/commands/debug.js +187 -46
- package/dist/commands/discover.d.ts.map +1 -1
- package/dist/commands/discover.js +4 -17
- package/dist/commands/gateway.d.ts.map +1 -1
- package/dist/commands/gateway.js +37 -77
- package/dist/commands/managedGateway/create.d.ts +6 -0
- package/dist/commands/managedGateway/create.d.ts.map +1 -0
- package/dist/commands/managedGateway/create.js +50 -0
- package/dist/commands/managedGateway/delete.d.ts +5 -0
- package/dist/commands/managedGateway/delete.d.ts.map +1 -0
- package/dist/commands/managedGateway/delete.js +57 -0
- package/dist/commands/managedGateway/get.d.ts +4 -0
- package/dist/commands/managedGateway/get.d.ts.map +1 -0
- package/dist/commands/managedGateway/get.js +71 -0
- package/dist/commands/managedGateway/haproxy-stats.d.ts +6 -0
- package/dist/commands/managedGateway/haproxy-stats.d.ts.map +1 -0
- package/dist/commands/managedGateway/haproxy-stats.js +131 -0
- package/dist/commands/managedGateway/list.d.ts +4 -0
- package/dist/commands/managedGateway/list.d.ts.map +1 -0
- package/dist/commands/managedGateway/list.js +50 -0
- package/dist/commands/managedGateway/logs.d.ts +10 -0
- package/dist/commands/managedGateway/logs.d.ts.map +1 -0
- package/dist/commands/managedGateway/logs.js +100 -0
- package/dist/commands/managedGateway/reboot.d.ts +5 -0
- package/dist/commands/managedGateway/reboot.d.ts.map +1 -0
- package/dist/commands/managedGateway/reboot.js +95 -0
- package/dist/commands/managedGateway/resync.d.ts +10 -0
- package/dist/commands/managedGateway/resync.d.ts.map +1 -0
- package/dist/commands/managedGateway/resync.js +69 -0
- package/dist/commands/managedGateway/ssh.d.ts +4 -0
- package/dist/commands/managedGateway/ssh.d.ts.map +1 -0
- package/dist/commands/managedGateway/ssh.js +130 -0
- package/dist/commands/managedGateway/wipe-logs.d.ts +4 -0
- package/dist/commands/managedGateway/wipe-logs.d.ts.map +1 -0
- package/dist/commands/managedGateway/wipe-logs.js +67 -0
- package/dist/commands/managedGateway/wireguard.d.ts +4 -0
- package/dist/commands/managedGateway/wireguard.d.ts.map +1 -0
- package/dist/commands/managedGateway/wireguard.js +68 -0
- package/dist/commands/managedGateway.d.ts.map +1 -1
- package/dist/commands/managedGateway.js +61 -117
- package/dist/commands/utils/config-validator.d.ts +5 -5
- package/dist/commands/utils/config-validator.d.ts.map +1 -1
- package/dist/commands/utils/config-validator.js +8 -8
- package/dist/commands/utils/output-formatter.js +1 -1
- package/dist/config/app-config.d.ts +1 -1
- package/dist/config/app-config.js +2 -2
- package/dist/index.js +0 -3
- package/dist/services/LocalAgentManager.d.ts.map +1 -1
- package/dist/services/LocalAgentManager.js +4 -2
- package/dist/services/agentDeployment/AgentDeploymentService.d.ts +35 -0
- package/dist/services/agentDeployment/AgentDeploymentService.d.ts.map +1 -0
- package/dist/services/agentDeployment/AgentDeploymentService.js +35 -0
- package/dist/services/application/ApplicationService.d.ts +5 -4
- package/dist/services/application/ApplicationService.d.ts.map +1 -1
- package/dist/services/application/ApplicationService.js +22 -35
- package/dist/services/auth/AuthService.d.ts +5 -5
- package/dist/services/auth/AuthService.d.ts.map +1 -1
- package/dist/services/auth/AuthService.js +11 -58
- package/dist/services/daemon/DaemonManagerFactory.d.ts +2 -0
- package/dist/services/daemon/DaemonManagerFactory.d.ts.map +1 -1
- package/dist/services/daemon/DaemonManagerFactory.js +14 -6
- package/dist/services/diagnostics/DiagnosticsService.d.ts +89 -0
- package/dist/services/diagnostics/DiagnosticsService.d.ts.map +1 -0
- package/dist/services/diagnostics/DiagnosticsService.js +37 -0
- package/dist/services/edgible.d.ts +6 -4
- package/dist/services/edgible.d.ts.map +1 -1
- package/dist/services/edgible.js +36 -86
- package/dist/services/gateway/GatewayService.d.ts +5 -6
- package/dist/services/gateway/GatewayService.d.ts.map +1 -1
- package/dist/services/gateway/GatewayService.js +22 -36
- package/dist/services/instances.d.ts +34 -0
- package/dist/services/instances.d.ts.map +1 -0
- package/dist/services/instances.js +64 -0
- package/dist/services/managedGateway/ManagedGatewayService.d.ts +75 -0
- package/dist/services/managedGateway/ManagedGatewayService.d.ts.map +1 -0
- package/dist/services/managedGateway/ManagedGatewayService.js +44 -0
- package/dist/services/token/TokenManager.d.ts +56 -0
- package/dist/services/token/TokenManager.d.ts.map +1 -0
- package/dist/services/token/TokenManager.js +85 -0
- package/dist/types/validation/schemas.d.ts +22 -22
- package/dist/utils/PlatformDetector.d.ts +2 -0
- package/dist/utils/PlatformDetector.d.ts.map +1 -1
- package/dist/utils/PlatformDetector.js +5 -34
- package/dist/validation/schemas.d.ts +6 -6
- package/package.json +1 -1
package/dist/commands/gateway.js
CHANGED
|
@@ -41,8 +41,7 @@ const inquirer_1 = __importDefault(require("inquirer"));
|
|
|
41
41
|
const chalk_1 = __importDefault(require("chalk"));
|
|
42
42
|
const child_process_1 = require("child_process");
|
|
43
43
|
const command_wrapper_1 = require("./base/command-wrapper");
|
|
44
|
-
const
|
|
45
|
-
const types_1 = require("../di/types");
|
|
44
|
+
const instances_1 = require("../services/instances");
|
|
46
45
|
const config_validator_1 = require("./utils/config-validator");
|
|
47
46
|
const output_formatter_1 = require("./utils/output-formatter");
|
|
48
47
|
const gateway_prompt_1 = require("./utils/gateway-prompt");
|
|
@@ -69,11 +68,7 @@ Examples:
|
|
|
69
68
|
.option('-t, --instance-type <type>', 'EC2 instance type', 't3.micro')
|
|
70
69
|
.alias('new')
|
|
71
70
|
.action((0, command_wrapper_1.wrapCommand)(async (options) => {
|
|
72
|
-
|
|
73
|
-
const logger = container.get(types_1.TYPES.Logger);
|
|
74
|
-
const configRepository = container.get(types_1.TYPES.ConfigRepository);
|
|
75
|
-
const gatewayService = container.get(types_1.TYPES.GatewayService);
|
|
76
|
-
(0, config_validator_1.validateConfig)(configRepository, {
|
|
71
|
+
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
77
72
|
requireAuth: true,
|
|
78
73
|
requireOrganization: true,
|
|
79
74
|
});
|
|
@@ -116,7 +111,7 @@ Examples:
|
|
|
116
111
|
const awsService = new AWSService();
|
|
117
112
|
const awsCheck = await awsService.checkAWSCLI();
|
|
118
113
|
if (!awsCheck.available) {
|
|
119
|
-
logger.error('AWS CLI is not installed or not available');
|
|
114
|
+
instances_1.logger.error('AWS CLI is not installed or not available');
|
|
120
115
|
console.log(chalk_1.default.red('✗ AWS CLI is not installed or not available'));
|
|
121
116
|
console.log(chalk_1.default.gray('Please install AWS CLI and configure credentials'));
|
|
122
117
|
return;
|
|
@@ -126,7 +121,7 @@ Examples:
|
|
|
126
121
|
value: profile,
|
|
127
122
|
}));
|
|
128
123
|
if (profileChoices.length === 0) {
|
|
129
|
-
logger.error('No AWS profiles found');
|
|
124
|
+
instances_1.logger.error('No AWS profiles found');
|
|
130
125
|
console.log(chalk_1.default.red('✗ No AWS profiles found'));
|
|
131
126
|
console.log(chalk_1.default.gray('Please run "aws configure" to set up your AWS credentials'));
|
|
132
127
|
return;
|
|
@@ -158,7 +153,7 @@ Examples:
|
|
|
158
153
|
]);
|
|
159
154
|
region = regionAnswer.region.trim();
|
|
160
155
|
}
|
|
161
|
-
logger.info('Creating gateway', { name: gatewayName, region, instanceType });
|
|
156
|
+
instances_1.logger.info('Creating gateway', { name: gatewayName, region, instanceType });
|
|
162
157
|
const createConfig = {
|
|
163
158
|
name: gatewayName,
|
|
164
159
|
};
|
|
@@ -170,7 +165,7 @@ Examples:
|
|
|
170
165
|
createConfig.region = region;
|
|
171
166
|
if (instanceType && instanceType.trim())
|
|
172
167
|
createConfig.instanceType = instanceType;
|
|
173
|
-
const result = await gatewayService.createGateway(createConfig);
|
|
168
|
+
const result = await instances_1.gatewayService.createGateway(createConfig);
|
|
174
169
|
console.log(chalk_1.default.green('\n✓ Gateway created successfully!'));
|
|
175
170
|
console.log(chalk_1.default.blue('\n📋 Gateway Details:'));
|
|
176
171
|
console.log((0, output_formatter_1.formatGateway)({
|
|
@@ -178,7 +173,6 @@ Examples:
|
|
|
178
173
|
ec2Instance: result.ec2Instance,
|
|
179
174
|
}));
|
|
180
175
|
}, {
|
|
181
|
-
configRepository: (0, container_1.getContainer)().get(types_1.TYPES.ConfigRepository),
|
|
182
176
|
requireAuth: true,
|
|
183
177
|
requireOrganization: true,
|
|
184
178
|
}));
|
|
@@ -188,16 +182,12 @@ Examples:
|
|
|
188
182
|
.option('--json', 'Output as JSON')
|
|
189
183
|
.alias('ls')
|
|
190
184
|
.action((0, command_wrapper_1.wrapCommand)(async (options) => {
|
|
191
|
-
|
|
192
|
-
const logger = container.get(types_1.TYPES.Logger);
|
|
193
|
-
const configRepository = container.get(types_1.TYPES.ConfigRepository);
|
|
194
|
-
const gatewayService = container.get(types_1.TYPES.GatewayService);
|
|
195
|
-
(0, config_validator_1.validateConfig)(configRepository, {
|
|
185
|
+
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
196
186
|
requireAuth: true,
|
|
197
187
|
requireOrganization: true,
|
|
198
188
|
});
|
|
199
|
-
logger.debug('Listing gateways');
|
|
200
|
-
const response = await gatewayService.listGateways();
|
|
189
|
+
instances_1.logger.debug('Listing gateways');
|
|
190
|
+
const response = await instances_1.gatewayService.listGateways();
|
|
201
191
|
if (response.gateways.length === 0) {
|
|
202
192
|
console.log(chalk_1.default.yellow('⚠ No gateways found'));
|
|
203
193
|
console.log(chalk_1.default.gray('Use "edgible gateway create" to create a gateway'));
|
|
@@ -221,7 +211,6 @@ Examples:
|
|
|
221
211
|
}
|
|
222
212
|
console.log((0, output_formatter_1.formatList)(response.gateways, (gateway) => (0, output_formatter_1.formatGateway)(gateway), '🌐 Gateway Devices:', 'No gateways found'));
|
|
223
213
|
}, {
|
|
224
|
-
configRepository: (0, container_1.getContainer)().get(types_1.TYPES.ConfigRepository),
|
|
225
214
|
requireAuth: true,
|
|
226
215
|
requireOrganization: true,
|
|
227
216
|
}));
|
|
@@ -248,15 +237,11 @@ Examples:
|
|
|
248
237
|
.option('-f, --force', 'Force delete even if applications exist')
|
|
249
238
|
.alias('rm')
|
|
250
239
|
.action((0, command_wrapper_1.wrapCommand)(async (options) => {
|
|
251
|
-
|
|
252
|
-
const logger = container.get(types_1.TYPES.Logger);
|
|
253
|
-
const configRepository = container.get(types_1.TYPES.ConfigRepository);
|
|
254
|
-
const gatewayService = container.get(types_1.TYPES.GatewayService);
|
|
255
|
-
(0, config_validator_1.validateConfig)(configRepository, {
|
|
240
|
+
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
256
241
|
requireAuth: true,
|
|
257
242
|
requireOrganization: true,
|
|
258
243
|
});
|
|
259
|
-
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(gatewayService, options.id, { required: true });
|
|
244
|
+
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(instances_1.gatewayService, options.id, { required: true });
|
|
260
245
|
if (!gatewayId) {
|
|
261
246
|
throw new Error('Gateway ID is required');
|
|
262
247
|
}
|
|
@@ -270,15 +255,14 @@ Examples:
|
|
|
270
255
|
},
|
|
271
256
|
]);
|
|
272
257
|
if (!confirm.confirm) {
|
|
273
|
-
logger.info('Gateway deletion cancelled');
|
|
258
|
+
instances_1.logger.info('Gateway deletion cancelled');
|
|
274
259
|
console.log(chalk_1.default.gray('Deletion cancelled'));
|
|
275
260
|
return;
|
|
276
261
|
}
|
|
277
|
-
logger.info('Deleting gateway', { gatewayId, force: options.force || false });
|
|
278
|
-
await gatewayService.deleteGateway(gatewayId, options.force || false);
|
|
262
|
+
instances_1.logger.info('Deleting gateway', { gatewayId, force: options.force || false });
|
|
263
|
+
await instances_1.gatewayService.deleteGateway(gatewayId, options.force || false);
|
|
279
264
|
console.log(chalk_1.default.green('✓ Gateway deleted successfully!'));
|
|
280
265
|
}, {
|
|
281
|
-
configRepository: (0, container_1.getContainer)().get(types_1.TYPES.ConfigRepository),
|
|
282
266
|
requireAuth: true,
|
|
283
267
|
requireOrganization: true,
|
|
284
268
|
}));
|
|
@@ -292,29 +276,23 @@ Examples:
|
|
|
292
276
|
.action((0, command_wrapper_1.wrapCommand)(async (options) => {
|
|
293
277
|
// Map --local to installFromLocal for backward compatibility
|
|
294
278
|
const installFromLocal = options.local || options.installFromLocal;
|
|
295
|
-
|
|
296
|
-
const logger = container.get(types_1.TYPES.Logger);
|
|
297
|
-
const configRepository = container.get(types_1.TYPES.ConfigRepository);
|
|
298
|
-
const gatewayService = container.get(types_1.TYPES.GatewayService);
|
|
299
|
-
const edgibleService = container.get(types_1.TYPES.EdgibleService);
|
|
300
|
-
(0, config_validator_1.validateConfig)(configRepository, {
|
|
279
|
+
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
301
280
|
requireAuth: true,
|
|
302
281
|
requireOrganization: true,
|
|
303
282
|
});
|
|
304
|
-
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(gatewayService, options.id, { required: true });
|
|
283
|
+
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(instances_1.gatewayService, options.id, { required: true });
|
|
305
284
|
if (!gatewayId) {
|
|
306
285
|
throw new Error('Gateway ID is required');
|
|
307
286
|
}
|
|
308
|
-
logger.info('Resyncing agent on gateway', { gatewayId, version: options.version, installFromLocal });
|
|
287
|
+
instances_1.logger.info('Resyncing agent on gateway', { gatewayId, version: options.version, installFromLocal });
|
|
309
288
|
// TODO: Extract resyncGatewayAgent to GatewaySshService
|
|
310
|
-
const result = await edgibleService.resyncGatewayAgent(gatewayId, options.version, installFromLocal);
|
|
289
|
+
const result = await instances_1.edgibleService.resyncGatewayAgent(gatewayId, options.version, installFromLocal);
|
|
311
290
|
console.log(chalk_1.default.green('\n✓ Agent resynced successfully!'));
|
|
312
291
|
console.log(chalk_1.default.blue('\n📋 Resync Details:'));
|
|
313
292
|
console.log(chalk_1.default.white(` Gateway ID: ${gatewayId}`));
|
|
314
293
|
console.log(chalk_1.default.white(` Agent Version: ${result.agentVersion}`));
|
|
315
294
|
console.log(chalk_1.default.white(` Sync Time: ${new Date(result.syncTimestamp).toLocaleString()}`));
|
|
316
295
|
}, {
|
|
317
|
-
configRepository: (0, container_1.getContainer)().get(types_1.TYPES.ConfigRepository),
|
|
318
296
|
requireAuth: true,
|
|
319
297
|
requireOrganization: true,
|
|
320
298
|
}));
|
|
@@ -327,16 +305,11 @@ Examples:
|
|
|
327
305
|
.option('-l, --level <level>', 'Log level filter', 'all')
|
|
328
306
|
.option('-c, --comprehensive', 'Show comprehensive diagnostics (status, system info, WireGuard, Caddy, etc.)')
|
|
329
307
|
.action((0, command_wrapper_1.wrapCommand)(async (options) => {
|
|
330
|
-
|
|
331
|
-
const logger = container.get(types_1.TYPES.Logger);
|
|
332
|
-
const configRepository = container.get(types_1.TYPES.ConfigRepository);
|
|
333
|
-
const gatewayService = container.get(types_1.TYPES.GatewayService);
|
|
334
|
-
const edgibleService = container.get(types_1.TYPES.EdgibleService);
|
|
335
|
-
(0, config_validator_1.validateConfig)(configRepository, {
|
|
308
|
+
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
336
309
|
requireAuth: true,
|
|
337
310
|
requireOrganization: true,
|
|
338
311
|
});
|
|
339
|
-
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(gatewayService, options.id, { required: true });
|
|
312
|
+
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(instances_1.gatewayService, options.id, { required: true });
|
|
340
313
|
if (!gatewayId) {
|
|
341
314
|
throw new Error('Gateway ID is required');
|
|
342
315
|
}
|
|
@@ -344,7 +317,7 @@ Examples:
|
|
|
344
317
|
const follow = options.follow || false;
|
|
345
318
|
const level = options.level || 'all';
|
|
346
319
|
const comprehensive = options.comprehensive || false;
|
|
347
|
-
logger.info('Retrieving gateway logs', {
|
|
320
|
+
instances_1.logger.info('Retrieving gateway logs', {
|
|
348
321
|
gatewayId,
|
|
349
322
|
lines: follow ? undefined : lines,
|
|
350
323
|
follow,
|
|
@@ -352,7 +325,7 @@ Examples:
|
|
|
352
325
|
comprehensive,
|
|
353
326
|
});
|
|
354
327
|
// TODO: Extract getGatewayLogs to GatewayDiagnosticsService
|
|
355
|
-
const result = await edgibleService.getGatewayLogs(gatewayId, {
|
|
328
|
+
const result = await instances_1.edgibleService.getGatewayLogs(gatewayId, {
|
|
356
329
|
lines: follow ? undefined : lines,
|
|
357
330
|
follow: follow,
|
|
358
331
|
level: level,
|
|
@@ -362,11 +335,10 @@ Examples:
|
|
|
362
335
|
console.log(result.logs);
|
|
363
336
|
}
|
|
364
337
|
else {
|
|
365
|
-
logger.error('Failed to retrieve logs');
|
|
338
|
+
instances_1.logger.error('Failed to retrieve logs');
|
|
366
339
|
console.log(chalk_1.default.red('✗ Failed to retrieve logs'));
|
|
367
340
|
}
|
|
368
341
|
}, {
|
|
369
|
-
configRepository: (0, container_1.getContainer)().get(types_1.TYPES.ConfigRepository),
|
|
370
342
|
requireAuth: true,
|
|
371
343
|
requireOrganization: true,
|
|
372
344
|
}));
|
|
@@ -375,36 +347,31 @@ Examples:
|
|
|
375
347
|
.description('Connect to a gateway via SSH (interactive shell)')
|
|
376
348
|
.option('-i, --id <id>', 'Gateway ID to connect to')
|
|
377
349
|
.action((0, command_wrapper_1.wrapCommand)(async (options) => {
|
|
378
|
-
|
|
379
|
-
const logger = container.get(types_1.TYPES.Logger);
|
|
380
|
-
const configRepository = container.get(types_1.TYPES.ConfigRepository);
|
|
381
|
-
const gatewayRepository = container.get(types_1.TYPES.GatewayRepository);
|
|
382
|
-
const gatewayService = container.get(types_1.TYPES.GatewayService);
|
|
383
|
-
(0, config_validator_1.validateConfig)(configRepository, {
|
|
350
|
+
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
384
351
|
requireAuth: true,
|
|
385
352
|
requireOrganization: true,
|
|
386
353
|
});
|
|
387
|
-
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(gatewayService, options.id, { required: true });
|
|
354
|
+
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(instances_1.gatewayService, options.id, { required: true });
|
|
388
355
|
if (!gatewayId) {
|
|
389
356
|
throw new Error('Gateway ID is required');
|
|
390
357
|
}
|
|
391
|
-
const gatewayInfo =
|
|
358
|
+
const gatewayInfo = instances_1.configManager.getGateway(gatewayId);
|
|
392
359
|
if (!gatewayInfo) {
|
|
393
360
|
throw new Error('Gateway not found in local configuration');
|
|
394
361
|
}
|
|
395
|
-
logger.info('Connecting to gateway via SSH', { gatewayId, publicIp: gatewayInfo.publicIp });
|
|
362
|
+
instances_1.logger.info('Connecting to gateway via SSH', { gatewayId, publicIp: gatewayInfo.publicIp });
|
|
396
363
|
console.log(chalk_1.default.blue(`\nConnecting to gateway: ${gatewayId}`));
|
|
397
364
|
console.log(chalk_1.default.gray(`Public IP: ${gatewayInfo.publicIp}`));
|
|
398
365
|
console.log(chalk_1.default.gray(`Region: ${gatewayInfo.region}`));
|
|
399
366
|
console.log(chalk_1.default.yellow('\nOpening SSH connection...\n'));
|
|
400
367
|
// Get SSH key path
|
|
401
368
|
const { AWSService } = await Promise.resolve().then(() => __importStar(require('../services/aws')));
|
|
402
|
-
const awsService = new AWSService(
|
|
369
|
+
const awsService = new AWSService(instances_1.configManager.getAWSProfile(), gatewayInfo.region);
|
|
403
370
|
// Wait for instance to be ready
|
|
404
371
|
console.log(chalk_1.default.gray('Waiting for instance to be ready...'));
|
|
405
372
|
const isReady = await awsService.waitForSSHReady(gatewayInfo.ec2InstanceId);
|
|
406
373
|
if (!isReady) {
|
|
407
|
-
logger.error('Instance is not ready for SSH connections', { instanceId: gatewayInfo.ec2InstanceId });
|
|
374
|
+
instances_1.logger.error('Instance is not ready for SSH connections', { instanceId: gatewayInfo.ec2InstanceId });
|
|
408
375
|
console.log(chalk_1.default.red('✗ Instance is not ready for SSH connections'));
|
|
409
376
|
return;
|
|
410
377
|
}
|
|
@@ -420,23 +387,22 @@ Examples:
|
|
|
420
387
|
shell: false,
|
|
421
388
|
});
|
|
422
389
|
sshProcess.on('error', (error) => {
|
|
423
|
-
logger.error('SSH connection error', error);
|
|
390
|
+
instances_1.logger.error('SSH connection error', error);
|
|
424
391
|
console.error(chalk_1.default.red('✗ SSH connection error:'), error.message);
|
|
425
392
|
console.log(chalk_1.default.yellow('\nMake sure SSH is installed and the key file has correct permissions (chmod 600)'));
|
|
426
393
|
throw error;
|
|
427
394
|
});
|
|
428
395
|
sshProcess.on('exit', (code) => {
|
|
429
396
|
if (code === 0) {
|
|
430
|
-
logger.debug('SSH session ended normally');
|
|
397
|
+
instances_1.logger.debug('SSH session ended normally');
|
|
431
398
|
console.log(chalk_1.default.gray('\nSSH session ended'));
|
|
432
399
|
}
|
|
433
400
|
else {
|
|
434
|
-
logger.warn('SSH session ended with non-zero code', { code });
|
|
401
|
+
instances_1.logger.warn('SSH session ended with non-zero code', { code });
|
|
435
402
|
console.log(chalk_1.default.yellow(`\nSSH session ended with code: ${code}`));
|
|
436
403
|
}
|
|
437
404
|
});
|
|
438
405
|
}, {
|
|
439
|
-
configRepository: (0, container_1.getContainer)().get(types_1.TYPES.ConfigRepository),
|
|
440
406
|
requireAuth: true,
|
|
441
407
|
requireOrganization: true,
|
|
442
408
|
}));
|
|
@@ -445,20 +411,15 @@ Examples:
|
|
|
445
411
|
.description('Clear agent log file on a gateway')
|
|
446
412
|
.option('-i, --id <id>', 'Gateway ID to wipe logs for')
|
|
447
413
|
.action((0, command_wrapper_1.wrapCommand)(async (options) => {
|
|
448
|
-
|
|
449
|
-
const logger = container.get(types_1.TYPES.Logger);
|
|
450
|
-
const configRepository = container.get(types_1.TYPES.ConfigRepository);
|
|
451
|
-
const gatewayService = container.get(types_1.TYPES.GatewayService);
|
|
452
|
-
const edgibleService = container.get(types_1.TYPES.EdgibleService);
|
|
453
|
-
(0, config_validator_1.validateConfig)(configRepository, {
|
|
414
|
+
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
454
415
|
requireAuth: true,
|
|
455
416
|
requireOrganization: true,
|
|
456
417
|
});
|
|
457
|
-
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(gatewayService, options.id, { required: true });
|
|
418
|
+
const gatewayId = await (0, gateway_prompt_1.getGatewayId)(instances_1.gatewayService, options.id, { required: true });
|
|
458
419
|
if (!gatewayId) {
|
|
459
420
|
throw new Error('Gateway ID is required');
|
|
460
421
|
}
|
|
461
|
-
logger.info('Wiping gateway logs', { gatewayId });
|
|
422
|
+
instances_1.logger.info('Wiping gateway logs', { gatewayId });
|
|
462
423
|
// Confirm action
|
|
463
424
|
const confirm = await inquirer_1.default.prompt([
|
|
464
425
|
{
|
|
@@ -469,12 +430,12 @@ Examples:
|
|
|
469
430
|
},
|
|
470
431
|
]);
|
|
471
432
|
if (!confirm.confirm) {
|
|
472
|
-
logger.info('Log wipe cancelled');
|
|
433
|
+
instances_1.logger.info('Log wipe cancelled');
|
|
473
434
|
console.log(chalk_1.default.gray('Log wipe cancelled'));
|
|
474
435
|
return;
|
|
475
436
|
}
|
|
476
437
|
// Get gateway logs and wipe them
|
|
477
|
-
const result = await edgibleService.wipeGatewayLogs(gatewayId);
|
|
438
|
+
const result = await instances_1.edgibleService.wipeGatewayLogs(gatewayId);
|
|
478
439
|
if (result.success) {
|
|
479
440
|
console.log(chalk_1.default.green('✓ Gateway logs cleared successfully!'));
|
|
480
441
|
console.log(chalk_1.default.gray(` Log file: ${result.logFile || 'agent.log'}`));
|
|
@@ -486,7 +447,6 @@ Examples:
|
|
|
486
447
|
}
|
|
487
448
|
}
|
|
488
449
|
}, {
|
|
489
|
-
configRepository: (0, container_1.getContainer)().get(types_1.TYPES.ConfigRepository),
|
|
490
450
|
requireAuth: true,
|
|
491
451
|
requireOrganization: true,
|
|
492
452
|
}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/create.ts"],"names":[],"mappings":"AAKA,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgDlI"}
|
|
@@ -0,0 +1,50 @@
|
|
|
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.handleManagedGatewayCreate = handleManagedGatewayCreate;
|
|
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 handleManagedGatewayCreate(options) {
|
|
12
|
+
wrapCommand(async (options) => {
|
|
13
|
+
(0, config_validator_1.validateConfig)(instances_1.configManager, {
|
|
14
|
+
requireAuth: true,
|
|
15
|
+
});
|
|
16
|
+
let gatewayName = options.name;
|
|
17
|
+
const region = options.region || 'ap-southeast-2';
|
|
18
|
+
const instanceType = options.instanceType || 't3.micro';
|
|
19
|
+
if (!gatewayName) {
|
|
20
|
+
const nameAnswer = await inquirer_1.default.prompt([
|
|
21
|
+
{
|
|
22
|
+
type: 'input',
|
|
23
|
+
name: 'name',
|
|
24
|
+
message: 'Enter gateway name:',
|
|
25
|
+
validate: (input) => {
|
|
26
|
+
if (!input.trim()) {
|
|
27
|
+
return 'Gateway name is required';
|
|
28
|
+
}
|
|
29
|
+
return true;
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
]);
|
|
33
|
+
gatewayName = nameAnswer.name.trim();
|
|
34
|
+
}
|
|
35
|
+
instances_1.logger.info('Creating managed gateway', { name: gatewayName, region, instanceType });
|
|
36
|
+
const result = await instances_1.managedGatewayService.createManagedGateway({
|
|
37
|
+
name: gatewayName,
|
|
38
|
+
region,
|
|
39
|
+
instanceType
|
|
40
|
+
});
|
|
41
|
+
console.log(chalk_1.default.green('\n✓ Managed gateway created successfully!'));
|
|
42
|
+
console.log(chalk_1.default.blue('\n📋 Gateway Details:'));
|
|
43
|
+
console.log(chalk_1.default.white(` ID: ${result.gateway.id}`));
|
|
44
|
+
console.log(chalk_1.default.white(` Name: ${result.gateway.name}`));
|
|
45
|
+
console.log(chalk_1.default.white(` IP Address: ${result.gateway.ipAddress || 'N/A'}`));
|
|
46
|
+
console.log(chalk_1.default.white(` Status: ${result.gateway.status || 'N/A'}`));
|
|
47
|
+
console.log(chalk_1.default.white(` Created: ${new Date(result.gateway.createdAt).toLocaleString()}`));
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/delete.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,CAuDzG"}
|
|
@@ -0,0 +1,57 @@
|
|
|
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.handleManagedGatewayDelete = handleManagedGatewayDelete;
|
|
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 handleManagedGatewayDelete(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 delete:',
|
|
33
|
+
choices,
|
|
34
|
+
},
|
|
35
|
+
]);
|
|
36
|
+
gatewayId = answer.gatewayId;
|
|
37
|
+
}
|
|
38
|
+
// Confirm deletion
|
|
39
|
+
const confirm = await inquirer_1.default.prompt([
|
|
40
|
+
{
|
|
41
|
+
type: 'confirm',
|
|
42
|
+
name: 'confirm',
|
|
43
|
+
message: `Are you sure you want to delete managed gateway ${gatewayId}?`,
|
|
44
|
+
default: false,
|
|
45
|
+
},
|
|
46
|
+
]);
|
|
47
|
+
if (!confirm.confirm) {
|
|
48
|
+
instances_1.logger.info('Managed gateway deletion cancelled');
|
|
49
|
+
console.log(chalk_1.default.gray('Deletion cancelled'));
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
instances_1.logger.info('Deleting managed gateway', { gatewayId, force: options.force || false });
|
|
53
|
+
await instances_1.managedGatewayService.deleteManagedGateway(gatewayId, options.force || false);
|
|
54
|
+
console.log(chalk_1.default.green('✓ Managed gateway deleted successfully!'));
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/get.ts"],"names":[],"mappings":"AAKA,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuErF"}
|
|
@@ -0,0 +1,71 @@
|
|
|
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.handleManagedGatewayGet = handleManagedGatewayGet;
|
|
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 handleManagedGatewayGet(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('Getting managed gateway details', { gatewayId });
|
|
39
|
+
const response = await instances_1.managedGatewayService.getManagedGateway(gatewayId);
|
|
40
|
+
if (!response.success || !response.gateway) {
|
|
41
|
+
console.log(chalk_1.default.red('✗ Managed gateway not found'));
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
const gateway = response.gateway;
|
|
45
|
+
console.log(chalk_1.default.blue('\n📋 Managed Gateway Details:'));
|
|
46
|
+
console.log(chalk_1.default.white(` ID: ${gateway.id}`));
|
|
47
|
+
console.log(chalk_1.default.white(` Name: ${gateway.name}`));
|
|
48
|
+
if (gateway.description) {
|
|
49
|
+
console.log(chalk_1.default.gray(` Description: ${gateway.description}`));
|
|
50
|
+
}
|
|
51
|
+
console.log(chalk_1.default.white(` IP Address: ${gateway.ipAddress || 'N/A'}`));
|
|
52
|
+
console.log(chalk_1.default.white(` Status: ${gateway.status || 'N/A'}`));
|
|
53
|
+
console.log(chalk_1.default.white(` Last Seen: ${gateway.lastSeen ? new Date(gateway.lastSeen).toLocaleString() : 'N/A'}`));
|
|
54
|
+
console.log(chalk_1.default.white(` Created: ${new Date(gateway.createdAt).toLocaleString()}`));
|
|
55
|
+
console.log(chalk_1.default.white(` Organization ID: ${gateway.organizationId}`));
|
|
56
|
+
if (gateway.capacity) {
|
|
57
|
+
console.log(chalk_1.default.blue('\n📊 Capacity:'));
|
|
58
|
+
console.log(chalk_1.default.white(` Current Applications: ${gateway.capacity.currentApps}`));
|
|
59
|
+
console.log(chalk_1.default.white(` Max Applications: ${gateway.capacity.maxApps}`));
|
|
60
|
+
const usagePercent = (gateway.capacity.currentApps / gateway.capacity.maxApps) * 100;
|
|
61
|
+
console.log(chalk_1.default.white(` Usage: ${usagePercent.toFixed(1)}%`));
|
|
62
|
+
}
|
|
63
|
+
if (gateway.health) {
|
|
64
|
+
console.log(chalk_1.default.blue('\n🏥 Health:'));
|
|
65
|
+
console.log(chalk_1.default.white(` Healthy: ${gateway.health.healthy ? chalk_1.default.green('Yes') : chalk_1.default.red('No')}`));
|
|
66
|
+
console.log(chalk_1.default.white(` Last Seen: ${gateway.health.lastSeen ? new Date(gateway.health.lastSeen).toLocaleString() : 'N/A'}`));
|
|
67
|
+
console.log(chalk_1.default.white(` Application Count: ${gateway.health.applicationCount}`));
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=get.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"haproxy-stats.d.ts","sourceRoot":"","sources":["../../../src/commands/managedGateway/haproxy-stats.ts"],"names":[],"mappings":"AAKA,wBAAsB,gCAAgC,CAAC,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiG9H"}
|