@edgible-team/cli 1.2.6 → 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 +10 -10
- package/dist/commands/agent/agent-handlers.d.ts.map +1 -1
- package/dist/commands/agent/agent-handlers.js +29 -29
- 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 +21 -63
- 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 -1940
- 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/index.js +0 -3
- 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 -59
- 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/validation/schemas.d.ts +6 -6
- package/package.json +1 -1
|
@@ -35,7 +35,7 @@ function formatApplication(app) {
|
|
|
35
35
|
if (app.description) {
|
|
36
36
|
output += chalk_1.default.gray(` Description: ${app.description}\n`);
|
|
37
37
|
}
|
|
38
|
-
output += chalk_1.default.cyan(` URL: ${app.protocol}://${app.servingIp}
|
|
38
|
+
output += chalk_1.default.cyan(` URL: ${app.protocol}://${app.servingIp}\n`);
|
|
39
39
|
return output;
|
|
40
40
|
}
|
|
41
41
|
/**
|
package/dist/index.js
CHANGED
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
5
|
const errors_1 = require("./utils/errors");
|
|
6
6
|
const output_1 = require("./utils/output");
|
|
7
|
-
const bindings_1 = require("./di/bindings");
|
|
8
7
|
const application_1 = require("./commands/application");
|
|
9
8
|
const gateway_1 = require("./commands/gateway");
|
|
10
9
|
const auth_1 = require("./commands/auth");
|
|
@@ -15,8 +14,6 @@ const ai_1 = require("./commands/ai");
|
|
|
15
14
|
const agent_1 = require("./commands/agent");
|
|
16
15
|
const debug_1 = require("./commands/debug");
|
|
17
16
|
const managedGateway_1 = require("./commands/managedGateway");
|
|
18
|
-
// Initialize dependency injection container
|
|
19
|
-
(0, bindings_1.initializeContainer)();
|
|
20
17
|
const program = new commander_1.Command();
|
|
21
18
|
// Set up the CLI
|
|
22
19
|
program
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Deployment Service
|
|
3
|
+
*
|
|
4
|
+
* Handles agent configuration generation and deployment logic.
|
|
5
|
+
* This is a focused service extracted from the EdgibleService god object.
|
|
6
|
+
*/
|
|
7
|
+
import { EdgibleService } from '../edgible';
|
|
8
|
+
export interface AgentDeploymentService {
|
|
9
|
+
/**
|
|
10
|
+
* Generate agent user data for cloud-init
|
|
11
|
+
*/
|
|
12
|
+
generateAgentUserData(deviceId: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* Generate agent configuration code
|
|
15
|
+
*/
|
|
16
|
+
generateAgentCode(deviceId: string): string;
|
|
17
|
+
/**
|
|
18
|
+
* Resync agent on a gateway
|
|
19
|
+
*/
|
|
20
|
+
resyncGatewayAgent(gatewayId: string, agentVersion?: string, installFromLocal?: boolean): Promise<any>;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Implementation of AgentDeploymentService
|
|
24
|
+
*
|
|
25
|
+
* Currently delegates to EdgibleService for backward compatibility.
|
|
26
|
+
* In Phase 3, we'll extract the actual implementation.
|
|
27
|
+
*/
|
|
28
|
+
export declare class AgentDeploymentServiceImpl implements AgentDeploymentService {
|
|
29
|
+
private edgibleService;
|
|
30
|
+
constructor(edgibleService: EdgibleService);
|
|
31
|
+
generateAgentUserData(deviceId: string): string;
|
|
32
|
+
generateAgentCode(deviceId: string): string;
|
|
33
|
+
resyncGatewayAgent(gatewayId: string, agentVersion?: string, installFromLocal?: boolean): Promise<any>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=AgentDeploymentService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentDeploymentService.d.ts","sourceRoot":"","sources":["../../../src/services/agentDeployment/AgentDeploymentService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAEhD;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5C;;OAEG;IACH,kBAAkB,CAChB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,MAAM,EACrB,gBAAgB,CAAC,EAAE,OAAO,GACzB,OAAO,CAAC,GAAG,CAAC,CAAC;CACjB;AAED;;;;;GAKG;AACH,qBAAa,0BAA2B,YAAW,sBAAsB;IAC3D,OAAO,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAElD,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAM/C,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAMrC,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,MAAM,EACrB,gBAAgB,CAAC,EAAE,OAAO,GACzB,OAAO,CAAC,GAAG,CAAC;CAGhB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Agent Deployment Service
|
|
4
|
+
*
|
|
5
|
+
* Handles agent configuration generation and deployment logic.
|
|
6
|
+
* This is a focused service extracted from the EdgibleService god object.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.AgentDeploymentServiceImpl = void 0;
|
|
10
|
+
/**
|
|
11
|
+
* Implementation of AgentDeploymentService
|
|
12
|
+
*
|
|
13
|
+
* Currently delegates to EdgibleService for backward compatibility.
|
|
14
|
+
* In Phase 3, we'll extract the actual implementation.
|
|
15
|
+
*/
|
|
16
|
+
class AgentDeploymentServiceImpl {
|
|
17
|
+
constructor(edgibleService) {
|
|
18
|
+
this.edgibleService = edgibleService;
|
|
19
|
+
}
|
|
20
|
+
generateAgentUserData(deviceId) {
|
|
21
|
+
// Access the private method via type assertion (temporary hack)
|
|
22
|
+
// In Phase 3, we'll properly extract this
|
|
23
|
+
return this.edgibleService.generateAgentUserData(deviceId);
|
|
24
|
+
}
|
|
25
|
+
generateAgentCode(deviceId) {
|
|
26
|
+
// Access the private method via type assertion (temporary hack)
|
|
27
|
+
// In Phase 3, we'll properly extract this
|
|
28
|
+
return this.edgibleService.generateAgentCode(deviceId);
|
|
29
|
+
}
|
|
30
|
+
async resyncGatewayAgent(gatewayId, agentVersion, installFromLocal) {
|
|
31
|
+
return this.edgibleService.resyncGatewayAgent(gatewayId, agentVersion, installFromLocal);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.AgentDeploymentServiceImpl = AgentDeploymentServiceImpl;
|
|
35
|
+
//# sourceMappingURL=AgentDeploymentService.js.map
|
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
* Handles application management operations
|
|
4
4
|
*/
|
|
5
5
|
import { Application, Workload } from '../../detection/WorkloadDetector';
|
|
6
|
-
import {
|
|
6
|
+
import { ConfigManager } from '../../state/config';
|
|
7
7
|
import { AuthService } from '../auth/AuthService';
|
|
8
|
+
import { TokenManager } from '../token/TokenManager';
|
|
8
9
|
import { Logger } from '../../utils/logger';
|
|
9
10
|
export interface ApplicationService {
|
|
10
11
|
setupApplication(workload: Workload, port: number, protocol: 'http' | 'https' | 'tcp' | 'udp', description?: string, gatewayId?: string): Promise<Application>;
|
|
@@ -36,13 +37,13 @@ export interface ApplicationService {
|
|
|
36
37
|
}
|
|
37
38
|
export declare class ApplicationServiceImpl implements ApplicationService {
|
|
38
39
|
private apiClient;
|
|
39
|
-
private
|
|
40
|
+
private configManager;
|
|
40
41
|
private authService;
|
|
42
|
+
private tokenManager;
|
|
41
43
|
private logger;
|
|
42
44
|
private baseUrl;
|
|
43
45
|
private applications;
|
|
44
|
-
constructor(baseUrl: string,
|
|
45
|
-
private restoreTokensFromApiClient;
|
|
46
|
+
constructor(baseUrl: string, configManager: ConfigManager, authService: AuthService, tokenManager: TokenManager, logger: Logger);
|
|
46
47
|
private generateServingIp;
|
|
47
48
|
setupApplication(workload: Workload, port: number, protocol?: 'http' | 'https' | 'tcp' | 'udp', description?: string, gatewayId?: string): Promise<Application>;
|
|
48
49
|
getApplications(): Promise<Application[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApplicationService.d.ts","sourceRoot":"","sources":["../../../src/services/application/ApplicationService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ApplicationService.d.ts","sourceRoot":"","sources":["../../../src/services/application/ApplicationService.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,28 +7,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
exports.ApplicationServiceImpl = void 0;
|
|
8
8
|
const client_1 = require("../../client");
|
|
9
9
|
class ApplicationServiceImpl {
|
|
10
|
-
constructor(baseUrl,
|
|
10
|
+
constructor(baseUrl, configManager, authService, tokenManager, logger) {
|
|
11
11
|
this.applications = [];
|
|
12
12
|
this.baseUrl = baseUrl;
|
|
13
|
-
this.
|
|
13
|
+
this.configManager = configManager;
|
|
14
14
|
this.authService = authService;
|
|
15
|
+
this.tokenManager = tokenManager;
|
|
15
16
|
this.logger = logger;
|
|
16
17
|
this.apiClient = (0, client_1.createApiClient)(baseUrl);
|
|
17
|
-
this.
|
|
18
|
-
}
|
|
19
|
-
restoreTokensFromApiClient() {
|
|
20
|
-
const accessToken = this.authService.getAccessToken();
|
|
21
|
-
const idToken = this.authService.getIdToken();
|
|
22
|
-
const refreshToken = this.authService.getRefreshToken();
|
|
23
|
-
if (accessToken) {
|
|
24
|
-
this.apiClient.setAccessToken(accessToken);
|
|
25
|
-
}
|
|
26
|
-
if (idToken) {
|
|
27
|
-
this.apiClient.setIdToken(idToken);
|
|
28
|
-
}
|
|
29
|
-
if (refreshToken) {
|
|
30
|
-
this.apiClient.setRefreshToken(refreshToken);
|
|
31
|
-
}
|
|
18
|
+
this.tokenManager.restoreTokensFromConfig(this.apiClient);
|
|
32
19
|
}
|
|
33
20
|
generateServingIp() {
|
|
34
21
|
// Generate a mock IP in the 10.x.x.x range
|
|
@@ -41,11 +28,11 @@ class ApplicationServiceImpl {
|
|
|
41
28
|
async setupApplication(workload, port, protocol = 'http', description, gatewayId) {
|
|
42
29
|
try {
|
|
43
30
|
// Attempt auto re-login if tokens are missing but credentials are available
|
|
44
|
-
await this.authService.
|
|
45
|
-
this.
|
|
31
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
32
|
+
this.tokenManager.restoreTokensFromConfig(this.apiClient);
|
|
46
33
|
this.logger.info(`Setting up application for workload: ${workload.name}`);
|
|
47
34
|
// Get organization ID from config
|
|
48
|
-
const config = this.
|
|
35
|
+
const config = this.configManager.getConfig();
|
|
49
36
|
if (!config.organizationId) {
|
|
50
37
|
throw new Error('No organization ID found. Please login first.');
|
|
51
38
|
}
|
|
@@ -97,10 +84,10 @@ class ApplicationServiceImpl {
|
|
|
97
84
|
async getApplications() {
|
|
98
85
|
try {
|
|
99
86
|
// Attempt auto re-login if tokens are missing but credentials are available
|
|
100
|
-
await this.authService.
|
|
101
|
-
this.
|
|
87
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
88
|
+
this.tokenManager.restoreTokensFromConfig(this.apiClient);
|
|
102
89
|
this.logger.debug('Getting applications');
|
|
103
|
-
const config = this.
|
|
90
|
+
const config = this.configManager.getConfig();
|
|
104
91
|
let organizationId;
|
|
105
92
|
// Check if we have an organization ID in the config (device login)
|
|
106
93
|
if (config.organizationId) {
|
|
@@ -251,8 +238,8 @@ class ApplicationServiceImpl {
|
|
|
251
238
|
async deleteApplication(id) {
|
|
252
239
|
try {
|
|
253
240
|
// Attempt auto re-login if tokens are missing but credentials are available
|
|
254
|
-
await this.authService.
|
|
255
|
-
this.
|
|
241
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
242
|
+
this.tokenManager.restoreTokensFromConfig(this.apiClient);
|
|
256
243
|
this.logger.info(`Deleting application: ${id}`);
|
|
257
244
|
await this.apiClient.deleteApplication(id);
|
|
258
245
|
this.logger.info('Application deleted successfully', { applicationId: id });
|
|
@@ -266,9 +253,9 @@ class ApplicationServiceImpl {
|
|
|
266
253
|
async createApplicationProgrammatically(params) {
|
|
267
254
|
try {
|
|
268
255
|
// Attempt auto re-login if tokens are missing but credentials are available
|
|
269
|
-
await this.authService.
|
|
270
|
-
this.
|
|
271
|
-
const config = this.
|
|
256
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
257
|
+
this.tokenManager.restoreTokensFromConfig(this.apiClient);
|
|
258
|
+
const config = this.configManager.getConfig();
|
|
272
259
|
if (!config.organizationId) {
|
|
273
260
|
throw new Error('Not logged in. Please run "edgible login" first.');
|
|
274
261
|
}
|
|
@@ -317,7 +304,7 @@ class ApplicationServiceImpl {
|
|
|
317
304
|
*/
|
|
318
305
|
async listApiKeys(applicationId) {
|
|
319
306
|
try {
|
|
320
|
-
await this.authService.
|
|
307
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
321
308
|
const response = await this.apiClient.listApplicationApiKeys(applicationId);
|
|
322
309
|
return response.keys || [];
|
|
323
310
|
}
|
|
@@ -331,7 +318,7 @@ class ApplicationServiceImpl {
|
|
|
331
318
|
*/
|
|
332
319
|
async createApiKey(applicationId, name, expiresAt) {
|
|
333
320
|
try {
|
|
334
|
-
await this.authService.
|
|
321
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
335
322
|
const response = await this.apiClient.createApplicationApiKey(applicationId, name, expiresAt);
|
|
336
323
|
return response;
|
|
337
324
|
}
|
|
@@ -345,7 +332,7 @@ class ApplicationServiceImpl {
|
|
|
345
332
|
*/
|
|
346
333
|
async deleteApiKey(applicationId, keyId) {
|
|
347
334
|
try {
|
|
348
|
-
await this.authService.
|
|
335
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
349
336
|
await this.apiClient.deleteApplicationApiKey(applicationId, keyId);
|
|
350
337
|
}
|
|
351
338
|
catch (error) {
|
|
@@ -358,7 +345,7 @@ class ApplicationServiceImpl {
|
|
|
358
345
|
*/
|
|
359
346
|
async listShortCodes(applicationId) {
|
|
360
347
|
try {
|
|
361
|
-
await this.authService.
|
|
348
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
362
349
|
const response = await this.apiClient.listApplicationShortCodes(applicationId);
|
|
363
350
|
return response.codes || [];
|
|
364
351
|
}
|
|
@@ -372,7 +359,7 @@ class ApplicationServiceImpl {
|
|
|
372
359
|
*/
|
|
373
360
|
async createShortCode(applicationId, name, expiresAt, maxUses) {
|
|
374
361
|
try {
|
|
375
|
-
await this.authService.
|
|
362
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
376
363
|
const response = await this.apiClient.createApplicationShortCode(applicationId, name, expiresAt, maxUses);
|
|
377
364
|
return response;
|
|
378
365
|
}
|
|
@@ -386,7 +373,7 @@ class ApplicationServiceImpl {
|
|
|
386
373
|
*/
|
|
387
374
|
async updateShortCode(applicationId, codeId, updates) {
|
|
388
375
|
try {
|
|
389
|
-
await this.authService.
|
|
376
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
390
377
|
const response = await this.apiClient.updateApplicationShortCode(applicationId, codeId, updates);
|
|
391
378
|
return response;
|
|
392
379
|
}
|
|
@@ -400,7 +387,7 @@ class ApplicationServiceImpl {
|
|
|
400
387
|
*/
|
|
401
388
|
async deleteShortCode(applicationId, codeId) {
|
|
402
389
|
try {
|
|
403
|
-
await this.authService.
|
|
390
|
+
await this.tokenManager.ensureValidToken(this.apiClient, this.authService.loginDevice.bind(this.authService));
|
|
404
391
|
await this.apiClient.deleteApplicationShortCode(applicationId, codeId);
|
|
405
392
|
}
|
|
406
393
|
catch (error) {
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { LoginResponse } from '../../client';
|
|
6
6
|
import { CreateDeviceWithOrphanedOrganizationResponse, GetUserOrganizationsResponse } from '../../types/ApiResponses';
|
|
7
|
-
import {
|
|
7
|
+
import { ConfigManager } from '../../state/config';
|
|
8
|
+
import { TokenManager } from '../token/TokenManager';
|
|
8
9
|
import { Logger } from '../../utils/logger';
|
|
9
10
|
export interface AuthService {
|
|
10
11
|
loginUser(email: string, password: string): Promise<LoginResponse>;
|
|
@@ -21,13 +22,12 @@ export interface AuthService {
|
|
|
21
22
|
}
|
|
22
23
|
export declare class AuthServiceImpl implements AuthService {
|
|
23
24
|
private apiClient;
|
|
24
|
-
private
|
|
25
|
+
private configManager;
|
|
26
|
+
private tokenManager;
|
|
25
27
|
private logger;
|
|
26
28
|
private baseUrl;
|
|
27
|
-
constructor(baseUrl: string,
|
|
28
|
-
private restoreTokensFromConfig;
|
|
29
|
+
constructor(baseUrl: string, configManager: ConfigManager, tokenManager: TokenManager, logger: Logger);
|
|
29
30
|
attemptAutoRelogin(): Promise<boolean>;
|
|
30
|
-
private saveTokensToConfig;
|
|
31
31
|
loginUser(email: string, password: string): Promise<LoginResponse>;
|
|
32
32
|
createDeviceWithOrganization(deviceName: string, password: string, userEmail?: string): Promise<CreateDeviceWithOrphanedOrganizationResponse>;
|
|
33
33
|
checkAccount(email: string): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../../src/services/auth/AuthService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAA4C,aAAa,EAAE,MAAM,cAAc,CAAC;AAEvF,OAAO,EAAE,4CAA4C,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAEtH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../../src/services/auth/AuthService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAA4C,aAAa,EAAE,MAAM,cAAc,CAAC;AAEvF,OAAO,EAAE,4CAA4C,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAEtH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACnE,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACxE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9E,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,4BAA4B,CAC1B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,4CAA4C,CAAC,CAAC;IACzD,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC3E,cAAc,IAAI,MAAM,GAAG,SAAS,CAAC;IACrC,UAAU,IAAI,MAAM,GAAG,SAAS,CAAC;IACjC,eAAe,IAAI,MAAM,GAAG,SAAS,CAAC;IACtC,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC;AAED,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAGtB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM;IAUV,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAOtC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAYlE,4BAA4B,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,4CAA4C,CAAC;IA0BlD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB7C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAYvE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8C7E,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW1D,cAAc,IAAI,MAAM,GAAG,SAAS;IAIpC,UAAU,IAAI,MAAM,GAAG,SAAS;IAIhC,eAAe,IAAI,MAAM,GAAG,SAAS;IAI/B,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC;CAQjF"}
|
|
@@ -8,70 +8,22 @@ exports.AuthServiceImpl = void 0;
|
|
|
8
8
|
const client_1 = require("../../client");
|
|
9
9
|
const passwordValidation_1 = require("../../utils/passwordValidation");
|
|
10
10
|
class AuthServiceImpl {
|
|
11
|
-
constructor(baseUrl,
|
|
11
|
+
constructor(baseUrl, configManager, tokenManager, logger) {
|
|
12
12
|
this.baseUrl = baseUrl;
|
|
13
|
-
this.
|
|
13
|
+
this.configManager = configManager;
|
|
14
|
+
this.tokenManager = tokenManager;
|
|
14
15
|
this.logger = logger;
|
|
15
16
|
this.apiClient = (0, client_1.createApiClient)(baseUrl);
|
|
16
|
-
this.restoreTokensFromConfig();
|
|
17
|
-
}
|
|
18
|
-
restoreTokensFromConfig() {
|
|
19
|
-
const config = this.configRepository.getConfig();
|
|
20
|
-
if (config.accessToken) {
|
|
21
|
-
this.apiClient.setAccessToken(config.accessToken);
|
|
22
|
-
}
|
|
23
|
-
if (config.idToken) {
|
|
24
|
-
this.apiClient.setIdToken(config.idToken);
|
|
25
|
-
}
|
|
26
|
-
if (config.refreshToken) {
|
|
27
|
-
this.apiClient.setRefreshToken(config.refreshToken);
|
|
28
|
-
}
|
|
29
|
-
//
|
|
30
|
-
// this.logger.debug('Token restoration', {
|
|
31
|
-
// hasAccessToken: !!config.accessToken,
|
|
32
|
-
// hasIdToken: !!config.idToken,
|
|
33
|
-
// hasRefreshToken: !!config.refreshToken,
|
|
34
|
-
// organizationId: config.organizationId,
|
|
35
|
-
// deviceId: config.deviceId,
|
|
36
|
-
// });
|
|
17
|
+
this.tokenManager.restoreTokensFromConfig(this.apiClient);
|
|
37
18
|
}
|
|
38
19
|
async attemptAutoRelogin() {
|
|
39
|
-
|
|
40
|
-
// If no tokens but we have device credentials, attempt automatic re-login
|
|
41
|
-
if (!config.idToken && !config.accessToken && config.deviceId && config.devicePassword) {
|
|
42
|
-
this.logger.debug('No tokens available, attempting automatic device re-login');
|
|
43
|
-
try {
|
|
44
|
-
await this.loginDevice(config.deviceId, config.devicePassword);
|
|
45
|
-
this.logger.debug('Automatic re-login successful');
|
|
46
|
-
return true;
|
|
47
|
-
}
|
|
48
|
-
catch (error) {
|
|
49
|
-
this.logger.warn('Automatic re-login failed', error instanceof Error ? error.message : String(error));
|
|
50
|
-
return false;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
return false;
|
|
54
|
-
}
|
|
55
|
-
saveTokensToConfig() {
|
|
56
|
-
const accessToken = this.apiClient.getAccessToken();
|
|
57
|
-
const idToken = this.apiClient.getIdToken();
|
|
58
|
-
const refreshToken = this.apiClient.getRefreshToken();
|
|
59
|
-
this.logger.debug('Saving tokens', {
|
|
60
|
-
hasAccessToken: !!accessToken,
|
|
61
|
-
hasIdToken: !!idToken,
|
|
62
|
-
hasRefreshToken: !!refreshToken,
|
|
63
|
-
});
|
|
64
|
-
this.configRepository.updateConfig({
|
|
65
|
-
accessToken,
|
|
66
|
-
idToken,
|
|
67
|
-
refreshToken,
|
|
68
|
-
});
|
|
20
|
+
return this.tokenManager.ensureValidToken(this.apiClient, this.loginDevice.bind(this));
|
|
69
21
|
}
|
|
70
22
|
async loginUser(email, password) {
|
|
71
23
|
try {
|
|
72
24
|
const loginRequest = { email, password };
|
|
73
25
|
const response = await this.apiClient.login(loginRequest);
|
|
74
|
-
this.saveTokensToConfig();
|
|
26
|
+
this.tokenManager.saveTokensToConfig(this.apiClient);
|
|
75
27
|
return response;
|
|
76
28
|
}
|
|
77
29
|
catch (error) {
|
|
@@ -131,7 +83,7 @@ class AuthServiceImpl {
|
|
|
131
83
|
try {
|
|
132
84
|
const loginRequest = { email: deviceId, password };
|
|
133
85
|
const response = await this.apiClient.login(loginRequest);
|
|
134
|
-
this.saveTokensToConfig();
|
|
86
|
+
this.tokenManager.saveTokensToConfig(this.apiClient);
|
|
135
87
|
return response;
|
|
136
88
|
}
|
|
137
89
|
catch (error) {
|
|
@@ -184,7 +136,7 @@ class AuthServiceImpl {
|
|
|
184
136
|
async refreshToken(refreshToken) {
|
|
185
137
|
try {
|
|
186
138
|
const response = await this.apiClient.refreshToken({ refreshToken });
|
|
187
|
-
this.saveTokensToConfig();
|
|
139
|
+
this.tokenManager.saveTokensToConfig(this.apiClient);
|
|
188
140
|
return response;
|
|
189
141
|
}
|
|
190
142
|
catch (error) {
|
|
@@ -193,13 +145,13 @@ class AuthServiceImpl {
|
|
|
193
145
|
}
|
|
194
146
|
}
|
|
195
147
|
getAccessToken() {
|
|
196
|
-
return this.
|
|
148
|
+
return this.tokenManager.getAccessToken();
|
|
197
149
|
}
|
|
198
150
|
getIdToken() {
|
|
199
|
-
return this.
|
|
151
|
+
return this.tokenManager.getIdToken();
|
|
200
152
|
}
|
|
201
153
|
getRefreshToken() {
|
|
202
|
-
return this.
|
|
154
|
+
return this.tokenManager.getRefreshToken();
|
|
203
155
|
}
|
|
204
156
|
async getUserOrganizations(email) {
|
|
205
157
|
try {
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Diagnostics Service
|
|
3
|
+
*
|
|
4
|
+
* Handles SSH diagnostics, command execution, and log management for gateways.
|
|
5
|
+
* This is a focused service extracted from the EdgibleService god object.
|
|
6
|
+
*/
|
|
7
|
+
import { EdgibleService } from '../edgible';
|
|
8
|
+
export interface DiagnosticsService {
|
|
9
|
+
/**
|
|
10
|
+
* Get diagnostics for a gateway
|
|
11
|
+
*/
|
|
12
|
+
getGatewayDiagnostics(gatewayId: string): Promise<{
|
|
13
|
+
success: boolean;
|
|
14
|
+
diagnostics?: any;
|
|
15
|
+
error?: string;
|
|
16
|
+
}>;
|
|
17
|
+
/**
|
|
18
|
+
* Execute a command on a managed gateway via SSH
|
|
19
|
+
*/
|
|
20
|
+
executeManagedGatewayCommand(gatewayId: string, command: string): Promise<{
|
|
21
|
+
success: boolean;
|
|
22
|
+
output: string;
|
|
23
|
+
error?: string;
|
|
24
|
+
}>;
|
|
25
|
+
/**
|
|
26
|
+
* Wipe logs on a regular gateway
|
|
27
|
+
*/
|
|
28
|
+
wipeGatewayLogs(gatewayId: string): Promise<{
|
|
29
|
+
success: boolean;
|
|
30
|
+
message?: string;
|
|
31
|
+
logFile?: string;
|
|
32
|
+
}>;
|
|
33
|
+
/**
|
|
34
|
+
* Wipe logs on a managed gateway
|
|
35
|
+
*/
|
|
36
|
+
wipeManagedGatewayLogs(gatewayId: string): Promise<{
|
|
37
|
+
success: boolean;
|
|
38
|
+
message?: string;
|
|
39
|
+
logFile?: string;
|
|
40
|
+
}>;
|
|
41
|
+
/**
|
|
42
|
+
* Get logs from a managed gateway
|
|
43
|
+
*/
|
|
44
|
+
getManagedGatewayLogs(gatewayId: string, options: {
|
|
45
|
+
lines?: number;
|
|
46
|
+
follow?: boolean;
|
|
47
|
+
level?: 'error' | 'debug' | 'info' | 'warn' | 'all';
|
|
48
|
+
module?: string;
|
|
49
|
+
comprehensive?: boolean;
|
|
50
|
+
}): Promise<any>;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Implementation of DiagnosticsService
|
|
54
|
+
*
|
|
55
|
+
* Currently delegates to EdgibleService for backward compatibility.
|
|
56
|
+
* In Phase 3, we'll extract the actual implementation.
|
|
57
|
+
*/
|
|
58
|
+
export declare class DiagnosticsServiceImpl implements DiagnosticsService {
|
|
59
|
+
private edgibleService;
|
|
60
|
+
constructor(edgibleService: EdgibleService);
|
|
61
|
+
getGatewayDiagnostics(gatewayId: string): Promise<{
|
|
62
|
+
success: boolean;
|
|
63
|
+
diagnostics?: any;
|
|
64
|
+
error?: string;
|
|
65
|
+
}>;
|
|
66
|
+
executeManagedGatewayCommand(gatewayId: string, command: string): Promise<{
|
|
67
|
+
success: boolean;
|
|
68
|
+
output: string;
|
|
69
|
+
error?: string;
|
|
70
|
+
}>;
|
|
71
|
+
wipeGatewayLogs(gatewayId: string): Promise<{
|
|
72
|
+
success: boolean;
|
|
73
|
+
message?: string;
|
|
74
|
+
logFile?: string;
|
|
75
|
+
}>;
|
|
76
|
+
wipeManagedGatewayLogs(gatewayId: string): Promise<{
|
|
77
|
+
success: boolean;
|
|
78
|
+
message?: string;
|
|
79
|
+
logFile?: string;
|
|
80
|
+
}>;
|
|
81
|
+
getManagedGatewayLogs(gatewayId: string, options: {
|
|
82
|
+
lines?: number;
|
|
83
|
+
follow?: boolean;
|
|
84
|
+
level?: 'error' | 'debug' | 'info' | 'warn' | 'all';
|
|
85
|
+
module?: string;
|
|
86
|
+
comprehensive?: boolean;
|
|
87
|
+
}): Promise<any>;
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=DiagnosticsService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DiagnosticsService.d.ts","sourceRoot":"","sources":["../../../src/services/diagnostics/DiagnosticsService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAChD,OAAO,EAAE,OAAO,CAAC;QACjB,WAAW,CAAC,EAAE,GAAG,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IAEH;;OAEG;IACH,4BAA4B,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEjE;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAC1C,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IAEH;;OAEG;IACH,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QACjD,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IAEH;;OAEG;IACH,qBAAqB,CACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;QACpD,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,GACA,OAAO,CAAC,GAAG,CAAC,CAAC;CACjB;AAED;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IACnD,OAAO,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAE5C,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QACtD,OAAO,EAAE,OAAO,CAAC;QACjB,WAAW,CAAC,EAAE,GAAG,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAII,4BAA4B,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAI1D,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAChD,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAII,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QACvD,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAII,qBAAqB,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;QACpD,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,GACA,OAAO,CAAC,GAAG,CAAC;CAGhB"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Diagnostics Service
|
|
4
|
+
*
|
|
5
|
+
* Handles SSH diagnostics, command execution, and log management for gateways.
|
|
6
|
+
* This is a focused service extracted from the EdgibleService god object.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.DiagnosticsServiceImpl = void 0;
|
|
10
|
+
/**
|
|
11
|
+
* Implementation of DiagnosticsService
|
|
12
|
+
*
|
|
13
|
+
* Currently delegates to EdgibleService for backward compatibility.
|
|
14
|
+
* In Phase 3, we'll extract the actual implementation.
|
|
15
|
+
*/
|
|
16
|
+
class DiagnosticsServiceImpl {
|
|
17
|
+
constructor(edgibleService) {
|
|
18
|
+
this.edgibleService = edgibleService;
|
|
19
|
+
}
|
|
20
|
+
async getGatewayDiagnostics(gatewayId) {
|
|
21
|
+
return this.edgibleService.getGatewayDiagnostics(gatewayId);
|
|
22
|
+
}
|
|
23
|
+
async executeManagedGatewayCommand(gatewayId, command) {
|
|
24
|
+
return this.edgibleService.executeManagedGatewayCommand(gatewayId, command);
|
|
25
|
+
}
|
|
26
|
+
async wipeGatewayLogs(gatewayId) {
|
|
27
|
+
return this.edgibleService.wipeGatewayLogs(gatewayId);
|
|
28
|
+
}
|
|
29
|
+
async wipeManagedGatewayLogs(gatewayId) {
|
|
30
|
+
return this.edgibleService.wipeManagedGatewayLogs(gatewayId);
|
|
31
|
+
}
|
|
32
|
+
async getManagedGatewayLogs(gatewayId, options) {
|
|
33
|
+
return this.edgibleService.getManagedGatewayLogs(gatewayId, options);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.DiagnosticsServiceImpl = DiagnosticsServiceImpl;
|
|
37
|
+
//# sourceMappingURL=DiagnosticsService.js.map
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Workload, Application } from '../detection/WorkloadDetector';
|
|
2
2
|
import { LoginResponse } from '../client';
|
|
3
3
|
import { CreateDeviceWithOrphanedOrganizationResponse, GetUserOrganizationsResponse } from '../types/ApiResponses';
|
|
4
|
+
import { ConfigManager } from '../state/config';
|
|
5
|
+
import { TokenManager } from './token/TokenManager';
|
|
6
|
+
import { Logger } from '../utils/logger';
|
|
4
7
|
import { ApplicationSetupResult, ValidationResult } from '../types/validation';
|
|
5
8
|
import { LocalAgentHealthStatus } from '../types/agent';
|
|
6
9
|
/**
|
|
@@ -11,11 +14,10 @@ export declare class EdgibleService {
|
|
|
11
14
|
private apiClient;
|
|
12
15
|
private applications;
|
|
13
16
|
private configManager;
|
|
17
|
+
private tokenManager;
|
|
18
|
+
private logger;
|
|
14
19
|
private baseUrl;
|
|
15
|
-
constructor(baseUrl
|
|
16
|
-
private restoreTokensFromConfigSync;
|
|
17
|
-
private attemptAutoRelogin;
|
|
18
|
-
private saveTokensToConfig;
|
|
20
|
+
constructor(baseUrl: string, configManager: ConfigManager, tokenManager: TokenManager, logger: Logger);
|
|
19
21
|
/**
|
|
20
22
|
* Authenticate user with email and password
|
|
21
23
|
* @param email - Email address
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edgible.d.ts","sourceRoot":"","sources":["../../src/services/edgible.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAA4C,aAAa,EAAE,MAAM,WAAW,CAAC;AAEpF,OAAO,EAAE,4CAA4C,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"edgible.d.ts","sourceRoot":"","sources":["../../src/services/edgible.ts"],"names":[],"mappings":"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"}
|