@ai-support-agent/cli 0.1.22-beta.0 → 0.1.22-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-runner.d.ts.map +1 -1
- package/dist/agent-runner.js +4 -1
- package/dist/agent-runner.js.map +1 -1
- package/dist/agent-transport.js +4 -4
- package/dist/agent-transport.js.map +1 -1
- package/dist/api-client.d.ts +3 -3
- package/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +1 -9
- package/dist/api-client.js.map +1 -1
- package/dist/auth-server.js +3 -3
- package/dist/auth-server.js.map +1 -1
- package/dist/auto-updater.d.ts.map +1 -1
- package/dist/auto-updater.js +1 -2
- package/dist/auto-updater.js.map +1 -1
- package/dist/browser/browser-local-server.d.ts.map +1 -1
- package/dist/browser/browser-local-server.js +4 -16
- package/dist/browser/browser-local-server.js.map +1 -1
- package/dist/browser/browser-script-executor.d.ts.map +1 -1
- package/dist/browser/browser-script-executor.js +7 -5
- package/dist/browser/browser-script-executor.js.map +1 -1
- package/dist/cli/log-rotate-command.d.ts +24 -1
- package/dist/cli/log-rotate-command.d.ts.map +1 -1
- package/dist/cli/log-rotate-command.js +7 -20
- package/dist/cli/log-rotate-command.js.map +1 -1
- package/dist/cli/service/darwin-service.d.ts.map +1 -1
- package/dist/cli/service/darwin-service.js +46 -103
- package/dist/cli/service/darwin-service.js.map +1 -1
- package/dist/cli/service/linux-service.d.ts.map +1 -1
- package/dist/cli/service/linux-service.js +47 -113
- package/dist/cli/service/linux-service.js.map +1 -1
- package/dist/cli/service/service-template-helpers.d.ts +35 -0
- package/dist/cli/service/service-template-helpers.d.ts.map +1 -0
- package/dist/cli/service/service-template-helpers.js +79 -0
- package/dist/cli/service/service-template-helpers.js.map +1 -0
- package/dist/cli/service/win32-service.d.ts.map +1 -1
- package/dist/cli/service/win32-service.js +9 -7
- package/dist/cli/service/win32-service.js.map +1 -1
- package/dist/cli/service-command.d.ts.map +1 -1
- package/dist/cli/service-command.js +6 -5
- package/dist/cli/service-command.js.map +1 -1
- package/dist/commands/chat-executor.js +2 -2
- package/dist/commands/chat-executor.js.map +1 -1
- package/dist/commands/claude-code-args.d.ts.map +1 -1
- package/dist/commands/claude-code-args.js +2 -1
- package/dist/commands/claude-code-args.js.map +1 -1
- package/dist/commands/claude-code-runner.d.ts.map +1 -1
- package/dist/commands/claude-code-runner.js +2 -1
- package/dist/commands/claude-code-runner.js.map +1 -1
- package/dist/commands/docker-commands.d.ts.map +1 -1
- package/dist/commands/docker-commands.js +2 -1
- package/dist/commands/docker-commands.js.map +1 -1
- package/dist/commands/e2e-test-executor.js +71 -57
- package/dist/commands/e2e-test-executor.js.map +1 -1
- package/dist/commands/file-transfer.d.ts.map +1 -1
- package/dist/commands/file-transfer.js +3 -2
- package/dist/commands/file-transfer.js.map +1 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +138 -130
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/shell-executor.js +1 -1
- package/dist/commands/shell-executor.js.map +1 -1
- package/dist/commands/stop-agent.d.ts.map +1 -1
- package/dist/commands/stop-agent.js +2 -1
- package/dist/commands/stop-agent.js.map +1 -1
- package/dist/config-watcher.d.ts.map +1 -1
- package/dist/config-watcher.js +3 -2
- package/dist/config-watcher.js.map +1 -1
- package/dist/constants.d.ts +17 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +27 -4
- package/dist/constants.js.map +1 -1
- package/dist/docker/docker-runner.d.ts.map +1 -1
- package/dist/docker/docker-runner.js +6 -5
- package/dist/docker/docker-runner.js.map +1 -1
- package/dist/docker/docker-supervisor.d.ts.map +1 -1
- package/dist/docker/docker-supervisor.js +27 -22
- package/dist/docker/docker-supervisor.js.map +1 -1
- package/dist/docker/dockerfile-sync.d.ts.map +1 -1
- package/dist/docker/dockerfile-sync.js +2 -1
- package/dist/docker/dockerfile-sync.js.map +1 -1
- package/dist/docker/project-config.d.ts.map +1 -1
- package/dist/docker/project-config.js +2 -1
- package/dist/docker/project-config.js.map +1 -1
- package/dist/docker/version-manager.d.ts.map +1 -1
- package/dist/docker/version-manager.js +1 -2
- package/dist/docker/version-manager.js.map +1 -1
- package/dist/git-credential-setup.js +1 -1
- package/dist/git-credential-setup.js.map +1 -1
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js +4 -3
- package/dist/i18n.js.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/log-rotator.d.ts.map +1 -1
- package/dist/log-rotator.js +2 -1
- package/dist/log-rotator.js.map +1 -1
- package/dist/mcp/tools/browser/browser-session.d.ts +1 -2
- package/dist/mcp/tools/browser/browser-session.d.ts.map +1 -1
- package/dist/mcp/tools/browser/browser-session.js +4 -2
- package/dist/mcp/tools/browser/browser-session.js.map +1 -1
- package/dist/mcp/tools/browser/browser-types.d.ts +4 -0
- package/dist/mcp/tools/browser/browser-types.d.ts.map +1 -1
- package/dist/mcp/tools/browser/browser-types.js +7 -1
- package/dist/mcp/tools/browser/browser-types.js.map +1 -1
- package/dist/mcp/tools/browser/element-info.d.ts +3 -2
- package/dist/mcp/tools/browser/element-info.d.ts.map +1 -1
- package/dist/mcp/tools/browser/element-info.js +0 -2
- package/dist/mcp/tools/browser/element-info.js.map +1 -1
- package/dist/mcp/tools/browser/selector-utils.d.ts +3 -2
- package/dist/mcp/tools/browser/selector-utils.d.ts.map +1 -1
- package/dist/mcp/tools/browser/selector-utils.js +9 -10
- package/dist/mcp/tools/browser/selector-utils.js.map +1 -1
- package/dist/mcp/tools/browser.d.ts.map +1 -1
- package/dist/mcp/tools/browser.js +13 -11
- package/dist/mcp/tools/browser.js.map +1 -1
- package/dist/mcp/tools/e2e-test-step.js.map +1 -1
- package/dist/pending-result-store.js +1 -1
- package/dist/pending-result-store.js.map +1 -1
- package/dist/pid-manager.d.ts.map +1 -1
- package/dist/pid-manager.js +2 -1
- package/dist/pid-manager.js.map +1 -1
- package/dist/project-agent.d.ts +16 -0
- package/dist/project-agent.d.ts.map +1 -1
- package/dist/project-agent.js +88 -75
- package/dist/project-agent.js.map +1 -1
- package/dist/repo-sync.d.ts.map +1 -1
- package/dist/repo-sync.js +15 -9
- package/dist/repo-sync.js.map +1 -1
- package/dist/ssh-config-setup.js +3 -3
- package/dist/ssh-config-setup.js.map +1 -1
- package/dist/terminal/terminal-session.d.ts.map +1 -1
- package/dist/terminal/terminal-session.js +2 -1
- package/dist/terminal/terminal-session.js.map +1 -1
- package/dist/terminal/terminal-websocket.js +1 -1
- package/dist/terminal/terminal-websocket.js.map +1 -1
- package/dist/update-checker.d.ts.map +1 -1
- package/dist/update-checker.js +2 -4
- package/dist/update-checker.js.map +1 -1
- package/dist/utils/claude-config-validator.d.ts.map +1 -1
- package/dist/utils/claude-config-validator.js +2 -1
- package/dist/utils/claude-config-validator.js.map +1 -1
- package/dist/utils/claude-json-oauth-sync.d.ts.map +1 -1
- package/dist/utils/claude-json-oauth-sync.js +5 -6
- package/dist/utils/claude-json-oauth-sync.js.map +1 -1
- package/dist/utils/claude-settings.d.ts.map +1 -1
- package/dist/utils/claude-settings.js +3 -2
- package/dist/utils/claude-settings.js.map +1 -1
- package/dist/utils/path-utils.d.ts +32 -0
- package/dist/utils/path-utils.d.ts.map +1 -0
- package/dist/utils/path-utils.js +121 -0
- package/dist/utils/path-utils.js.map +1 -0
- package/dist/utils/version.d.ts.map +1 -1
- package/dist/utils/version.js +1 -0
- package/dist/utils/version.js.map +1 -1
- package/dist/utils.d.ts +8 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +22 -0
- package/dist/utils.js.map +1 -1
- package/dist/vscode/vscode-server.js +2 -2
- package/dist/vscode/vscode-server.js.map +1 -1
- package/dist/vscode/vscode-tunnel-websocket.d.ts +9 -0
- package/dist/vscode/vscode-tunnel-websocket.d.ts.map +1 -1
- package/dist/vscode/vscode-tunnel-websocket.js +63 -38
- package/dist/vscode/vscode-tunnel-websocket.js.map +1 -1
- package/package.json +1 -1
|
@@ -48,22 +48,22 @@ const child_process_1 = require("child_process");
|
|
|
48
48
|
const fs = __importStar(require("fs"));
|
|
49
49
|
const os = __importStar(require("os"));
|
|
50
50
|
const path = __importStar(require("path"));
|
|
51
|
+
const constants_1 = require("../../constants");
|
|
51
52
|
const config_manager_1 = require("../../config-manager");
|
|
52
53
|
const docker_utils_1 = require("../../docker/docker-utils");
|
|
53
54
|
const i18n_1 = require("../../i18n");
|
|
54
55
|
const logger_1 = require("../../logger");
|
|
56
|
+
const utils_1 = require("../../utils");
|
|
55
57
|
const node_paths_1 = require("./node-paths");
|
|
56
58
|
Object.defineProperty(exports, "getCliEntryPoint", { enumerable: true, get: function () { return node_paths_1.getCliEntryPoint; } });
|
|
57
59
|
Object.defineProperty(exports, "getNodePath", { enumerable: true, get: function () { return node_paths_1.getNodePath; } });
|
|
58
60
|
const wrapper_helpers_1 = require("./wrapper-helpers");
|
|
61
|
+
const service_template_helpers_1 = require("./service-template-helpers");
|
|
62
|
+
const path_utils_1 = require("../../utils/path-utils");
|
|
59
63
|
const SERVICE_NAME = 'ai-support-agent.service';
|
|
60
64
|
const SERVICE_PREFIX = 'ai-support-agent';
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
function getLogDir() {
|
|
65
|
-
return path.join(os.homedir(), '.local', 'share', 'ai-support-agent', 'logs');
|
|
66
|
-
}
|
|
65
|
+
const getSystemdUserDir = path_utils_1.getLinuxSystemdUserDir;
|
|
66
|
+
const getLogDir = path_utils_1.getLinuxLogDir;
|
|
67
67
|
// ---------------------------------------------------------------------------
|
|
68
68
|
// Per-project unit helpers
|
|
69
69
|
// ---------------------------------------------------------------------------
|
|
@@ -165,26 +165,7 @@ function detectSystemSystemdUnits() {
|
|
|
165
165
|
return [];
|
|
166
166
|
}
|
|
167
167
|
}
|
|
168
|
-
|
|
169
|
-
function getProjectConfigHostDir(tenantCode, projectCode) {
|
|
170
|
-
const configDir = process.env.AI_SUPPORT_AGENT_CONFIG_DIR
|
|
171
|
-
? path.resolve(process.env.AI_SUPPORT_AGENT_CONFIG_DIR)
|
|
172
|
-
: path.join(os.homedir(), '.ai-support-agent');
|
|
173
|
-
return path.join(configDir, 'projects', tenantCode, projectCode, '.ai-support-agent');
|
|
174
|
-
}
|
|
175
|
-
/** Returns the services dir where wrapper scripts are stored */
|
|
176
|
-
function getServicesDir() {
|
|
177
|
-
const configDir = process.env.AI_SUPPORT_AGENT_CONFIG_DIR
|
|
178
|
-
? path.resolve(process.env.AI_SUPPORT_AGENT_CONFIG_DIR)
|
|
179
|
-
: path.join(os.homedir(), '.ai-support-agent');
|
|
180
|
-
return path.join(configDir, 'services');
|
|
181
|
-
}
|
|
182
|
-
function getUpdateScriptPath() {
|
|
183
|
-
const configDir = process.env.AI_SUPPORT_AGENT_CONFIG_DIR
|
|
184
|
-
? path.resolve(process.env.AI_SUPPORT_AGENT_CONFIG_DIR)
|
|
185
|
-
: path.join(os.homedir(), '.ai-support-agent');
|
|
186
|
-
return path.join(configDir, 'update-and-restart.sh');
|
|
187
|
-
}
|
|
168
|
+
// getProjectConfigHostDir, getServicesDir, and getUpdateScriptPath are imported from ../../utils/path-utils
|
|
188
169
|
// ---------------------------------------------------------------------------
|
|
189
170
|
// Legacy single-unit generation (kept for backward compatibility / tests)
|
|
190
171
|
// ---------------------------------------------------------------------------
|
|
@@ -192,10 +173,10 @@ function generateServiceUnit(options) {
|
|
|
192
173
|
const { nodePath, entryPoint, logDir, verbose, docker } = options;
|
|
193
174
|
const execArgs = [nodePath, entryPoint, 'start'];
|
|
194
175
|
if (!docker) {
|
|
195
|
-
execArgs.push(
|
|
176
|
+
execArgs.push(constants_1.CLI_FLAG_NO_DOCKER);
|
|
196
177
|
}
|
|
197
178
|
if (verbose) {
|
|
198
|
-
execArgs.push(
|
|
179
|
+
execArgs.push(constants_1.CLI_FLAG_VERBOSE);
|
|
199
180
|
}
|
|
200
181
|
return `[Unit]
|
|
201
182
|
Description=AI Support Agent
|
|
@@ -209,8 +190,8 @@ Restart=always
|
|
|
209
190
|
RestartSec=10
|
|
210
191
|
Environment=PATH=/usr/local/bin:/usr/bin:/bin
|
|
211
192
|
Environment=HOME=${os.homedir()}
|
|
212
|
-
StandardOutput=append:${
|
|
213
|
-
StandardError=append:${
|
|
193
|
+
StandardOutput=append:${(0, path_utils_1.getAgentOutLog)(logDir)}
|
|
194
|
+
StandardError=append:${(0, path_utils_1.getAgentErrLog)(logDir)}
|
|
214
195
|
|
|
215
196
|
[Install]
|
|
216
197
|
WantedBy=default.target
|
|
@@ -233,8 +214,8 @@ function generateProjectServiceUnit(opts) {
|
|
|
233
214
|
// systemd's open fd, and the rotated generation would grow without
|
|
234
215
|
// bound). The wrapper.* files have no rotation but stay tiny because
|
|
235
216
|
// only the bootstrap noise lands there.
|
|
236
|
-
const escapedOutLog = systemdEscape(
|
|
237
|
-
const escapedErrLog = systemdEscape(
|
|
217
|
+
const escapedOutLog = systemdEscape((0, path_utils_1.getWrapperOutLog)(opts.logDir));
|
|
218
|
+
const escapedErrLog = systemdEscape((0, path_utils_1.getWrapperErrLog)(opts.logDir));
|
|
238
219
|
return `[Unit]
|
|
239
220
|
Description=AI Support Agent (${opts.unitName})
|
|
240
221
|
After=network-online.target
|
|
@@ -328,11 +309,23 @@ function generateWrapperScript(opts) {
|
|
|
328
309
|
envLines.push(` -e CLAUDE_CODE_OAUTH_TOKEN=${(0, wrapper_helpers_1.shellQuote)(opts.claudeCodeOauthToken)} \\`);
|
|
329
310
|
}
|
|
330
311
|
const containerArgs = [
|
|
331
|
-
'ai-support-agent', 'start',
|
|
312
|
+
'ai-support-agent', 'start', constants_1.CLI_FLAG_NO_DOCKER,
|
|
332
313
|
`--project ${qProjectArg}`,
|
|
333
314
|
];
|
|
334
315
|
if (opts.verbose)
|
|
335
|
-
containerArgs.push(
|
|
316
|
+
containerArgs.push(constants_1.CLI_FLAG_VERBOSE);
|
|
317
|
+
const dockerRunBlock = (0, service_template_helpers_1.buildDockerRunWithLogRotate)({
|
|
318
|
+
buildDockerRun: (outputRedirect) => [
|
|
319
|
+
`docker run --rm -i --name ${qContainerName} \\`,
|
|
320
|
+
` --user "\${_DOCKER_UID}:\${_DOCKER_GID}" \\`,
|
|
321
|
+
mountLines.join('\n'),
|
|
322
|
+
envLines.join('\n'),
|
|
323
|
+
` "\$IMAGE_TAG" \\`,
|
|
324
|
+
` ${containerArgs.join(' ')}${outputRedirect}`,
|
|
325
|
+
].join('\n'),
|
|
326
|
+
logDir: opts.logDir,
|
|
327
|
+
supervisorLabel: 'systemd',
|
|
328
|
+
});
|
|
336
329
|
return `#!/bin/bash
|
|
337
330
|
set -uo pipefail
|
|
338
331
|
|
|
@@ -378,63 +371,7 @@ docker rm -f ${qContainerName} 2>/dev/null || true
|
|
|
378
371
|
_DOCKER_UID=$(id -u)
|
|
379
372
|
_DOCKER_GID=$(id -g)
|
|
380
373
|
|
|
381
|
-
${
|
|
382
|
-
# Pipe stdout and stderr through SEPARATE \`ai-support-agent log-rotate\`
|
|
383
|
-
# subprocesses so the active log files are bounded (default 5MB × 5
|
|
384
|
-
# generations) AND each stream lands in its own file (agent.out.log /
|
|
385
|
-
# agent.err.log) — matching the pre-rotation layout that operators tail.
|
|
386
|
-
#
|
|
387
|
-
# Both rotators are invoked with \`--no-tee\` so they DO NOT echo back to
|
|
388
|
-
# stdout/stderr. The systemd unit's StandardOutput/Error is pointed at
|
|
389
|
-
# separate wrapper.*.log files (NOT the agent.*.log paths owned by the
|
|
390
|
-
# rotators), so we don't get a double-write race where systemd silently
|
|
391
|
-
# keeps appending to a rotated generation.
|
|
392
|
-
#
|
|
393
|
-
# Process substitution \`> >(cmd)\` / \`2> >(cmd)\` is bash-only; the
|
|
394
|
-
# shebang at line 1 (\`#!/bin/bash\`) guarantees it.
|
|
395
|
-
# Stream stdout/stderr to background rotator subprocesses via named FIFOs
|
|
396
|
-
# so we have EXPLICIT PIDs to wait on. Process substitution (\`> >(cmd)\`)
|
|
397
|
-
# is simpler but its children are not in the job table on bash 3.2
|
|
398
|
-
# (macOS's /bin/bash) — bare \`wait\` returns immediately, allowing the
|
|
399
|
-
# service-stop signal to SIGKILL the rotator mid-flush and lose the last
|
|
400
|
-
# few KB of logs. Background jobs started with \`&\` set \$! reliably on
|
|
401
|
-
# every supported bash, so this layout is portable.
|
|
402
|
-
_ROT_DIR=$(mktemp -d -t ai-support-agent-rot.XXXXXX)
|
|
403
|
-
trap 'rm -rf "\$_ROT_DIR" 2>/dev/null || true' EXIT
|
|
404
|
-
mkfifo "\$_ROT_DIR/out" "\$_ROT_DIR/err"
|
|
405
|
-
ai-support-agent log-rotate --no-tee ${(0, wrapper_helpers_1.shellQuote)(`${opts.logDir}/agent.out.log`)} < "\$_ROT_DIR/out" &
|
|
406
|
-
_ROT_OUT_PID=$!
|
|
407
|
-
ai-support-agent log-rotate --no-tee ${(0, wrapper_helpers_1.shellQuote)(`${opts.logDir}/agent.err.log`)} < "\$_ROT_DIR/err" >&2 &
|
|
408
|
-
_ROT_ERR_PID=$!
|
|
409
|
-
|
|
410
|
-
docker run --rm -i --name ${qContainerName} \\
|
|
411
|
-
--user "\${_DOCKER_UID}:\${_DOCKER_GID}" \\
|
|
412
|
-
${mountLines.join('\n')}
|
|
413
|
-
${envLines.join('\n')}
|
|
414
|
-
"\$IMAGE_TAG" \\
|
|
415
|
-
${containerArgs.join(' ')} \\
|
|
416
|
-
> "\$_ROT_DIR/out" 2> "\$_ROT_DIR/err"
|
|
417
|
-
|
|
418
|
-
# Redirecting to a FIFO does not propagate the rotator's exit into \$?,
|
|
419
|
-
# so EXIT_CODE is purely docker's exit status. The exit-42 update path is
|
|
420
|
-
# preserved (the rotator can never mask it).
|
|
421
|
-
EXIT_CODE=$?
|
|
422
|
-
|
|
423
|
-
# Wait on the rotators explicitly so they drain their FIFO before the
|
|
424
|
-
# wrapper exits (service supervisor will SIGKILL stragglers otherwise).
|
|
425
|
-
# docker closed its write end on exit, so each rotator sees EOF on stdin
|
|
426
|
-
# and exits naturally; the wait is bounded by pipe-buffer drain time.
|
|
427
|
-
wait "\$_ROT_OUT_PID" "\$_ROT_ERR_PID" 2>/dev/null || true
|
|
428
|
-
` : `\
|
|
429
|
-
docker run --rm -i --name ${qContainerName} \\
|
|
430
|
-
--user "\${_DOCKER_UID}:\${_DOCKER_GID}" \\
|
|
431
|
-
${mountLines.join('\n')}
|
|
432
|
-
${envLines.join('\n')}
|
|
433
|
-
"\$IMAGE_TAG" \\
|
|
434
|
-
${containerArgs.join(' ')}
|
|
435
|
-
|
|
436
|
-
EXIT_CODE=$?
|
|
437
|
-
`}
|
|
374
|
+
${dockerRunBlock}
|
|
438
375
|
if [ "$EXIT_CODE" -eq 42 ]; then
|
|
439
376
|
exec ${qUpdateScriptPath}
|
|
440
377
|
fi
|
|
@@ -444,13 +381,10 @@ exit "$EXIT_CODE"
|
|
|
444
381
|
}
|
|
445
382
|
/** Generate the update-and-restart.sh script for systemd */
|
|
446
383
|
function generateUpdateScript() {
|
|
447
|
-
const configDir = process.env.AI_SUPPORT_AGENT_CONFIG_DIR
|
|
448
|
-
? path.resolve(process.env.AI_SUPPORT_AGENT_CONFIG_DIR)
|
|
449
|
-
: path.join(os.homedir(), '.ai-support-agent');
|
|
450
384
|
// Quote interpolated paths so a HOME / config dir containing whitespace
|
|
451
385
|
// or shell metacharacters doesn't word-split the generated script.
|
|
452
386
|
const qSystemdDir = (0, wrapper_helpers_1.shellQuote)(getSystemdUserDir());
|
|
453
|
-
const qVersionFile = (0, wrapper_helpers_1.shellQuote)(path.join(
|
|
387
|
+
const qVersionFile = (0, wrapper_helpers_1.shellQuote)(path.join((0, config_manager_1.getConfigDir)(), 'update-version.json'));
|
|
454
388
|
return `#!/bin/bash
|
|
455
389
|
set -uo pipefail
|
|
456
390
|
shopt -s nullglob
|
|
@@ -556,7 +490,7 @@ function writeProjectServiceFiles(project, options = {}) {
|
|
|
556
490
|
(0, wrapper_helpers_1.assertProjectCodeIsSafe)(tenantCode);
|
|
557
491
|
const projectKey = `${sanitize(tenantCode)}-${sanitize(projectCode)}`;
|
|
558
492
|
const logDir = getLogDir();
|
|
559
|
-
const projectLogDir =
|
|
493
|
+
const projectLogDir = (0, path_utils_1.getProjectLogDir)(logDir, projectKey);
|
|
560
494
|
if (!fs.existsSync(projectLogDir)) {
|
|
561
495
|
fs.mkdirSync(projectLogDir, { recursive: true, mode: 0o700 });
|
|
562
496
|
}
|
|
@@ -564,12 +498,12 @@ function writeProjectServiceFiles(project, options = {}) {
|
|
|
564
498
|
if (!fs.existsSync(systemdDir)) {
|
|
565
499
|
fs.mkdirSync(systemdDir, { recursive: true });
|
|
566
500
|
}
|
|
567
|
-
const servicesDir = getServicesDir();
|
|
568
|
-
const projectServiceDir =
|
|
501
|
+
const servicesDir = (0, path_utils_1.getServicesDir)();
|
|
502
|
+
const projectServiceDir = (0, path_utils_1.getProjectServiceDir)(servicesDir, projectKey);
|
|
569
503
|
if (!fs.existsSync(projectServiceDir)) {
|
|
570
504
|
fs.mkdirSync(projectServiceDir, { recursive: true, mode: 0o700 });
|
|
571
505
|
}
|
|
572
|
-
const projectConfigHostDir = getProjectConfigHostDir(tenantCode, projectCode);
|
|
506
|
+
const projectConfigHostDir = (0, path_utils_1.getProjectConfigHostDir)(tenantCode, projectCode);
|
|
573
507
|
if (!fs.existsSync(projectConfigHostDir)) {
|
|
574
508
|
fs.mkdirSync(projectConfigHostDir, { recursive: true, mode: 0o700 });
|
|
575
509
|
}
|
|
@@ -582,8 +516,8 @@ function writeProjectServiceFiles(project, options = {}) {
|
|
|
582
516
|
// either crash on start (empty/missing) or expose host secrets to the
|
|
583
517
|
// container (blocked prefix).
|
|
584
518
|
const validatedProjectDir = (0, wrapper_helpers_1.validateProjectDirForMount)(project.projectDir);
|
|
585
|
-
const updateScriptPath = getUpdateScriptPath();
|
|
586
|
-
const wrapperScriptPath =
|
|
519
|
+
const updateScriptPath = (0, path_utils_1.getUpdateScriptPath)();
|
|
520
|
+
const wrapperScriptPath = (0, path_utils_1.getWrapperScriptPath)(projectServiceDir);
|
|
587
521
|
const wrapperScript = generateWrapperScript({
|
|
588
522
|
imageName: docker_utils_1.IMAGE_NAME,
|
|
589
523
|
tenantCode,
|
|
@@ -613,7 +547,7 @@ function writeProjectServiceFiles(project, options = {}) {
|
|
|
613
547
|
* updates take effect immediately.
|
|
614
548
|
*/
|
|
615
549
|
function installAndStartProject(project, options = {}) {
|
|
616
|
-
const updateScriptPath = getUpdateScriptPath();
|
|
550
|
+
const updateScriptPath = (0, path_utils_1.getUpdateScriptPath)();
|
|
617
551
|
const updateScript = generateUpdateScript();
|
|
618
552
|
writeFileEnsuringMode(updateScriptPath, updateScript, 0o700);
|
|
619
553
|
writeProjectServiceFiles(project, options);
|
|
@@ -625,7 +559,7 @@ function installAndStartProject(project, options = {}) {
|
|
|
625
559
|
(0, child_process_1.execSync)('systemctl --user daemon-reload', { stdio: 'pipe' });
|
|
626
560
|
}
|
|
627
561
|
catch (error) {
|
|
628
|
-
const message =
|
|
562
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
629
563
|
logger_1.logger.warn((0, i18n_1.t)('service.daemonReloadFailed', { message }));
|
|
630
564
|
return;
|
|
631
565
|
}
|
|
@@ -641,14 +575,14 @@ function installAndStartProject(project, options = {}) {
|
|
|
641
575
|
(0, child_process_1.execSync)(`systemctl --user enable "${unitFile}"`, { stdio: 'pipe' });
|
|
642
576
|
}
|
|
643
577
|
catch (error) {
|
|
644
|
-
const message =
|
|
578
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
645
579
|
logger_1.logger.warn((0, i18n_1.t)('service.enableFailed', { unit: unitFile, message }));
|
|
646
580
|
}
|
|
647
581
|
try {
|
|
648
582
|
(0, child_process_1.execSync)(`systemctl --user start "${unitFile}"`, { stdio: 'pipe' });
|
|
649
583
|
}
|
|
650
584
|
catch (error) {
|
|
651
|
-
const message =
|
|
585
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
652
586
|
logger_1.logger.warn((0, i18n_1.t)('service.loadWarning', { label: `${unitName}: ${message}` }));
|
|
653
587
|
return;
|
|
654
588
|
}
|
|
@@ -682,7 +616,7 @@ class LinuxServiceStrategy {
|
|
|
682
616
|
if (!fs.existsSync(systemdDir)) {
|
|
683
617
|
fs.mkdirSync(systemdDir, { recursive: true });
|
|
684
618
|
}
|
|
685
|
-
const updateScriptPath = getUpdateScriptPath();
|
|
619
|
+
const updateScriptPath = (0, path_utils_1.getUpdateScriptPath)();
|
|
686
620
|
const updateScript = generateUpdateScript();
|
|
687
621
|
writeFileEnsuringMode(updateScriptPath, updateScript, 0o700);
|
|
688
622
|
// Detect sanitize() collisions where two distinct valid codes
|
|
@@ -762,7 +696,7 @@ class LinuxServiceStrategy {
|
|
|
762
696
|
});
|
|
763
697
|
}
|
|
764
698
|
catch (error) {
|
|
765
|
-
const message =
|
|
699
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
766
700
|
logger_1.logger.error((0, i18n_1.t)('service.projectInstallFailed', { projectCode: project.projectCode, message }));
|
|
767
701
|
failedCount += 1;
|
|
768
702
|
}
|
|
@@ -793,7 +727,7 @@ class LinuxServiceStrategy {
|
|
|
793
727
|
fs.unlinkSync(unitPath);
|
|
794
728
|
}
|
|
795
729
|
catch (error) {
|
|
796
|
-
const message =
|
|
730
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
797
731
|
logger_1.logger.warn((0, i18n_1.t)('service.orphanUnitRemoveFailed', { unit: orphanUnitFile, message }));
|
|
798
732
|
}
|
|
799
733
|
}
|
|
@@ -809,7 +743,7 @@ class LinuxServiceStrategy {
|
|
|
809
743
|
(0, child_process_1.execSync)('systemctl --user daemon-reload', { stdio: 'pipe' });
|
|
810
744
|
}
|
|
811
745
|
catch (error) {
|
|
812
|
-
const message =
|
|
746
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
813
747
|
logger_1.logger.warn((0, i18n_1.t)('service.daemonReloadFailed', { message }));
|
|
814
748
|
}
|
|
815
749
|
for (const { projectCode, unitPath, unitFile } of writtenUnits) {
|
|
@@ -817,7 +751,7 @@ class LinuxServiceStrategy {
|
|
|
817
751
|
(0, child_process_1.execSync)(`systemctl --user enable "${unitFile}"`, { stdio: 'pipe' });
|
|
818
752
|
}
|
|
819
753
|
catch (error) {
|
|
820
|
-
const message =
|
|
754
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
821
755
|
logger_1.logger.warn((0, i18n_1.t)('service.enableFailed', { unit: unitFile, message }));
|
|
822
756
|
}
|
|
823
757
|
logger_1.logger.success((0, i18n_1.t)('service.projectInstalled', { projectCode, path: unitPath }));
|
|
@@ -884,7 +818,7 @@ class LinuxServiceStrategy {
|
|
|
884
818
|
(0, child_process_1.execSync)(`systemctl --user start "${unit}"`, { stdio: 'pipe' });
|
|
885
819
|
}
|
|
886
820
|
catch (error) {
|
|
887
|
-
const message =
|
|
821
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
888
822
|
// Include unit name so operators can identify the failing project
|
|
889
823
|
// when start runs over N units.
|
|
890
824
|
logger_1.logger.error((0, i18n_1.t)('service.unitStartFailed', { unit, message }));
|
|
@@ -908,7 +842,7 @@ class LinuxServiceStrategy {
|
|
|
908
842
|
(0, child_process_1.execSync)(`systemctl --user stop "${unit}"`, { stdio: 'pipe' });
|
|
909
843
|
}
|
|
910
844
|
catch (error) {
|
|
911
|
-
const message =
|
|
845
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
912
846
|
logger_1.logger.error((0, i18n_1.t)('service.unitStopFailed', { unit, message }));
|
|
913
847
|
failed = true;
|
|
914
848
|
}
|
|
@@ -936,7 +870,7 @@ class LinuxServiceStrategy {
|
|
|
936
870
|
(0, child_process_1.execSync)(`systemctl --user restart "${unit}"`, { stdio: 'pipe' });
|
|
937
871
|
}
|
|
938
872
|
catch (error) {
|
|
939
|
-
const message =
|
|
873
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
940
874
|
logger_1.logger.error((0, i18n_1.t)('service.unitRestartFailed', { unit, message }));
|
|
941
875
|
failed = true;
|
|
942
876
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linux-service.js","sourceRoot":"","sources":["../../../src/cli/service/linux-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"linux-service.js","sourceRoot":"","sources":["../../../src/cli/service/linux-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build the bash snippet that runs a docker container, optionally routing
|
|
3
|
+
* its stdout/stderr through `ai-support-agent log-rotate` subprocesses.
|
|
4
|
+
*
|
|
5
|
+
* Both Linux (systemd) and macOS (launchd) wrappers share the same FIFO +
|
|
6
|
+
* background-rotator pattern; only the surrounding `docker run` flags differ
|
|
7
|
+
* between platforms. This helper encapsulates the shared structure:
|
|
8
|
+
*
|
|
9
|
+
* - With `logDir`: sets up named FIFOs, starts two rotator subprocesses,
|
|
10
|
+
* runs the docker command (provided by `buildDockerRun`) with output
|
|
11
|
+
* redirected to those FIFOs, then waits for the rotators to drain before
|
|
12
|
+
* the wrapper exits.
|
|
13
|
+
* - Without `logDir`: runs the docker command directly with no log rotation.
|
|
14
|
+
*
|
|
15
|
+
* In both cases the result ends with `EXIT_CODE=$?` so the caller can check
|
|
16
|
+
* for the exit-42 self-update sentinel.
|
|
17
|
+
*
|
|
18
|
+
* @param opts.buildDockerRun Function that builds the `docker run …` command
|
|
19
|
+
* string. Receives `outputRedirect` — the bash
|
|
20
|
+
* fragment to append for stdout/stderr redirection
|
|
21
|
+
* (e.g. `> "$FIFO/out" 2> "$FIFO/err"` when log
|
|
22
|
+
* rotation is active, or `""` when not). The
|
|
23
|
+
* returned string must NOT include a trailing
|
|
24
|
+
* newline; the helper adds line endings as needed.
|
|
25
|
+
* @param opts.logDir When set, the directory under which `agent.out.log`
|
|
26
|
+
* and `agent.err.log` are written via log-rotate.
|
|
27
|
+
* @param opts.supervisorLabel Human-readable label for the inline comment
|
|
28
|
+
* ("systemd" or "launchd"). No effect on behaviour.
|
|
29
|
+
*/
|
|
30
|
+
export declare function buildDockerRunWithLogRotate(opts: {
|
|
31
|
+
buildDockerRun: (outputRedirect: string) => string;
|
|
32
|
+
logDir: string | undefined;
|
|
33
|
+
supervisorLabel: 'systemd' | 'launchd';
|
|
34
|
+
}): string;
|
|
35
|
+
//# sourceMappingURL=service-template-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-template-helpers.d.ts","sourceRoot":"","sources":["../../../src/cli/service/service-template-helpers.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAChD,cAAc,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,CAAA;IAClD,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,eAAe,EAAE,SAAS,GAAG,SAAS,CAAA;CACvC,GAAG,MAAM,CA+CT"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildDockerRunWithLogRotate = buildDockerRunWithLogRotate;
|
|
4
|
+
const wrapper_helpers_1 = require("./wrapper-helpers");
|
|
5
|
+
/**
|
|
6
|
+
* Build the bash snippet that runs a docker container, optionally routing
|
|
7
|
+
* its stdout/stderr through `ai-support-agent log-rotate` subprocesses.
|
|
8
|
+
*
|
|
9
|
+
* Both Linux (systemd) and macOS (launchd) wrappers share the same FIFO +
|
|
10
|
+
* background-rotator pattern; only the surrounding `docker run` flags differ
|
|
11
|
+
* between platforms. This helper encapsulates the shared structure:
|
|
12
|
+
*
|
|
13
|
+
* - With `logDir`: sets up named FIFOs, starts two rotator subprocesses,
|
|
14
|
+
* runs the docker command (provided by `buildDockerRun`) with output
|
|
15
|
+
* redirected to those FIFOs, then waits for the rotators to drain before
|
|
16
|
+
* the wrapper exits.
|
|
17
|
+
* - Without `logDir`: runs the docker command directly with no log rotation.
|
|
18
|
+
*
|
|
19
|
+
* In both cases the result ends with `EXIT_CODE=$?` so the caller can check
|
|
20
|
+
* for the exit-42 self-update sentinel.
|
|
21
|
+
*
|
|
22
|
+
* @param opts.buildDockerRun Function that builds the `docker run …` command
|
|
23
|
+
* string. Receives `outputRedirect` — the bash
|
|
24
|
+
* fragment to append for stdout/stderr redirection
|
|
25
|
+
* (e.g. `> "$FIFO/out" 2> "$FIFO/err"` when log
|
|
26
|
+
* rotation is active, or `""` when not). The
|
|
27
|
+
* returned string must NOT include a trailing
|
|
28
|
+
* newline; the helper adds line endings as needed.
|
|
29
|
+
* @param opts.logDir When set, the directory under which `agent.out.log`
|
|
30
|
+
* and `agent.err.log` are written via log-rotate.
|
|
31
|
+
* @param opts.supervisorLabel Human-readable label for the inline comment
|
|
32
|
+
* ("systemd" or "launchd"). No effect on behaviour.
|
|
33
|
+
*/
|
|
34
|
+
function buildDockerRunWithLogRotate(opts) {
|
|
35
|
+
const { buildDockerRun, logDir, supervisorLabel } = opts;
|
|
36
|
+
if (!logDir) {
|
|
37
|
+
return `${buildDockerRun('')}\n\nEXIT_CODE=$?\n`;
|
|
38
|
+
}
|
|
39
|
+
const qOutLog = (0, wrapper_helpers_1.shellQuote)(`${logDir}/agent.out.log`);
|
|
40
|
+
const qErrLog = (0, wrapper_helpers_1.shellQuote)(`${logDir}/agent.err.log`);
|
|
41
|
+
const dockerRunLine = buildDockerRun(' \\\n > "$_ROT_DIR/out" 2> "$_ROT_DIR/err"');
|
|
42
|
+
return `\
|
|
43
|
+
# Pipe stdout and stderr through SEPARATE \`ai-support-agent log-rotate\`
|
|
44
|
+
# subprocesses so the active log files are bounded (default 5MB × 5
|
|
45
|
+
# generations) AND each stream lands in its own file (agent.out.log /
|
|
46
|
+
# agent.err.log) — matching the pre-rotation layout that operators tail.
|
|
47
|
+
#
|
|
48
|
+
# Both rotators are invoked with \`--no-tee\` so they DO NOT echo back to
|
|
49
|
+
# stdout/stderr. The ${supervisorLabel} unit's StandardOutput/Error is pointed at
|
|
50
|
+
# separate wrapper.*.log files (NOT the agent.*.log paths owned by the
|
|
51
|
+
# rotators), so we don't get a double-write race where ${supervisorLabel}
|
|
52
|
+
# silently keeps appending to a rotated generation.
|
|
53
|
+
#
|
|
54
|
+
# We use named FIFOs + background rotators so we have EXPLICIT PIDs to wait
|
|
55
|
+
# on. Background jobs started with \`&\` set \$! reliably on every supported
|
|
56
|
+
# bash, so this layout is portable across bash 3.2 (macOS) and later.
|
|
57
|
+
_ROT_DIR=$(mktemp -d -t ai-support-agent-rot.XXXXXX)
|
|
58
|
+
trap 'rm -rf "\$_ROT_DIR" 2>/dev/null || true' EXIT
|
|
59
|
+
mkfifo "\$_ROT_DIR/out" "\$_ROT_DIR/err"
|
|
60
|
+
ai-support-agent log-rotate --no-tee ${qOutLog} < "\$_ROT_DIR/out" &
|
|
61
|
+
_ROT_OUT_PID=$!
|
|
62
|
+
ai-support-agent log-rotate --no-tee ${qErrLog} < "\$_ROT_DIR/err" >&2 &
|
|
63
|
+
_ROT_ERR_PID=$!
|
|
64
|
+
|
|
65
|
+
${dockerRunLine}
|
|
66
|
+
|
|
67
|
+
# Redirecting to a FIFO does not propagate the rotator's exit into \$?,
|
|
68
|
+
# so EXIT_CODE is purely docker's exit status. The exit-42 update path is
|
|
69
|
+
# preserved (the rotator can never mask it).
|
|
70
|
+
EXIT_CODE=$?
|
|
71
|
+
|
|
72
|
+
# Wait on the rotators explicitly so they drain their FIFO before the
|
|
73
|
+
# wrapper exits (${supervisorLabel} will SIGKILL stragglers otherwise). docker
|
|
74
|
+
# closed its write end on exit, so each rotator sees EOF on stdin and
|
|
75
|
+
# exits naturally; the wait is bounded by pipe-buffer drain time.
|
|
76
|
+
wait "\$_ROT_OUT_PID" "\$_ROT_ERR_PID" 2>/dev/null || true
|
|
77
|
+
`;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=service-template-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-template-helpers.js","sourceRoot":"","sources":["../../../src/cli/service/service-template-helpers.ts"],"names":[],"mappings":";;AA+BA,kEAmDC;AAlFD,uDAA8C;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,SAAgB,2BAA2B,CAAC,IAI3C;IACC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAA;IAExD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,GAAG,cAAc,CAAC,EAAE,CAAC,oBAAoB,CAAA;IAClD,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,4BAAU,EAAC,GAAG,MAAM,gBAAgB,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,IAAA,4BAAU,EAAC,GAAG,MAAM,gBAAgB,CAAC,CAAA;IACrD,MAAM,aAAa,GAAG,cAAc,CAAC,8CAA8C,CAAC,CAAA;IAEpF,OAAO;;;;;;;uBAOc,eAAe;;yDAEmB,eAAe;;;;;;;;;uCASjC,OAAO;;uCAEP,OAAO;;;EAG5C,aAAa;;;;;;;;mBAQI,eAAe;;;;CAIjC,CAAA;AACD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"win32-service.d.ts","sourceRoot":"","sources":["../../../src/cli/service/win32-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"win32-service.d.ts","sourceRoot":"","sources":["../../../src/cli/service/win32-service.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAS5F,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAkC9D;AAED,qBAAa,oBAAqB,YAAW,eAAe;IAC1D,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IA4CtC,SAAS,IAAI,IAAI;IAqBjB,KAAK,IAAI,IAAI;IAiBb,IAAI,IAAI,IAAI;IAiBZ,OAAO,IAAI,IAAI;IAuBf,MAAM,IAAI,aAAa;CAUxB"}
|
|
@@ -39,8 +39,10 @@ const child_process_1 = require("child_process");
|
|
|
39
39
|
const fs = __importStar(require("fs"));
|
|
40
40
|
const os = __importStar(require("os"));
|
|
41
41
|
const path = __importStar(require("path"));
|
|
42
|
+
const constants_1 = require("../../constants");
|
|
42
43
|
const i18n_1 = require("../../i18n");
|
|
43
44
|
const logger_1 = require("../../logger");
|
|
45
|
+
const utils_1 = require("../../utils");
|
|
44
46
|
const escape_xml_1 = require("./escape-xml");
|
|
45
47
|
const node_paths_1 = require("./node-paths");
|
|
46
48
|
const TASK_NAME = 'AISupportAgent';
|
|
@@ -52,10 +54,10 @@ function generateTaskXml(options) {
|
|
|
52
54
|
const { nodePath, entryPoint, verbose, docker } = options;
|
|
53
55
|
const args = [entryPoint, 'start'];
|
|
54
56
|
if (!docker) {
|
|
55
|
-
args.push(
|
|
57
|
+
args.push(constants_1.CLI_FLAG_NO_DOCKER);
|
|
56
58
|
}
|
|
57
59
|
if (verbose) {
|
|
58
|
-
args.push(
|
|
60
|
+
args.push(constants_1.CLI_FLAG_VERBOSE);
|
|
59
61
|
}
|
|
60
62
|
return `<?xml version="1.0" encoding="UTF-16"?>
|
|
61
63
|
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
|
|
@@ -109,7 +111,7 @@ class Win32ServiceStrategy {
|
|
|
109
111
|
});
|
|
110
112
|
}
|
|
111
113
|
catch (error) {
|
|
112
|
-
const message =
|
|
114
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
113
115
|
logger_1.logger.error((0, i18n_1.t)('service.schtasksFailed', { message }));
|
|
114
116
|
return;
|
|
115
117
|
}
|
|
@@ -136,7 +138,7 @@ class Win32ServiceStrategy {
|
|
|
136
138
|
(0, child_process_1.execSync)(`schtasks /Delete /TN "${TASK_NAME}" /F`, { stdio: 'pipe' });
|
|
137
139
|
}
|
|
138
140
|
catch (error) {
|
|
139
|
-
const message =
|
|
141
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
140
142
|
logger_1.logger.error((0, i18n_1.t)('service.schtasksFailed', { message }));
|
|
141
143
|
return;
|
|
142
144
|
}
|
|
@@ -155,7 +157,7 @@ class Win32ServiceStrategy {
|
|
|
155
157
|
logger_1.logger.success((0, i18n_1.t)('service.started'));
|
|
156
158
|
}
|
|
157
159
|
catch (error) {
|
|
158
|
-
const message =
|
|
160
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
159
161
|
logger_1.logger.error((0, i18n_1.t)('service.startFailed', { message }));
|
|
160
162
|
}
|
|
161
163
|
}
|
|
@@ -172,7 +174,7 @@ class Win32ServiceStrategy {
|
|
|
172
174
|
logger_1.logger.success((0, i18n_1.t)('service.stopped'));
|
|
173
175
|
}
|
|
174
176
|
catch (error) {
|
|
175
|
-
const message =
|
|
177
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
176
178
|
logger_1.logger.error((0, i18n_1.t)('service.stopFailed', { message }));
|
|
177
179
|
}
|
|
178
180
|
}
|
|
@@ -195,7 +197,7 @@ class Win32ServiceStrategy {
|
|
|
195
197
|
logger_1.logger.success((0, i18n_1.t)('service.restarted'));
|
|
196
198
|
}
|
|
197
199
|
catch (error) {
|
|
198
|
-
const message =
|
|
200
|
+
const message = (0, utils_1.getErrorMessage)(error);
|
|
199
201
|
logger_1.logger.error((0, i18n_1.t)('service.restartFailed', { message }));
|
|
200
202
|
}
|
|
201
203
|
}
|