@edgible-team/cli 1.2.1 → 1.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +2 -0
- package/dist/client/api-client.d.ts +51 -0
- package/dist/client/api-client.d.ts.map +1 -1
- package/dist/client/api-client.js +65 -0
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +6 -1
- package/dist/commands/ai.d.ts.map +1 -1
- package/dist/commands/ai.js +23 -20
- package/dist/commands/application.d.ts.map +1 -1
- package/dist/commands/application.js +713 -94
- package/dist/generated/compose-constants.d.ts +14 -0
- package/dist/generated/compose-constants.d.ts.map +1 -0
- package/dist/generated/compose-constants.js +22 -0
- package/dist/interfaces/IDaemonManager.d.ts +11 -1
- package/dist/interfaces/IDaemonManager.d.ts.map +1 -1
- package/dist/services/application/ApplicationService.d.ts +41 -0
- package/dist/services/application/ApplicationService.d.ts.map +1 -1
- package/dist/services/application/ApplicationService.js +107 -0
- package/dist/services/daemon/DockerDaemonManager.d.ts +4 -1
- package/dist/services/daemon/DockerDaemonManager.d.ts.map +1 -1
- package/dist/services/daemon/DockerDaemonManager.js +1 -1
- package/dist/services/daemon/LaunchdDaemonManager.d.ts +4 -1
- package/dist/services/daemon/LaunchdDaemonManager.d.ts.map +1 -1
- package/dist/services/daemon/LaunchdDaemonManager.js +70 -26
- package/dist/services/daemon/PodmanDaemonManager.d.ts +4 -1
- package/dist/services/daemon/PodmanDaemonManager.d.ts.map +1 -1
- package/dist/services/daemon/PodmanDaemonManager.js +1 -1
- package/dist/services/daemon/SystemdDaemonManager.d.ts +4 -1
- package/dist/services/daemon/SystemdDaemonManager.d.ts.map +1 -1
- package/dist/services/daemon/SystemdDaemonManager.js +1 -1
- package/dist/services/daemon/WindowsServiceDaemonManager.d.ts +4 -1
- package/dist/services/daemon/WindowsServiceDaemonManager.d.ts.map +1 -1
- package/dist/services/daemon/WindowsServiceDaemonManager.js +3 -2
- package/dist/types/AgentConfig.d.ts +13 -0
- package/dist/types/AgentConfig.d.ts.map +1 -1
- package/dist/types/ApiRequests.d.ts +8 -0
- package/dist/types/ApiRequests.d.ts.map +1 -1
- package/dist/types/Application.d.ts +6 -0
- package/dist/types/Application.d.ts.map +1 -1
- package/dist/types/CaddyJson.d.ts +43 -1
- package/dist/types/CaddyJson.d.ts.map +1 -1
- package/dist/types/models/ApplicationApiKey.d.ts +63 -0
- package/dist/types/models/ApplicationApiKey.d.ts.map +1 -0
- package/dist/types/models/ApplicationApiKey.js +5 -0
- package/dist/types/models/ApplicationAuthExchangeToken.d.ts +69 -0
- package/dist/types/models/ApplicationAuthExchangeToken.d.ts.map +1 -0
- package/dist/types/models/ApplicationAuthExchangeToken.js +5 -0
- package/dist/types/models/ApplicationAuthSession.d.ts +68 -0
- package/dist/types/models/ApplicationAuthSession.d.ts.map +1 -0
- package/dist/types/models/ApplicationAuthSession.js +5 -0
- package/dist/types/models/ApplicationData.d.ts +33 -0
- package/dist/types/models/ApplicationData.d.ts.map +1 -1
- package/dist/types/models/ApplicationShortCode.d.ts +79 -0
- package/dist/types/models/ApplicationShortCode.d.ts.map +1 -0
- package/dist/types/models/ApplicationShortCode.js +5 -0
- package/dist/types/route.d.ts +4 -0
- package/dist/types/route.d.ts.map +1 -1
- package/dist/types/validation/schemas.d.ts +21 -0
- package/dist/types/validation/schemas.d.ts.map +1 -1
- package/dist/types/validation/schemas.js +14 -1
- package/dist/utils/PathResolver.d.ts +14 -0
- package/dist/utils/PathResolver.d.ts.map +1 -1
- package/dist/utils/PathResolver.js +24 -0
- package/package.json +2 -2
- package/recipes/compose/open-webui/docker-compose.yml +26 -1
- package/dist/detection/tools.d.ts +0 -16
- package/dist/detection/tools.d.ts.map +0 -1
- package/dist/detection/tools.js +0 -305
- package/recipes/compose/open-webui/.env +0 -1
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base64-encoded docker-compose.yml for Open WebUI
|
|
3
|
+
* Source: recipes/compose/open-webui/docker-compose.yml
|
|
4
|
+
*
|
|
5
|
+
* When used in application configuration with 'base64:' prefix,
|
|
6
|
+
* the agent will decode and write to working directory.
|
|
7
|
+
*/
|
|
8
|
+
export declare const OPEN_WEBUI_COMPOSE_BASE64 = "c2VydmljZXM6CiAgb3Blbi13ZWJ1aToKICAgIGltYWdlOiBnaGNyLmlvL29wZW4td2VidWkvb3Blbi13ZWJ1aToke1dFQlVJX0RPQ0tFUl9UQUctbWFpbn0KICAgIGNvbnRhaW5lcl9uYW1lOiBvcGVuLXdlYnVpCiAgICB2b2x1bWVzOgogICAgICAtIG9wZW4td2VidWk6L2FwcC9iYWNrZW5kL2RhdGEKICAgIHBvcnRzOgogICAgICAtICR7T1BFTl9XRUJVSV9QT1JULTMyMDB9OjgwODAKICAgIGVudmlyb25tZW50OgogICAgICAtICdFTkFCTEVfT0FVVEhfU0lHTlVQPXRydWUnCiAgICAgIC0gJ0VOQUJMRV9TSUdOVVA9dHJ1ZScKICAgICAgIyAtICdXRUJVSV9VUkw9b3Blbi13ZWJ1aS45ZmI4MzllOS1jZTJjLTRhYmQtOTRkNS0wNTFlNjk2Y2YxYjcuZWRnaWJsZS5jb20nCiAgICAgIC0gJ09MTEFNQV9CQVNFX1VSTD0ke09MTEFNQV9CQVNFX1VSTDotaHR0cDovL2hvc3QuZG9ja2VyLmludGVybmFsOjExNDM0fScKICAgICAgLSAnT0xMQU1BX0FQSV9LRVk9JHtPTExBTUFfQVBJX0tFWTotfScKICAgICAgIyAtICdXRUJVSV9TRUNSRVRfS0VZPTEyMycKICAgICAgLSAnV0VCVUlfQVVUSF9UUlVTVEVEX0VNQUlMX0hFQURFUj1YLUF1dGgtRW1haWwnCiAgICAgIC0gJ1dFQlVJX0FVVEhfVFJVU1RFRF9OQU1FX0hFQURFUj1YLUF1dGgtVXNlcicKICAgICAgIyAtICdXRUJVSV9BVVRIPWZhbHNlJwogICAgICAjIC0gJ1dFQlVJX1NFU1NJT05fQ09PS0lFX1NBTUVfU0lURT1sYXgnCiAgICAgICMgLSAnV0VCVUlfQVVUSF9DT09LSUVfU0FNRV9TSVRFPWxheCcKICAgICAgIyAtICdXRUJVSV9TRVNTSU9OX0NPT0tJRV9TRUNVUkU9ZmFsc2UnICAjIFNldCB0byBmYWxzZSBpZiB1c2luZyBIVFRQCiAgICAgICMgLSAnV0VCVUlfQVVUSF9DT09LSUVfU0VDVVJFPWZhbHNlJyAgICAgIyBTZXQgdG8gZmFsc2UgaWYgdXNpbmcgSFRUUAogICAgZXh0cmFfaG9zdHM6CiAgICAgIC0gaG9zdC5kb2NrZXIuaW50ZXJuYWw6aG9zdC1nYXRld2F5CiAgICAjIENvbm5lY3QgdG8gRE5TIG5ldHdvcmsgdG8gYWNjZXNzIEROUyBzZXJ2ZXIKICAgIG5ldHdvcmtzOgogICAgICAtIGVkZ2libGUtZG5zLW5ldHdvcmsKICAgICMgVXNlIEVkZ2libGUgRE5TIHNlcnZlciBmb3IgYXBwbGljYXRpb24gaG9zdG5hbWUgcmVzb2x1dGlvbgogICAgIyBUaGUgRE5TIHNlcnZlciBydW5zIGF0IDE3Mi4yMC4wLjIgd2l0aGluIHRoZSBlZGdpYmxlLWRucy1uZXR3b3JrCiAgICAjIGFuZCByZXNvbHZlcyBhcHBsaWNhdGlvbiBob3N0bmFtZXMgdG8gdGhlIGhvc3QgZ2F0ZXdheSAoMTcyLjIwLjAuMSkKICAgIGRuczoKICAgICAgLSAxNzIuMjAuMC4yICAgICMgRWRnaWJsZSBETlMgc2VydmVyIChyZXNvbHZlcyBhcHAgaG9zdG5hbWVzKQogICAgICAtIDguOC44LjggICAgICAgIyBGYWxsYmFjayBwdWJsaWMgRE5TCiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZAoKdm9sdW1lczoKICBvcGVuLXdlYnVpOiB7fQoKIyBEZWZpbmUgdGhlIEROUyBuZXR3b3JrIGFzIGV4dGVybmFsIChjcmVhdGVkIGJ5IGFnZW50KQpuZXR3b3JrczoKICBlZGdpYmxlLWRucy1uZXR3b3JrOgogICAgZXh0ZXJuYWw6IHRydWUK";
|
|
9
|
+
/**
|
|
10
|
+
* Get the dockerComposePath value for Open WebUI application
|
|
11
|
+
* @returns Base64-prefixed compose content ready for API submission
|
|
12
|
+
*/
|
|
13
|
+
export declare function getOpenWebUIComposeValue(): string;
|
|
14
|
+
//# sourceMappingURL=compose-constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compose-constants.d.ts","sourceRoot":"","sources":["../../src/generated/compose-constants.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,6iEAA6iE,CAAC;AAEplE;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// This file is auto-generated by scripts/generate-compose-constants.js
|
|
3
|
+
// Do not edit manually - changes will be overwritten on next build
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.OPEN_WEBUI_COMPOSE_BASE64 = void 0;
|
|
6
|
+
exports.getOpenWebUIComposeValue = getOpenWebUIComposeValue;
|
|
7
|
+
/**
|
|
8
|
+
* Base64-encoded docker-compose.yml for Open WebUI
|
|
9
|
+
* Source: recipes/compose/open-webui/docker-compose.yml
|
|
10
|
+
*
|
|
11
|
+
* When used in application configuration with 'base64:' prefix,
|
|
12
|
+
* the agent will decode and write to working directory.
|
|
13
|
+
*/
|
|
14
|
+
exports.OPEN_WEBUI_COMPOSE_BASE64 = 'c2VydmljZXM6CiAgb3Blbi13ZWJ1aToKICAgIGltYWdlOiBnaGNyLmlvL29wZW4td2VidWkvb3Blbi13ZWJ1aToke1dFQlVJX0RPQ0tFUl9UQUctbWFpbn0KICAgIGNvbnRhaW5lcl9uYW1lOiBvcGVuLXdlYnVpCiAgICB2b2x1bWVzOgogICAgICAtIG9wZW4td2VidWk6L2FwcC9iYWNrZW5kL2RhdGEKICAgIHBvcnRzOgogICAgICAtICR7T1BFTl9XRUJVSV9QT1JULTMyMDB9OjgwODAKICAgIGVudmlyb25tZW50OgogICAgICAtICdFTkFCTEVfT0FVVEhfU0lHTlVQPXRydWUnCiAgICAgIC0gJ0VOQUJMRV9TSUdOVVA9dHJ1ZScKICAgICAgIyAtICdXRUJVSV9VUkw9b3Blbi13ZWJ1aS45ZmI4MzllOS1jZTJjLTRhYmQtOTRkNS0wNTFlNjk2Y2YxYjcuZWRnaWJsZS5jb20nCiAgICAgIC0gJ09MTEFNQV9CQVNFX1VSTD0ke09MTEFNQV9CQVNFX1VSTDotaHR0cDovL2hvc3QuZG9ja2VyLmludGVybmFsOjExNDM0fScKICAgICAgLSAnT0xMQU1BX0FQSV9LRVk9JHtPTExBTUFfQVBJX0tFWTotfScKICAgICAgIyAtICdXRUJVSV9TRUNSRVRfS0VZPTEyMycKICAgICAgLSAnV0VCVUlfQVVUSF9UUlVTVEVEX0VNQUlMX0hFQURFUj1YLUF1dGgtRW1haWwnCiAgICAgIC0gJ1dFQlVJX0FVVEhfVFJVU1RFRF9OQU1FX0hFQURFUj1YLUF1dGgtVXNlcicKICAgICAgIyAtICdXRUJVSV9BVVRIPWZhbHNlJwogICAgICAjIC0gJ1dFQlVJX1NFU1NJT05fQ09PS0lFX1NBTUVfU0lURT1sYXgnCiAgICAgICMgLSAnV0VCVUlfQVVUSF9DT09LSUVfU0FNRV9TSVRFPWxheCcKICAgICAgIyAtICdXRUJVSV9TRVNTSU9OX0NPT0tJRV9TRUNVUkU9ZmFsc2UnICAjIFNldCB0byBmYWxzZSBpZiB1c2luZyBIVFRQCiAgICAgICMgLSAnV0VCVUlfQVVUSF9DT09LSUVfU0VDVVJFPWZhbHNlJyAgICAgIyBTZXQgdG8gZmFsc2UgaWYgdXNpbmcgSFRUUAogICAgZXh0cmFfaG9zdHM6CiAgICAgIC0gaG9zdC5kb2NrZXIuaW50ZXJuYWw6aG9zdC1nYXRld2F5CiAgICAjIENvbm5lY3QgdG8gRE5TIG5ldHdvcmsgdG8gYWNjZXNzIEROUyBzZXJ2ZXIKICAgIG5ldHdvcmtzOgogICAgICAtIGVkZ2libGUtZG5zLW5ldHdvcmsKICAgICMgVXNlIEVkZ2libGUgRE5TIHNlcnZlciBmb3IgYXBwbGljYXRpb24gaG9zdG5hbWUgcmVzb2x1dGlvbgogICAgIyBUaGUgRE5TIHNlcnZlciBydW5zIGF0IDE3Mi4yMC4wLjIgd2l0aGluIHRoZSBlZGdpYmxlLWRucy1uZXR3b3JrCiAgICAjIGFuZCByZXNvbHZlcyBhcHBsaWNhdGlvbiBob3N0bmFtZXMgdG8gdGhlIGhvc3QgZ2F0ZXdheSAoMTcyLjIwLjAuMSkKICAgIGRuczoKICAgICAgLSAxNzIuMjAuMC4yICAgICMgRWRnaWJsZSBETlMgc2VydmVyIChyZXNvbHZlcyBhcHAgaG9zdG5hbWVzKQogICAgICAtIDguOC44LjggICAgICAgIyBGYWxsYmFjayBwdWJsaWMgRE5TCiAgICByZXN0YXJ0OiB1bmxlc3Mtc3RvcHBlZAoKdm9sdW1lczoKICBvcGVuLXdlYnVpOiB7fQoKIyBEZWZpbmUgdGhlIEROUyBuZXR3b3JrIGFzIGV4dGVybmFsIChjcmVhdGVkIGJ5IGFnZW50KQpuZXR3b3JrczoKICBlZGdpYmxlLWRucy1uZXR3b3JrOgogICAgZXh0ZXJuYWw6IHRydWUK';
|
|
15
|
+
/**
|
|
16
|
+
* Get the dockerComposePath value for Open WebUI application
|
|
17
|
+
* @returns Base64-prefixed compose content ready for API submission
|
|
18
|
+
*/
|
|
19
|
+
function getOpenWebUIComposeValue() {
|
|
20
|
+
return `base64:${exports.OPEN_WEBUI_COMPOSE_BASE64}`;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=compose-constants.js.map
|
|
@@ -15,6 +15,12 @@ export interface DaemonConfig {
|
|
|
15
15
|
agentPath: string;
|
|
16
16
|
logPath?: string;
|
|
17
17
|
}
|
|
18
|
+
export interface LogsOptions {
|
|
19
|
+
follow: boolean;
|
|
20
|
+
lines?: number;
|
|
21
|
+
stdout?: boolean;
|
|
22
|
+
stderr?: boolean;
|
|
23
|
+
}
|
|
18
24
|
export interface IDaemonManager {
|
|
19
25
|
/**
|
|
20
26
|
* Install and configure the daemon
|
|
@@ -40,9 +46,13 @@ export interface IDaemonManager {
|
|
|
40
46
|
* View daemon logs
|
|
41
47
|
* @param follow - If true, continuously stream logs (returns empty string and streams to stdout)
|
|
42
48
|
* @param lines - Number of log lines to retrieve
|
|
49
|
+
* @param options - Optional log source options (stdout, stderr). If neither specified, reads from agent.log
|
|
43
50
|
* @returns Log content as string (empty if follow mode)
|
|
44
51
|
*/
|
|
45
|
-
logs(follow: boolean, lines?: number
|
|
52
|
+
logs(follow: boolean, lines?: number, options?: {
|
|
53
|
+
stdout?: boolean;
|
|
54
|
+
stderr?: boolean;
|
|
55
|
+
}): Promise<string>;
|
|
46
56
|
/**
|
|
47
57
|
* Enable daemon to start on boot
|
|
48
58
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDaemonManager.d.ts","sourceRoot":"","sources":["../../src/interfaces/IDaemonManager.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,GAAG,SAAS,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IAEhC
|
|
1
|
+
{"version":3,"file":"IDaemonManager.d.ts","sourceRoot":"","sources":["../../src/interfaces/IDaemonManager.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,GAAG,SAAS,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IAEhC;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzG;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAExB;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B;;OAEG;IACH,WAAW,IAAI,MAAM,CAAC;IAEtB;;OAEG;IACH,OAAO,IAAI,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,CAAC;CAC5E"}
|
|
@@ -22,7 +22,17 @@ export interface ApplicationService {
|
|
|
22
22
|
useManagedGateway?: boolean;
|
|
23
23
|
subtype: 'local-preexisting' | 'managed-docker' | 'systemd' | 'docker-compose' | 'managed-process';
|
|
24
24
|
configuration?: Record<string, unknown>;
|
|
25
|
+
authModes?: Array<'none' | 'org' | 'api-key'>;
|
|
26
|
+
requireOrgAuth?: boolean;
|
|
27
|
+
allowedOrganizations?: string[];
|
|
25
28
|
}): Promise<unknown>;
|
|
29
|
+
listApiKeys(applicationId: string): Promise<any[]>;
|
|
30
|
+
createApiKey(applicationId: string, name: string, expiresAt?: string): Promise<any>;
|
|
31
|
+
deleteApiKey(applicationId: string, keyId: string): Promise<void>;
|
|
32
|
+
listShortCodes(applicationId: string): Promise<any[]>;
|
|
33
|
+
createShortCode(applicationId: string, name: string, expiresAt?: string, maxUses?: number): Promise<any>;
|
|
34
|
+
updateShortCode(applicationId: string, codeId: string, updates: any): Promise<any>;
|
|
35
|
+
deleteShortCode(applicationId: string, codeId: string): Promise<void>;
|
|
26
36
|
}
|
|
27
37
|
export declare class ApplicationServiceImpl implements ApplicationService {
|
|
28
38
|
private apiClient;
|
|
@@ -49,6 +59,37 @@ export declare class ApplicationServiceImpl implements ApplicationService {
|
|
|
49
59
|
useManagedGateway?: boolean;
|
|
50
60
|
subtype: 'local-preexisting' | 'managed-docker' | 'systemd' | 'docker-compose' | 'managed-process';
|
|
51
61
|
configuration?: Record<string, unknown>;
|
|
62
|
+
authModes?: Array<'none' | 'org' | 'api-key'>;
|
|
63
|
+
requireOrgAuth?: boolean;
|
|
64
|
+
allowedOrganizations?: string[];
|
|
52
65
|
}): Promise<unknown>;
|
|
66
|
+
/**
|
|
67
|
+
* List API keys for an application
|
|
68
|
+
*/
|
|
69
|
+
listApiKeys(applicationId: string): Promise<any[]>;
|
|
70
|
+
/**
|
|
71
|
+
* Create an API key for an application
|
|
72
|
+
*/
|
|
73
|
+
createApiKey(applicationId: string, name: string, expiresAt?: string): Promise<any>;
|
|
74
|
+
/**
|
|
75
|
+
* Delete an API key
|
|
76
|
+
*/
|
|
77
|
+
deleteApiKey(applicationId: string, keyId: string): Promise<void>;
|
|
78
|
+
/**
|
|
79
|
+
* List short codes for an application
|
|
80
|
+
*/
|
|
81
|
+
listShortCodes(applicationId: string): Promise<any[]>;
|
|
82
|
+
/**
|
|
83
|
+
* Create a short code for an application
|
|
84
|
+
*/
|
|
85
|
+
createShortCode(applicationId: string, name: string, expiresAt?: string, maxUses?: number): Promise<any>;
|
|
86
|
+
/**
|
|
87
|
+
* Update a short code
|
|
88
|
+
*/
|
|
89
|
+
updateShortCode(applicationId: string, codeId: string, updates: any): Promise<any>;
|
|
90
|
+
/**
|
|
91
|
+
* Delete a short code
|
|
92
|
+
*/
|
|
93
|
+
deleteShortCode(applicationId: string, codeId: string): Promise<void>;
|
|
53
94
|
}
|
|
54
95
|
//# sourceMappingURL=ApplicationService.d.ts.map
|
|
@@ -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,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CACd,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,eAAe,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACjD,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChD,iCAAiC,CAAC,MAAM,EAAE;QACxC,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,CAAC;QAC3C,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,OAAO,EAAE,mBAAmB,GAAG,gBAAgB,GAAG,SAAS,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;QACnG,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ApplicationService.d.ts","sourceRoot":"","sources":["../../../src/services/application/ApplicationService.ts"],"names":[],"mappings":"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"}
|
|
@@ -292,6 +292,17 @@ class ApplicationServiceImpl {
|
|
|
292
292
|
if (params.useManagedGateway !== undefined) {
|
|
293
293
|
createRequest.useManagedGateway = params.useManagedGateway;
|
|
294
294
|
}
|
|
295
|
+
// Add authentication settings if specified
|
|
296
|
+
if (params.authModes !== undefined && params.authModes.length > 0) {
|
|
297
|
+
createRequest.authModes = params.authModes;
|
|
298
|
+
}
|
|
299
|
+
// Backward compatibility: convert requireOrgAuth to authModes if authModes not provided
|
|
300
|
+
if (params.authModes === undefined && params.requireOrgAuth !== undefined) {
|
|
301
|
+
createRequest.requireOrgAuth = params.requireOrgAuth;
|
|
302
|
+
}
|
|
303
|
+
if (params.allowedOrganizations !== undefined && params.allowedOrganizations.length > 0) {
|
|
304
|
+
createRequest.allowedOrganizations = params.allowedOrganizations;
|
|
305
|
+
}
|
|
295
306
|
console.log(`application: ${params}`);
|
|
296
307
|
const response = await this.apiClient.createApplication(createRequest);
|
|
297
308
|
return response.application;
|
|
@@ -301,6 +312,102 @@ class ApplicationServiceImpl {
|
|
|
301
312
|
throw new Error(`Failed to create application: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
302
313
|
}
|
|
303
314
|
}
|
|
315
|
+
/**
|
|
316
|
+
* List API keys for an application
|
|
317
|
+
*/
|
|
318
|
+
async listApiKeys(applicationId) {
|
|
319
|
+
try {
|
|
320
|
+
await this.authService.attemptAutoRelogin();
|
|
321
|
+
const response = await this.apiClient.listApplicationApiKeys(applicationId);
|
|
322
|
+
return response.keys || [];
|
|
323
|
+
}
|
|
324
|
+
catch (error) {
|
|
325
|
+
this.logger.error('Failed to list API keys', error);
|
|
326
|
+
throw new Error(`Failed to list API keys: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Create an API key for an application
|
|
331
|
+
*/
|
|
332
|
+
async createApiKey(applicationId, name, expiresAt) {
|
|
333
|
+
try {
|
|
334
|
+
await this.authService.attemptAutoRelogin();
|
|
335
|
+
const response = await this.apiClient.createApplicationApiKey(applicationId, name, expiresAt);
|
|
336
|
+
return response;
|
|
337
|
+
}
|
|
338
|
+
catch (error) {
|
|
339
|
+
this.logger.error('Failed to create API key', error);
|
|
340
|
+
throw new Error(`Failed to create API key: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
/**
|
|
344
|
+
* Delete an API key
|
|
345
|
+
*/
|
|
346
|
+
async deleteApiKey(applicationId, keyId) {
|
|
347
|
+
try {
|
|
348
|
+
await this.authService.attemptAutoRelogin();
|
|
349
|
+
await this.apiClient.deleteApplicationApiKey(applicationId, keyId);
|
|
350
|
+
}
|
|
351
|
+
catch (error) {
|
|
352
|
+
this.logger.error('Failed to delete API key', error);
|
|
353
|
+
throw new Error(`Failed to delete API key: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
/**
|
|
357
|
+
* List short codes for an application
|
|
358
|
+
*/
|
|
359
|
+
async listShortCodes(applicationId) {
|
|
360
|
+
try {
|
|
361
|
+
await this.authService.attemptAutoRelogin();
|
|
362
|
+
const response = await this.apiClient.listApplicationShortCodes(applicationId);
|
|
363
|
+
return response.codes || [];
|
|
364
|
+
}
|
|
365
|
+
catch (error) {
|
|
366
|
+
this.logger.error('Failed to list short codes', error);
|
|
367
|
+
throw new Error(`Failed to list short codes: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
/**
|
|
371
|
+
* Create a short code for an application
|
|
372
|
+
*/
|
|
373
|
+
async createShortCode(applicationId, name, expiresAt, maxUses) {
|
|
374
|
+
try {
|
|
375
|
+
await this.authService.attemptAutoRelogin();
|
|
376
|
+
const response = await this.apiClient.createApplicationShortCode(applicationId, name, expiresAt, maxUses);
|
|
377
|
+
return response;
|
|
378
|
+
}
|
|
379
|
+
catch (error) {
|
|
380
|
+
this.logger.error('Failed to create short code', error);
|
|
381
|
+
throw new Error(`Failed to create short code: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* Update a short code
|
|
386
|
+
*/
|
|
387
|
+
async updateShortCode(applicationId, codeId, updates) {
|
|
388
|
+
try {
|
|
389
|
+
await this.authService.attemptAutoRelogin();
|
|
390
|
+
const response = await this.apiClient.updateApplicationShortCode(applicationId, codeId, updates);
|
|
391
|
+
return response;
|
|
392
|
+
}
|
|
393
|
+
catch (error) {
|
|
394
|
+
this.logger.error('Failed to update short code', error);
|
|
395
|
+
throw new Error(`Failed to update short code: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
/**
|
|
399
|
+
* Delete a short code
|
|
400
|
+
*/
|
|
401
|
+
async deleteShortCode(applicationId, codeId) {
|
|
402
|
+
try {
|
|
403
|
+
await this.authService.attemptAutoRelogin();
|
|
404
|
+
await this.apiClient.deleteApplicationShortCode(applicationId, codeId);
|
|
405
|
+
}
|
|
406
|
+
catch (error) {
|
|
407
|
+
this.logger.error('Failed to delete short code', error);
|
|
408
|
+
throw new Error(`Failed to delete short code: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
409
|
+
}
|
|
410
|
+
}
|
|
304
411
|
}
|
|
305
412
|
exports.ApplicationServiceImpl = ApplicationServiceImpl;
|
|
306
413
|
//# sourceMappingURL=ApplicationService.js.map
|
|
@@ -9,7 +9,10 @@ export declare class DockerDaemonManager implements IDaemonManager {
|
|
|
9
9
|
stop(): Promise<void>;
|
|
10
10
|
restart(): Promise<void>;
|
|
11
11
|
status(): Promise<DaemonStatus>;
|
|
12
|
-
logs(follow: boolean, lines?: number
|
|
12
|
+
logs(follow: boolean, lines?: number, options?: {
|
|
13
|
+
stdout?: boolean;
|
|
14
|
+
stderr?: boolean;
|
|
15
|
+
}): Promise<string>;
|
|
13
16
|
enable(): Promise<void>;
|
|
14
17
|
disable(): Promise<void>;
|
|
15
18
|
uninstall(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DockerDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/DockerDaemonManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,mBAAoB,YAAW,cAAc;IACxD,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,QAAQ,CAA+B;;IAMzC,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IA0C/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"DockerDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/DockerDaemonManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,mBAAoB,YAAW,cAAc;IACxD,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,QAAQ,CAA+B;;IAMzC,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IA0C/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B7G,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBhC,WAAW,IAAI,MAAM;IAIrB,OAAO,IAAI,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ;YAI5D,gBAAgB;YAShB,UAAU;IAqBxB,OAAO,CAAC,wBAAwB;YA+DlB,oBAAoB;YASpB,oBAAoB;YAwBpB,oBAAoB;YA+BpB,oBAAoB;CAkBnC"}
|
|
@@ -9,7 +9,10 @@ export declare class LaunchdDaemonManager implements IDaemonManager {
|
|
|
9
9
|
stop(): Promise<void>;
|
|
10
10
|
restart(): Promise<void>;
|
|
11
11
|
status(): Promise<DaemonStatus>;
|
|
12
|
-
logs(follow: boolean, lines?: number
|
|
12
|
+
logs(follow: boolean, lines?: number, options?: {
|
|
13
|
+
stdout?: boolean;
|
|
14
|
+
stderr?: boolean;
|
|
15
|
+
}): Promise<string>;
|
|
13
16
|
enable(): Promise<void>;
|
|
14
17
|
disable(): Promise<void>;
|
|
15
18
|
uninstall(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LaunchdDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/LaunchdDaemonManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;;IAYlB,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IASrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAOxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAiC/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"LaunchdDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/LaunchdDaemonManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;;IAYlB,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IASrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAOxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAiC/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAsJ7G,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAUvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBhC,WAAW,IAAI,MAAM;IAIrB,OAAO,IAAI,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ;IAI1E,OAAO,CAAC,iBAAiB;CA8C1B"}
|
|
@@ -125,47 +125,91 @@ class LaunchdDaemonManager {
|
|
|
125
125
|
};
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
|
-
async logs(follow, lines = 100) {
|
|
128
|
+
async logs(follow, lines = 100, options) {
|
|
129
129
|
const stdoutLog = path.join(this.logPath, 'stdout.log');
|
|
130
130
|
const stderrLog = path.join(this.logPath, 'stderr.log');
|
|
131
|
+
const agentLog = PathResolver_1.PathResolver.resolveAgentLogPath('launchd');
|
|
132
|
+
// Determine which log source to use
|
|
133
|
+
const useStdout = options?.stdout;
|
|
134
|
+
const useStderr = options?.stderr;
|
|
135
|
+
const useAgentLog = !useStdout && !useStderr; // Default to agent.log if neither flag is specified
|
|
131
136
|
if (follow) {
|
|
132
137
|
// Use tail -f for following logs
|
|
133
138
|
const { spawn } = require('child_process');
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
139
|
+
if (useAgentLog) {
|
|
140
|
+
console.log('==> agent.log <==');
|
|
141
|
+
const agentProc = spawn('tail', ['-f', '-n', String(lines), agentLog], {
|
|
142
|
+
stdio: 'inherit'
|
|
143
|
+
});
|
|
144
|
+
process.on('SIGINT', () => {
|
|
145
|
+
agentProc.kill('SIGTERM');
|
|
146
|
+
process.exit(0);
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
if (useStdout) {
|
|
151
|
+
console.log('==> stdout.log <==');
|
|
152
|
+
const stdoutProc = spawn('tail', ['-f', '-n', String(lines), stdoutLog], {
|
|
153
|
+
stdio: 'inherit'
|
|
154
|
+
});
|
|
155
|
+
process.on('SIGINT', () => {
|
|
156
|
+
stdoutProc.kill('SIGTERM');
|
|
157
|
+
process.exit(0);
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
if (useStderr) {
|
|
161
|
+
console.log('\n==> stderr.log <==');
|
|
162
|
+
const stderrProc = spawn('tail', ['-f', '-n', String(lines), stderrLog], {
|
|
163
|
+
stdio: 'inherit'
|
|
164
|
+
});
|
|
165
|
+
process.on('SIGINT', () => {
|
|
166
|
+
stderrProc.kill('SIGTERM');
|
|
167
|
+
process.exit(0);
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
}
|
|
148
171
|
// Return empty string for follow mode as logs are streamed to stdout
|
|
149
172
|
return '';
|
|
150
173
|
}
|
|
151
174
|
else {
|
|
152
175
|
try {
|
|
153
|
-
//
|
|
176
|
+
// If using agent.log (default), read from it directly
|
|
177
|
+
if (useAgentLog) {
|
|
178
|
+
try {
|
|
179
|
+
const { stdout: agentContent } = await execAsync(`tail -n ${lines} "${agentLog}"`);
|
|
180
|
+
return agentContent;
|
|
181
|
+
}
|
|
182
|
+
catch (error) {
|
|
183
|
+
throw new Error(`Failed to read agent.log: ${error instanceof Error ? error.message : String(error)}`);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
// Otherwise, read from stdout/stderr as specified
|
|
154
187
|
let stdoutLines = [];
|
|
155
188
|
let stderrLines = [];
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
189
|
+
if (useStdout) {
|
|
190
|
+
try {
|
|
191
|
+
const { stdout: stdoutContent } = await execAsync(`tail -n ${lines} ${stdoutLog}`);
|
|
192
|
+
stdoutLines = stdoutContent.split('\n').filter(line => line.trim());
|
|
193
|
+
}
|
|
194
|
+
catch (error) {
|
|
195
|
+
// File might not exist yet
|
|
196
|
+
}
|
|
159
197
|
}
|
|
160
|
-
|
|
161
|
-
|
|
198
|
+
if (useStderr) {
|
|
199
|
+
try {
|
|
200
|
+
const { stdout: stderrContent } = await execAsync(`tail -n ${lines} ${stderrLog}`);
|
|
201
|
+
stderrLines = stderrContent.split('\n').filter(line => line.trim());
|
|
202
|
+
}
|
|
203
|
+
catch (error) {
|
|
204
|
+
// File might not exist yet
|
|
205
|
+
}
|
|
162
206
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
207
|
+
// If only one source is requested, return it directly
|
|
208
|
+
if (useStdout && !useStderr) {
|
|
209
|
+
return stdoutLines.join('\n');
|
|
166
210
|
}
|
|
167
|
-
|
|
168
|
-
|
|
211
|
+
if (useStderr && !useStdout) {
|
|
212
|
+
return stderrLines.join('\n');
|
|
169
213
|
}
|
|
170
214
|
const parsedLogs = [];
|
|
171
215
|
// Parse stdout logs
|
|
@@ -10,7 +10,10 @@ export declare class PodmanDaemonManager implements IDaemonManager {
|
|
|
10
10
|
stop(): Promise<void>;
|
|
11
11
|
restart(): Promise<void>;
|
|
12
12
|
status(): Promise<DaemonStatus>;
|
|
13
|
-
logs(follow: boolean, lines?: number
|
|
13
|
+
logs(follow: boolean, lines?: number, options?: {
|
|
14
|
+
stdout?: boolean;
|
|
15
|
+
stderr?: boolean;
|
|
16
|
+
}): Promise<string>;
|
|
14
17
|
enable(): Promise<void>;
|
|
15
18
|
disable(): Promise<void>;
|
|
16
19
|
uninstall(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PodmanDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/PodmanDaemonManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,mBAAoB,YAAW,cAAc;IACxD,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,eAAe,CAAS;;IAO1B,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IActB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAarB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAaxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAkD/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"PodmanDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/PodmanDaemonManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,mBAAoB,YAAW,cAAc;IACxD,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,eAAe,CAAS;;IAO1B,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IActB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAarB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAaxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAkD/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAwB7G,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAavB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAUxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BhC,WAAW,IAAI,MAAM;IAIrB,OAAO,IAAI,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ;YAI5D,gBAAgB;YAShB,UAAU;IAqBxB,OAAO,CAAC,wBAAwB;YAyElB,iBAAiB;CAoChC"}
|
|
@@ -166,7 +166,7 @@ class PodmanDaemonManager {
|
|
|
166
166
|
};
|
|
167
167
|
}
|
|
168
168
|
}
|
|
169
|
-
async logs(follow, lines = 100) {
|
|
169
|
+
async logs(follow, lines = 100, options) {
|
|
170
170
|
if (follow) {
|
|
171
171
|
const { spawn } = require('child_process');
|
|
172
172
|
const proc = spawn('podman', ['logs', this.containerName, '--tail', String(lines), '-f'], {
|
|
@@ -8,7 +8,10 @@ export declare class SystemdDaemonManager implements IDaemonManager {
|
|
|
8
8
|
stop(): Promise<void>;
|
|
9
9
|
restart(): Promise<void>;
|
|
10
10
|
status(): Promise<DaemonStatus>;
|
|
11
|
-
logs(follow: boolean, lines?: number
|
|
11
|
+
logs(follow: boolean, lines?: number, options?: {
|
|
12
|
+
stdout?: boolean;
|
|
13
|
+
stderr?: boolean;
|
|
14
|
+
}): Promise<string>;
|
|
12
15
|
enable(): Promise<void>;
|
|
13
16
|
disable(): Promise<void>;
|
|
14
17
|
uninstall(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemdDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/SystemdDaemonManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,eAAe,CAA6D;;IAQ9E,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IA0B/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"SystemdDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/SystemdDaemonManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,eAAe,CAA6D;;IAQ9E,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IA0B/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA6B7G,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBhC,WAAW,IAAI,MAAM;IAIrB,OAAO,IAAI,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ;YAI5D,SAAS;IASvB,OAAO,CAAC,mBAAmB;CAuB5B"}
|
|
@@ -113,7 +113,7 @@ class SystemdDaemonManager {
|
|
|
113
113
|
};
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
|
-
async logs(follow, lines = 100) {
|
|
116
|
+
async logs(follow, lines = 100, options) {
|
|
117
117
|
const followFlag = follow ? '-f' : '';
|
|
118
118
|
const command = `journalctl -u ${this.serviceName} -n ${lines} ${followFlag}`;
|
|
119
119
|
if (follow) {
|
|
@@ -9,7 +9,10 @@ export declare class WindowsServiceDaemonManager implements IDaemonManager {
|
|
|
9
9
|
stop(): Promise<void>;
|
|
10
10
|
restart(): Promise<void>;
|
|
11
11
|
status(): Promise<DaemonStatus>;
|
|
12
|
-
logs(follow: boolean, lines?: number
|
|
12
|
+
logs(follow: boolean, lines?: number, options?: {
|
|
13
|
+
stdout?: boolean;
|
|
14
|
+
stderr?: boolean;
|
|
15
|
+
}): Promise<string>;
|
|
13
16
|
enable(): Promise<void>;
|
|
14
17
|
disable(): Promise<void>;
|
|
15
18
|
uninstall(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WindowsServiceDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/WindowsServiceDaemonManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"WindowsServiceDaemonManager.d.ts","sourceRoot":"","sources":["../../../src/services/daemon/WindowsServiceDaemonManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAM7F,qBAAa,2BAA4B,YAAW,cAAc;IAChE,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,WAAW,CAAwE;;IAQrF,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAoC5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAUtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAUrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAKxB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IA2B/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,GAAE,MAAY,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA4C7G,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBhC,WAAW,IAAI,MAAM;IAIrB,OAAO,IAAI,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ;CAG3E"}
|
|
@@ -39,6 +39,7 @@ const util_1 = require("util");
|
|
|
39
39
|
const fs = __importStar(require("fs/promises"));
|
|
40
40
|
const path = __importStar(require("path"));
|
|
41
41
|
const PlatformDetector_1 = require("../../utils/PlatformDetector");
|
|
42
|
+
const PathResolver_1 = require("../../utils/PathResolver");
|
|
42
43
|
const execAsync = (0, util_1.promisify)(child_process_1.exec);
|
|
43
44
|
class WindowsServiceDaemonManager {
|
|
44
45
|
constructor() {
|
|
@@ -128,10 +129,10 @@ class WindowsServiceDaemonManager {
|
|
|
128
129
|
};
|
|
129
130
|
}
|
|
130
131
|
}
|
|
131
|
-
async logs(follow, lines = 100) {
|
|
132
|
+
async logs(follow, lines = 100, options) {
|
|
132
133
|
// Windows Event Log integration would be more complex
|
|
133
134
|
// For now, we'll try to read from a log file if the agent writes one
|
|
134
|
-
const logPath =
|
|
135
|
+
const logPath = PathResolver_1.PathResolver.resolveAgentLogPath('windows-service');
|
|
135
136
|
try {
|
|
136
137
|
if (follow) {
|
|
137
138
|
console.log('Following logs (press Ctrl+C to stop)...');
|
|
@@ -53,6 +53,19 @@ export interface AgentConfig {
|
|
|
53
53
|
* Defaults to 600000 (10 minutes)
|
|
54
54
|
*/
|
|
55
55
|
fullSyncInterval?: number;
|
|
56
|
+
/**
|
|
57
|
+
* DNS server configuration for container hostname resolution
|
|
58
|
+
*/
|
|
59
|
+
dns?: {
|
|
60
|
+
enabled?: boolean;
|
|
61
|
+
containerName?: string;
|
|
62
|
+
networkName?: string;
|
|
63
|
+
networkSubnet?: string;
|
|
64
|
+
dnsServerIp?: string;
|
|
65
|
+
hostGatewayIp?: string;
|
|
66
|
+
configPath?: string;
|
|
67
|
+
upstreamDns?: string[];
|
|
68
|
+
};
|
|
56
69
|
}
|
|
57
70
|
export interface HealthStatus {
|
|
58
71
|
status: 'healthy' | 'unhealthy' | 'timeout' | 'error' | 'pending';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentConfig.d.ts","sourceRoot":"","sources":["../../src/types/AgentConfig.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACnD,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC9C,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC/C,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7C,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7C,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7C,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CACjD;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,GAAG,SAAS,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC9C,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IACvC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"AgentConfig.d.ts","sourceRoot":"","sources":["../../src/types/AgentConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -119,6 +119,14 @@ export interface CreateApplicationRequest {
|
|
|
119
119
|
useManagedGateway?: boolean;
|
|
120
120
|
subtype: 'local-preexisting' | 'managed-docker' | 'systemd' | 'docker-compose' | 'managed-process';
|
|
121
121
|
organizationId: string;
|
|
122
|
+
/** Authentication modes for this application */
|
|
123
|
+
authModes?: Array<'none' | 'org' | 'api-key'>;
|
|
124
|
+
/** @deprecated Use authModes instead. Enable organization-level authentication for this application */
|
|
125
|
+
requireOrgAuth?: boolean;
|
|
126
|
+
/** List of organization IDs allowed to access this application (requires requireOrgAuth) */
|
|
127
|
+
allowedOrganizations?: string[];
|
|
128
|
+
/** Custom headers to add to requests before forwarding to the application */
|
|
129
|
+
customHeaders?: Record<string, string>;
|
|
122
130
|
}
|
|
123
131
|
export interface DeleteApplicationRequest {
|
|
124
132
|
applicationId: string;
|