@action-llama/action-llama 0.10.2 → 0.11.0
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/AGENTS.md +17 -6
- package/README.md +8 -4
- package/dist/agents/container-entry.d.ts.map +1 -1
- package/dist/agents/container-entry.js +37 -0
- package/dist/agents/container-entry.js.map +1 -1
- package/dist/agents/container-runner.d.ts +4 -0
- package/dist/agents/container-runner.d.ts.map +1 -1
- package/dist/agents/container-runner.js +82 -5
- package/dist/agents/container-runner.js.map +1 -1
- package/dist/agents/execution-engine.d.ts +2 -0
- package/dist/agents/execution-engine.d.ts.map +1 -1
- package/dist/agents/execution-engine.js +5 -1
- package/dist/agents/execution-engine.js.map +1 -1
- package/dist/agents/runner.d.ts +3 -0
- package/dist/agents/runner.d.ts.map +1 -1
- package/dist/agents/runner.js +45 -2
- package/dist/agents/runner.js.map +1 -1
- package/dist/cli/commands/chat.d.ts +5 -2
- package/dist/cli/commands/chat.d.ts.map +1 -1
- package/dist/cli/commands/chat.js +240 -23
- package/dist/cli/commands/chat.js.map +1 -1
- package/dist/cli/commands/cloud-deploy.d.ts.map +1 -1
- package/dist/cli/commands/cloud-deploy.js +5 -47
- package/dist/cli/commands/cloud-deploy.js.map +1 -1
- package/dist/cli/commands/cloud-setup.d.ts.map +1 -1
- package/dist/cli/commands/cloud-setup.js +20 -33
- package/dist/cli/commands/cloud-setup.js.map +1 -1
- package/dist/cli/commands/cloud-teardown.d.ts.map +1 -1
- package/dist/cli/commands/cloud-teardown.js +6 -126
- package/dist/cli/commands/cloud-teardown.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts +0 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +19 -14
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/kill.d.ts +1 -1
- package/dist/cli/commands/kill.d.ts.map +1 -1
- package/dist/cli/commands/kill.js +17 -6
- package/dist/cli/commands/kill.js.map +1 -1
- package/dist/cli/commands/logs.d.ts.map +1 -1
- package/dist/cli/commands/logs.js +104 -58
- package/dist/cli/commands/logs.js.map +1 -1
- package/dist/cli/commands/pause.d.ts +1 -1
- package/dist/cli/commands/pause.d.ts.map +1 -1
- package/dist/cli/commands/pause.js +9 -6
- package/dist/cli/commands/pause.js.map +1 -1
- package/dist/cli/commands/resume.d.ts +1 -1
- package/dist/cli/commands/resume.d.ts.map +1 -1
- package/dist/cli/commands/resume.js +9 -6
- package/dist/cli/commands/resume.js.map +1 -1
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +12 -54
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +22 -39
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/gateway-client.d.ts +12 -0
- package/dist/cli/gateway-client.d.ts.map +1 -0
- package/dist/cli/gateway-client.js +27 -0
- package/dist/cli/gateway-client.js.map +1 -0
- package/dist/cli/main.js +49 -14
- package/dist/cli/main.js.map +1 -1
- package/dist/{shared/aws-constants.d.ts → cloud/aws/constants.d.ts} +3 -34
- package/dist/cloud/aws/constants.d.ts.map +1 -0
- package/dist/{shared/aws-constants.js → cloud/aws/constants.js} +3 -34
- package/dist/cloud/aws/constants.js.map +1 -0
- package/dist/cloud/{deploy-apprunner.d.ts → aws/deploy.d.ts} +6 -6
- package/dist/cloud/aws/deploy.d.ts.map +1 -0
- package/dist/cloud/{deploy-apprunner.js → aws/deploy.js} +2 -2
- package/dist/cloud/aws/deploy.js.map +1 -0
- package/dist/cloud/aws/iam.d.ts +37 -0
- package/dist/cloud/aws/iam.d.ts.map +1 -0
- package/dist/{cli/commands/cloud-iam.js → cloud/aws/iam.js} +30 -179
- package/dist/cloud/aws/iam.js.map +1 -0
- package/dist/cloud/aws/provider.d.ts +69 -0
- package/dist/cloud/aws/provider.d.ts.map +1 -0
- package/dist/cloud/aws/provider.js +173 -0
- package/dist/cloud/aws/provider.js.map +1 -0
- package/dist/cloud/aws/provision.d.ts +9 -0
- package/dist/cloud/aws/provision.d.ts.map +1 -0
- package/dist/{cli/commands/cloud-setup-ecs.js → cloud/aws/provision.js} +10 -9
- package/dist/cloud/aws/provision.js.map +1 -0
- package/dist/cloud/aws/teardown.d.ts +15 -0
- package/dist/cloud/aws/teardown.d.ts.map +1 -0
- package/dist/cloud/aws/teardown.js +74 -0
- package/dist/cloud/aws/teardown.js.map +1 -0
- package/dist/cloud/gcp/constants.d.ts +16 -0
- package/dist/cloud/gcp/constants.d.ts.map +1 -0
- package/dist/cloud/gcp/constants.js +16 -0
- package/dist/cloud/gcp/constants.js.map +1 -0
- package/dist/cloud/{deploy-cloudrun.d.ts → gcp/deploy.d.ts} +6 -6
- package/dist/cloud/gcp/deploy.d.ts.map +1 -0
- package/dist/cloud/{deploy-cloudrun.js → gcp/deploy.js} +7 -7
- package/dist/cloud/gcp/deploy.js.map +1 -0
- package/dist/cloud/gcp/iam.d.ts +20 -0
- package/dist/cloud/gcp/iam.d.ts.map +1 -0
- package/dist/cloud/gcp/iam.js +179 -0
- package/dist/cloud/gcp/iam.js.map +1 -0
- package/dist/cloud/gcp/provider.d.ts +28 -0
- package/dist/cloud/gcp/provider.d.ts.map +1 -0
- package/dist/cloud/gcp/provider.js +84 -0
- package/dist/cloud/gcp/provider.js.map +1 -0
- package/dist/cloud/gcp/provision.d.ts +14 -0
- package/dist/cloud/gcp/provision.d.ts.map +1 -0
- package/dist/cloud/gcp/provision.js +37 -0
- package/dist/cloud/gcp/provision.js.map +1 -0
- package/dist/cloud/gcp/teardown.d.ts +12 -0
- package/dist/cloud/gcp/teardown.d.ts.map +1 -0
- package/dist/cloud/gcp/teardown.js +67 -0
- package/dist/cloud/gcp/teardown.js.map +1 -0
- package/dist/cloud/image-builder.d.ts.map +1 -1
- package/dist/cloud/image-builder.js +115 -18
- package/dist/cloud/image-builder.js.map +1 -1
- package/dist/cloud/provider.d.ts +57 -0
- package/dist/cloud/provider.d.ts.map +1 -0
- package/dist/cloud/provider.js +21 -0
- package/dist/cloud/provider.js.map +1 -0
- package/dist/cloud/scheduler-image.d.ts.map +1 -1
- package/dist/cloud/scheduler-image.js +16 -3
- package/dist/cloud/scheduler-image.js.map +1 -1
- package/dist/cloud/state.d.ts +17 -0
- package/dist/cloud/state.d.ts.map +1 -0
- package/dist/cloud/state.js +48 -0
- package/dist/cloud/state.js.map +1 -0
- package/dist/docker/aws-shared.d.ts +6 -4
- package/dist/docker/aws-shared.d.ts.map +1 -1
- package/dist/docker/aws-shared.js +405 -23
- package/dist/docker/aws-shared.js.map +1 -1
- package/dist/docker/cloud-run-runtime.d.ts.map +1 -1
- package/dist/docker/cloud-run-runtime.js +10 -9
- package/dist/docker/cloud-run-runtime.js.map +1 -1
- package/dist/docker/ecs-runtime.d.ts +3 -1
- package/dist/docker/ecs-runtime.d.ts.map +1 -1
- package/dist/docker/ecs-runtime.js +78 -29
- package/dist/docker/ecs-runtime.js.map +1 -1
- package/dist/docker/image.d.ts +7 -0
- package/dist/docker/image.d.ts.map +1 -1
- package/dist/docker/image.js +31 -4
- package/dist/docker/image.js.map +1 -1
- package/dist/docker/lambda-runtime.js +1 -1
- package/dist/docker/lambda-runtime.js.map +1 -1
- package/dist/docker/local-runtime.js +4 -4
- package/dist/docker/local-runtime.js.map +1 -1
- package/dist/docker/network.d.ts.map +1 -1
- package/dist/docker/network.js +2 -2
- package/dist/docker/network.js.map +1 -1
- package/dist/docker/runtime.d.ts +23 -0
- package/dist/docker/runtime.d.ts.map +1 -1
- package/dist/gateway/api-key.d.ts +10 -0
- package/dist/gateway/api-key.d.ts.map +1 -0
- package/dist/gateway/api-key.js +19 -0
- package/dist/gateway/api-key.js.map +1 -0
- package/dist/gateway/auth.d.ts +16 -0
- package/dist/gateway/auth.d.ts.map +1 -0
- package/dist/gateway/auth.js +60 -0
- package/dist/gateway/auth.js.map +1 -0
- package/dist/gateway/index.d.ts +1 -0
- package/dist/gateway/index.d.ts.map +1 -1
- package/dist/gateway/index.js +33 -2
- package/dist/gateway/index.js.map +1 -1
- package/dist/gateway/routes/control.d.ts +6 -0
- package/dist/gateway/routes/control.d.ts.map +1 -1
- package/dist/gateway/routes/control.js +117 -0
- package/dist/gateway/routes/control.js.map +1 -1
- package/dist/gateway/routes/dashboard.d.ts +1 -1
- package/dist/gateway/routes/dashboard.d.ts.map +1 -1
- package/dist/gateway/routes/dashboard.js +144 -53
- package/dist/gateway/routes/dashboard.js.map +1 -1
- package/dist/gateway/views/dashboard-page.d.ts.map +1 -1
- package/dist/gateway/views/dashboard-page.js +93 -20
- package/dist/gateway/views/dashboard-page.js.map +1 -1
- package/dist/gateway/views/login-page.d.ts +2 -0
- package/dist/gateway/views/login-page.d.ts.map +1 -0
- package/dist/gateway/views/login-page.js +54 -0
- package/dist/gateway/views/login-page.js.map +1 -0
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +154 -36
- package/dist/scheduler/index.js.map +1 -1
- package/dist/scheduler/runner-pool.d.ts +5 -0
- package/dist/scheduler/runner-pool.d.ts.map +1 -1
- package/dist/scheduler/runner-pool.js +14 -0
- package/dist/scheduler/runner-pool.js.map +1 -1
- package/dist/scheduler/runtime-factory.d.ts +2 -0
- package/dist/scheduler/runtime-factory.d.ts.map +1 -1
- package/dist/scheduler/runtime-factory.js +35 -65
- package/dist/scheduler/runtime-factory.js.map +1 -1
- package/dist/setup/scaffold.d.ts.map +1 -1
- package/dist/setup/scaffold.js +25 -0
- package/dist/setup/scaffold.js.map +1 -1
- package/dist/shared/asm-backend.d.ts.map +1 -1
- package/dist/shared/asm-backend.js +2 -2
- package/dist/shared/asm-backend.js.map +1 -1
- package/dist/shared/config.d.ts +28 -13
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +40 -4
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/constants.d.ts +34 -0
- package/dist/shared/constants.d.ts.map +1 -0
- package/dist/shared/constants.js +34 -0
- package/dist/shared/constants.js.map +1 -0
- package/dist/shared/credential-backend.d.ts +1 -1
- package/dist/shared/filesystem-backend.d.ts +1 -1
- package/dist/shared/filesystem-backend.js +1 -1
- package/dist/shared/gsm-backend.d.ts.map +1 -1
- package/dist/shared/gsm-backend.js +2 -2
- package/dist/shared/gsm-backend.js.map +1 -1
- package/dist/shared/paths.d.ts +2 -0
- package/dist/shared/paths.d.ts.map +1 -1
- package/dist/shared/paths.js +3 -1
- package/dist/shared/paths.js.map +1 -1
- package/dist/shared/remote.d.ts +1 -0
- package/dist/shared/remote.d.ts.map +1 -1
- package/dist/shared/remote.js +4 -16
- package/dist/shared/remote.js.map +1 -1
- package/dist/shared/usage.d.ts +22 -0
- package/dist/shared/usage.d.ts.map +1 -0
- package/dist/shared/usage.js +43 -0
- package/dist/shared/usage.js.map +1 -0
- package/dist/telemetry/index.d.ts +57 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +189 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/providers/otel.d.ts +15 -0
- package/dist/telemetry/providers/otel.d.ts.map +1 -0
- package/dist/telemetry/providers/otel.js +77 -0
- package/dist/telemetry/providers/otel.js.map +1 -0
- package/dist/telemetry/providers/xray.d.ts +13 -0
- package/dist/telemetry/providers/xray.d.ts.map +1 -0
- package/dist/telemetry/providers/xray.js +33 -0
- package/dist/telemetry/providers/xray.js.map +1 -0
- package/dist/telemetry/types.d.ts +59 -0
- package/dist/telemetry/types.d.ts.map +1 -0
- package/dist/telemetry/types.js +2 -0
- package/dist/telemetry/types.js.map +1 -0
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +2 -0
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/plain-logger.d.ts.map +1 -1
- package/dist/tui/plain-logger.js +8 -2
- package/dist/tui/plain-logger.js.map +1 -1
- package/dist/tui/status-tracker.d.ts +4 -1
- package/dist/tui/status-tracker.d.ts.map +1 -1
- package/dist/tui/status-tracker.js +11 -1
- package/dist/tui/status-tracker.js.map +1 -1
- package/docker/adot-collector-config.yaml +57 -0
- package/package.json +9 -1
- package/dist/cli/commands/cloud-iam.d.ts +0 -17
- package/dist/cli/commands/cloud-iam.d.ts.map +0 -1
- package/dist/cli/commands/cloud-iam.js.map +0 -1
- package/dist/cli/commands/cloud-setup-ecs.d.ts +0 -9
- package/dist/cli/commands/cloud-setup-ecs.d.ts.map +0 -1
- package/dist/cli/commands/cloud-setup-ecs.js.map +0 -1
- package/dist/cloud/deploy-apprunner.d.ts.map +0 -1
- package/dist/cloud/deploy-apprunner.js.map +0 -1
- package/dist/cloud/deploy-cloudrun.d.ts.map +0 -1
- package/dist/cloud/deploy-cloudrun.js.map +0 -1
- package/dist/shared/aws-constants.d.ts.map +0 -1
- package/dist/shared/aws-constants.js.map +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { resolve } from "path";
|
|
2
2
|
import { discoverAgents, loadAgentConfig, loadGlobalConfig } from "../../shared/config.js";
|
|
3
|
+
import { gatewayFetch } from "../gateway-client.js";
|
|
3
4
|
export async function execute(opts) {
|
|
4
5
|
const projectPath = resolve(opts.project);
|
|
5
6
|
if (opts.cloud) {
|
|
@@ -8,44 +9,24 @@ export async function execute(opts) {
|
|
|
8
9
|
if (!cloud) {
|
|
9
10
|
throw new Error("No [cloud] section found in config.toml. Run 'al cloud setup' first.");
|
|
10
11
|
}
|
|
11
|
-
|
|
12
|
+
const { createCloudProvider } = await import("../../cloud/provider.js");
|
|
13
|
+
const provider = await createCloudProvider(cloud);
|
|
12
14
|
// Show scheduler service status
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
console.log(`
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
console.log("Scheduler: not deployed");
|
|
23
|
-
}
|
|
24
|
-
console.log("");
|
|
25
|
-
const { CloudRunJobRuntime } = await import("../../docker/cloud-run-runtime.js");
|
|
26
|
-
const runtime = new CloudRunJobRuntime(cloud);
|
|
27
|
-
console.log(`Cloud Run Jobs status (project: ${cloud.gcpProject}):\n`);
|
|
28
|
-
agents = await runtime.listRunningAgents();
|
|
15
|
+
const svc = await provider.getSchedulerStatus();
|
|
16
|
+
if (svc) {
|
|
17
|
+
console.log(`Scheduler (${cloud.provider}):`);
|
|
18
|
+
console.log(` URL: ${svc.serviceUrl}`);
|
|
19
|
+
console.log(` Status: ${svc.status}`);
|
|
20
|
+
if (svc.createdAt)
|
|
21
|
+
console.log(` Created: ${svc.createdAt.toISOString()}`);
|
|
29
22
|
}
|
|
30
23
|
else {
|
|
31
|
-
|
|
32
|
-
const svc = await getAppRunnerStatus(cloud);
|
|
33
|
-
if (svc) {
|
|
34
|
-
console.log("Scheduler (App Runner):");
|
|
35
|
-
console.log(` URL: ${svc.serviceUrl}`);
|
|
36
|
-
console.log(` Status: ${svc.status}`);
|
|
37
|
-
if (svc.createdAt)
|
|
38
|
-
console.log(` Created: ${svc.createdAt.toISOString()}`);
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
console.log("Scheduler: not deployed");
|
|
42
|
-
}
|
|
43
|
-
console.log("");
|
|
44
|
-
const { ECSFargateRuntime } = await import("../../docker/ecs-runtime.js");
|
|
45
|
-
const runtime = new ECSFargateRuntime(cloud);
|
|
46
|
-
console.log(`ECS tasks status (cluster: ${cloud.ecsCluster}):\n`);
|
|
47
|
-
agents = await runtime.listRunningAgents();
|
|
24
|
+
console.log("Scheduler: not deployed");
|
|
48
25
|
}
|
|
26
|
+
console.log("");
|
|
27
|
+
// List running agents
|
|
28
|
+
const runtime = provider.createRuntime();
|
|
29
|
+
const agents = await runtime.listRunningAgents();
|
|
49
30
|
if (agents.length === 0) {
|
|
50
31
|
console.log("No running agents.");
|
|
51
32
|
}
|
|
@@ -68,16 +49,16 @@ export async function execute(opts) {
|
|
|
68
49
|
const agentNames = discoverAgents(projectPath);
|
|
69
50
|
console.log(`AL Status — ${projectPath}\n`);
|
|
70
51
|
// Try to get running instances from gateway if available
|
|
71
|
-
const globalConfig = loadGlobalConfig(projectPath);
|
|
72
|
-
const gatewayPort = globalConfig.gateway?.port || 8080;
|
|
73
52
|
let schedulerInfo = null;
|
|
74
53
|
let instances = [];
|
|
54
|
+
let agentStatuses = [];
|
|
75
55
|
try {
|
|
76
|
-
const response = await
|
|
56
|
+
const response = await gatewayFetch({ project: projectPath, path: "/control/status" });
|
|
77
57
|
if (response.ok) {
|
|
78
58
|
const data = await response.json();
|
|
79
59
|
schedulerInfo = data.scheduler;
|
|
80
60
|
instances = data.instances || [];
|
|
61
|
+
agentStatuses = data.agents || [];
|
|
81
62
|
}
|
|
82
63
|
}
|
|
83
64
|
catch (error) {
|
|
@@ -123,14 +104,16 @@ export async function execute(opts) {
|
|
|
123
104
|
// Show agent configuration
|
|
124
105
|
for (const name of agentNames) {
|
|
125
106
|
const agentConfig = loadAgentConfig(projectPath, name);
|
|
126
|
-
|
|
107
|
+
const agentStatus = agentStatuses.find(a => a.name === name);
|
|
108
|
+
const pausedSuffix = agentStatus && !agentStatus.enabled ? " (PAUSED)" : "";
|
|
109
|
+
console.log(`${name}:${pausedSuffix}`);
|
|
127
110
|
console.log(` Schedule: ${agentConfig.schedule || "(none)"}`);
|
|
128
111
|
console.log("");
|
|
129
112
|
}
|
|
130
113
|
console.log(`Agents: ${agentNames.join(", ")}`);
|
|
131
114
|
// Fetch and display lock information (local mode only)
|
|
132
115
|
try {
|
|
133
|
-
const response = await
|
|
116
|
+
const response = await gatewayFetch({ project: projectPath, path: "/locks/status" });
|
|
134
117
|
if (response.ok) {
|
|
135
118
|
const data = await response.json();
|
|
136
119
|
if (data.locks && data.locks.length > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface GatewayFetchOpts {
|
|
2
|
+
project: string;
|
|
3
|
+
path: string;
|
|
4
|
+
method?: string;
|
|
5
|
+
body?: unknown;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Make an authenticated request to the local gateway.
|
|
9
|
+
* Reads the port from config.toml and the API key from the credential store.
|
|
10
|
+
*/
|
|
11
|
+
export declare function gatewayFetch(opts: GatewayFetchOpts): Promise<Response>;
|
|
12
|
+
//# sourceMappingURL=gateway-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateway-client.d.ts","sourceRoot":"","sources":["../../src/cli/gateway-client.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAuB5E"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { resolve } from "path";
|
|
2
|
+
import { loadGlobalConfig } from "../shared/config.js";
|
|
3
|
+
import { loadCredentialField } from "../shared/credentials.js";
|
|
4
|
+
/**
|
|
5
|
+
* Make an authenticated request to the local gateway.
|
|
6
|
+
* Reads the port from config.toml and the API key from the credential store.
|
|
7
|
+
*/
|
|
8
|
+
export async function gatewayFetch(opts) {
|
|
9
|
+
const projectPath = resolve(opts.project);
|
|
10
|
+
const globalConfig = loadGlobalConfig(projectPath);
|
|
11
|
+
const gatewayPort = globalConfig.gateway?.port || 8080;
|
|
12
|
+
const headers = {};
|
|
13
|
+
const apiKey = await loadCredentialField("gateway_api_key", "default", "key");
|
|
14
|
+
if (apiKey) {
|
|
15
|
+
headers["Authorization"] = `Bearer ${apiKey}`;
|
|
16
|
+
}
|
|
17
|
+
const init = {
|
|
18
|
+
method: opts.method || "GET",
|
|
19
|
+
headers,
|
|
20
|
+
};
|
|
21
|
+
if (opts.body !== undefined) {
|
|
22
|
+
headers["Content-Type"] = "application/json";
|
|
23
|
+
init.body = JSON.stringify(opts.body);
|
|
24
|
+
}
|
|
25
|
+
return fetch(`http://localhost:${gatewayPort}${opts.path}`, init);
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=gateway-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateway-client.js","sourceRoot":"","sources":["../../src/cli/gateway-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAS/D;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAsB;IACvD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC;IAEvD,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,iBAAiB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9E,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,MAAM,IAAI,GAAgB;QACxB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK;QAC5B,OAAO;KACR,CAAC;IAEF,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,KAAK,CAAC,oBAAoB,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC"}
|
package/dist/cli/main.js
CHANGED
|
@@ -4,6 +4,8 @@ import { readFileSync } from "fs";
|
|
|
4
4
|
import { dirname, resolve } from "path";
|
|
5
5
|
import { fileURLToPath } from "url";
|
|
6
6
|
import { withCommand } from "./with-command.js";
|
|
7
|
+
import { initTelemetry } from "../telemetry/index.js";
|
|
8
|
+
import { loadGlobalConfig } from "../shared/config.js";
|
|
7
9
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
8
10
|
const pkg = JSON.parse(readFileSync(resolve(__dirname, "../../package.json"), "utf-8"));
|
|
9
11
|
const program = new Command();
|
|
@@ -11,6 +13,34 @@ program
|
|
|
11
13
|
.name("al")
|
|
12
14
|
.description("Action Llama — automated development agents")
|
|
13
15
|
.version(pkg.version);
|
|
16
|
+
// Initialize telemetry based on project config if available
|
|
17
|
+
function initializeTelemetryForProject(projectPath = ".") {
|
|
18
|
+
try {
|
|
19
|
+
const globalConfig = loadGlobalConfig(projectPath);
|
|
20
|
+
if (globalConfig.telemetry?.enabled) {
|
|
21
|
+
const telemetry = initTelemetry(globalConfig.telemetry);
|
|
22
|
+
telemetry.init().catch((error) => {
|
|
23
|
+
// Silent fail to avoid disrupting CLI operation
|
|
24
|
+
console.debug("Failed to initialize telemetry:", error);
|
|
25
|
+
});
|
|
26
|
+
// Ensure telemetry shutdown on process exit
|
|
27
|
+
const gracefulShutdown = async () => {
|
|
28
|
+
try {
|
|
29
|
+
await telemetry.shutdown();
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
console.debug("Error during telemetry shutdown:", error);
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
process.on("SIGINT", gracefulShutdown);
|
|
36
|
+
process.on("SIGTERM", gracefulShutdown);
|
|
37
|
+
process.on("beforeExit", gracefulShutdown);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
// Ignore config loading errors - may not be in a project directory
|
|
42
|
+
}
|
|
43
|
+
}
|
|
14
44
|
// --- User-facing commands ---
|
|
15
45
|
program
|
|
16
46
|
.command("new")
|
|
@@ -40,6 +70,7 @@ program
|
|
|
40
70
|
.option("-g, --gateway", "enable the HTTP gateway server (required for webhooks, locks, and web UI)")
|
|
41
71
|
.option("-w, --web-ui", "enable web dashboard at http://localhost:<port>/dashboard (requires -g)")
|
|
42
72
|
.action(withCommand(async (opts) => {
|
|
73
|
+
initializeTelemetryForProject(opts.project);
|
|
43
74
|
const { execute } = await import("./commands/start.js");
|
|
44
75
|
await execute(opts);
|
|
45
76
|
}));
|
|
@@ -68,7 +99,7 @@ program
|
|
|
68
99
|
await execute(agent, opts);
|
|
69
100
|
}));
|
|
70
101
|
program
|
|
71
|
-
.command("
|
|
102
|
+
.command("stat")
|
|
72
103
|
.description("Show agent status")
|
|
73
104
|
.option("-p, --project <dir>", "project directory", ".")
|
|
74
105
|
.option("-c, --cloud", "show cloud status")
|
|
@@ -78,36 +109,40 @@ program
|
|
|
78
109
|
}));
|
|
79
110
|
program
|
|
80
111
|
.command("kill")
|
|
81
|
-
.description("Kill a
|
|
82
|
-
.argument("<
|
|
112
|
+
.description("Kill an agent (all instances) or a single instance by ID")
|
|
113
|
+
.argument("<target>", "agent name or instance ID")
|
|
83
114
|
.option("-p, --project <dir>", "project directory", ".")
|
|
84
|
-
.action(withCommand(async (
|
|
115
|
+
.action(withCommand(async (target, opts) => {
|
|
85
116
|
const { execute } = await import("./commands/kill.js");
|
|
86
|
-
await execute(
|
|
117
|
+
await execute(target, opts);
|
|
87
118
|
}));
|
|
88
119
|
program
|
|
89
120
|
.command("pause")
|
|
90
|
-
.description("Pause the scheduler")
|
|
121
|
+
.description("Pause the scheduler, or a single agent by name")
|
|
122
|
+
.argument("[name]", "agent name (omit to pause the entire scheduler)")
|
|
91
123
|
.option("-p, --project <dir>", "project directory", ".")
|
|
92
|
-
.action(withCommand(async (opts) => {
|
|
124
|
+
.action(withCommand(async (name, opts) => {
|
|
93
125
|
const { execute } = await import("./commands/pause.js");
|
|
94
|
-
await execute(opts);
|
|
126
|
+
await execute(name, opts);
|
|
95
127
|
}));
|
|
96
128
|
program
|
|
97
129
|
.command("resume")
|
|
98
|
-
.description("Resume the scheduler")
|
|
130
|
+
.description("Resume the scheduler, or a single agent by name")
|
|
131
|
+
.argument("[name]", "agent name (omit to resume the entire scheduler)")
|
|
99
132
|
.option("-p, --project <dir>", "project directory", ".")
|
|
100
|
-
.action(withCommand(async (opts) => {
|
|
133
|
+
.action(withCommand(async (name, opts) => {
|
|
101
134
|
const { execute } = await import("./commands/resume.js");
|
|
102
|
-
await execute(opts);
|
|
135
|
+
await execute(name, opts);
|
|
103
136
|
}));
|
|
104
137
|
program
|
|
105
138
|
.command("chat")
|
|
106
|
-
.description("Open an interactive
|
|
139
|
+
.description("Open an interactive console (optionally scoped to an agent's environment)")
|
|
140
|
+
.argument("[agent]", "agent name — loads its credentials and environment")
|
|
107
141
|
.option("-p, --project <dir>", "project directory", ".")
|
|
108
|
-
.
|
|
142
|
+
.option("-c, --cloud", "load credentials from cloud secrets manager")
|
|
143
|
+
.action(withCommand(async (agent, opts) => {
|
|
109
144
|
const { execute } = await import("./commands/chat.js");
|
|
110
|
-
await execute(opts);
|
|
145
|
+
await execute({ ...opts, agent });
|
|
111
146
|
}));
|
|
112
147
|
// --- Credential management ---
|
|
113
148
|
const credsCmd = program
|
package/dist/cli/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* AWS-specific resource naming constants.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* should be derived from this file to prevent inconsistencies.
|
|
4
|
+
* For provider-agnostic constants, see src/shared/constants.ts.
|
|
6
5
|
*/
|
|
7
6
|
export declare const AWS_CONSTANTS: {
|
|
8
|
-
/** Default prefix for Secrets Manager secret names */
|
|
9
|
-
DEFAULT_SECRET_PREFIX: string;
|
|
10
7
|
/** CloudWatch log group for ECS tasks */
|
|
11
8
|
LOG_GROUP: string;
|
|
12
|
-
/** ECS `startedBy` tag for filtering our tasks */
|
|
13
|
-
STARTED_BY: string;
|
|
14
|
-
/** ECS task family / Cloud Run job name for an agent */
|
|
15
|
-
agentFamily: (agentName: string) => string;
|
|
16
|
-
/** Strip the `al-` prefix to recover the agent name */
|
|
17
|
-
agentNameFromFamily: (family: string) => string;
|
|
18
9
|
/** Per-agent IAM task role name */
|
|
19
10
|
taskRoleName: (agentName: string) => string;
|
|
20
|
-
/** Per-agent GCP service account name */
|
|
21
|
-
serviceAccountName: (agentName: string) => string;
|
|
22
|
-
/** Per-agent GCP service account email */
|
|
23
|
-
serviceAccountEmail: (agentName: string, gcpProject: string) => string;
|
|
24
11
|
/** CodeBuild project name for image builds */
|
|
25
12
|
CODEBUILD_PROJECT: string;
|
|
26
13
|
/** CodeBuild IAM role name */
|
|
@@ -37,20 +24,6 @@ export declare const AWS_CONSTANTS: {
|
|
|
37
24
|
buildBucket: (accountId: string, region: string) => string;
|
|
38
25
|
/** S3 key prefix for build artifacts */
|
|
39
26
|
BUILD_S3_PREFIX: string;
|
|
40
|
-
/** Docker container name for a local agent run */
|
|
41
|
-
containerName: (agentName: string, runId: string) => string;
|
|
42
|
-
/** Docker container name filter prefix */
|
|
43
|
-
CONTAINER_FILTER: string;
|
|
44
|
-
/** Docker network name */
|
|
45
|
-
NETWORK_NAME: string;
|
|
46
|
-
/** Default base Docker image */
|
|
47
|
-
DEFAULT_IMAGE: string;
|
|
48
|
-
/** Agent-specific Docker image tag */
|
|
49
|
-
agentImage: (agentName: string) => string;
|
|
50
|
-
/** Temp directory prefix for credential staging */
|
|
51
|
-
CREDS_TEMP_PREFIX: string;
|
|
52
|
-
/** Default GCP Cloud Run service account */
|
|
53
|
-
defaultGcpRunner: (gcpProject: string) => string;
|
|
54
27
|
/** Lambda function name for an agent */
|
|
55
28
|
lambdaFunction: (agentName: string) => string;
|
|
56
29
|
/** Maximum timeout for Lambda functions (seconds) */
|
|
@@ -71,9 +44,5 @@ export declare const AWS_CONSTANTS: {
|
|
|
71
44
|
APPRUNNER_ACCESS_ROLE: string;
|
|
72
45
|
/** CloudWatch log group for App Runner */
|
|
73
46
|
APPRUNNER_LOG_GROUP: string;
|
|
74
|
-
/** Scheduler Docker image tag */
|
|
75
|
-
SCHEDULER_IMAGE: string;
|
|
76
|
-
/** GCP Cloud Run service name for the cloud scheduler */
|
|
77
|
-
SCHEDULER_CLOUD_RUN_SERVICE: string;
|
|
78
47
|
};
|
|
79
|
-
//# sourceMappingURL=
|
|
48
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/cloud/aws/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,aAAa;IACxB,yCAAyC;;IAGzC,mCAAmC;8BACT,MAAM;IAEhC,8CAA8C;;IAG9C,8BAA8B;;IAG9B,wCAAwC;;IAGxC,iCAAiC;;IAGjC,kCAAkC;;IAGlC,+BAA+B;;IAG/B,0CAA0C;6BACjB,MAAM,UAAU,MAAM;IAE/C,wCAAwC;;IAGxC,wCAAwC;gCACZ,MAAM;IAElC,qDAAqD;;IAGrD,+CAA+C;;IAG/C,gDAAgD;;IAGhD,iCAAiC;;IAGjC,2CAA2C;gCACf,MAAM;IAElC,sDAAsD;;IAGtD,oCAAoC;;IAGpC,sCAAsC;;IAGtC,0CAA0C;;CAE8B,CAAC"}
|
|
@@ -1,26 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* AWS-specific resource naming constants.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* should be derived from this file to prevent inconsistencies.
|
|
4
|
+
* For provider-agnostic constants, see src/shared/constants.ts.
|
|
6
5
|
*/
|
|
7
6
|
export const AWS_CONSTANTS = {
|
|
8
|
-
/** Default prefix for Secrets Manager secret names */
|
|
9
|
-
DEFAULT_SECRET_PREFIX: "action-llama",
|
|
10
7
|
/** CloudWatch log group for ECS tasks */
|
|
11
8
|
LOG_GROUP: "/ecs/action-llama",
|
|
12
|
-
/** ECS `startedBy` tag for filtering our tasks */
|
|
13
|
-
STARTED_BY: "action-llama",
|
|
14
|
-
/** ECS task family / Cloud Run job name for an agent */
|
|
15
|
-
agentFamily: (agentName) => `al-${agentName}`,
|
|
16
|
-
/** Strip the `al-` prefix to recover the agent name */
|
|
17
|
-
agentNameFromFamily: (family) => family.startsWith("al-") ? family.slice(3) : family,
|
|
18
9
|
/** Per-agent IAM task role name */
|
|
19
10
|
taskRoleName: (agentName) => `al-${agentName}-task-role`,
|
|
20
|
-
/** Per-agent GCP service account name */
|
|
21
|
-
serviceAccountName: (agentName) => `al-${agentName}`,
|
|
22
|
-
/** Per-agent GCP service account email */
|
|
23
|
-
serviceAccountEmail: (agentName, gcpProject) => `al-${agentName}@${gcpProject}.iam.gserviceaccount.com`,
|
|
24
11
|
/** CodeBuild project name for image builds */
|
|
25
12
|
CODEBUILD_PROJECT: "al-image-builder",
|
|
26
13
|
/** CodeBuild IAM role name */
|
|
@@ -37,20 +24,6 @@ export const AWS_CONSTANTS = {
|
|
|
37
24
|
buildBucket: (accountId, region) => `al-builds-${accountId}-${region}`,
|
|
38
25
|
/** S3 key prefix for build artifacts */
|
|
39
26
|
BUILD_S3_PREFIX: "al-builds",
|
|
40
|
-
/** Docker container name for a local agent run */
|
|
41
|
-
containerName: (agentName, runId) => `al-${agentName}-${runId}`,
|
|
42
|
-
/** Docker container name filter prefix */
|
|
43
|
-
CONTAINER_FILTER: "al-",
|
|
44
|
-
/** Docker network name */
|
|
45
|
-
NETWORK_NAME: "al-net",
|
|
46
|
-
/** Default base Docker image */
|
|
47
|
-
DEFAULT_IMAGE: "al-agent:latest",
|
|
48
|
-
/** Agent-specific Docker image tag */
|
|
49
|
-
agentImage: (agentName) => `al-${agentName}:latest`,
|
|
50
|
-
/** Temp directory prefix for credential staging */
|
|
51
|
-
CREDS_TEMP_PREFIX: "al-creds-",
|
|
52
|
-
/** Default GCP Cloud Run service account */
|
|
53
|
-
defaultGcpRunner: (gcpProject) => `al-runner@${gcpProject}.iam.gserviceaccount.com`,
|
|
54
27
|
/** Lambda function name for an agent */
|
|
55
28
|
lambdaFunction: (agentName) => `al-${agentName}`,
|
|
56
29
|
/** Maximum timeout for Lambda functions (seconds) */
|
|
@@ -71,9 +44,5 @@ export const AWS_CONSTANTS = {
|
|
|
71
44
|
APPRUNNER_ACCESS_ROLE: "al-apprunner-access-role",
|
|
72
45
|
/** CloudWatch log group for App Runner */
|
|
73
46
|
APPRUNNER_LOG_GROUP: "/apprunner/al-scheduler",
|
|
74
|
-
/** Scheduler Docker image tag */
|
|
75
|
-
SCHEDULER_IMAGE: "al-scheduler:latest",
|
|
76
|
-
/** GCP Cloud Run service name for the cloud scheduler */
|
|
77
|
-
SCHEDULER_CLOUD_RUN_SERVICE: "al-scheduler",
|
|
78
47
|
};
|
|
79
|
-
//# sourceMappingURL=
|
|
48
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/cloud/aws/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,yCAAyC;IACzC,SAAS,EAAE,mBAAmB;IAE9B,mCAAmC;IACnC,YAAY,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,MAAM,SAAS,YAAY;IAEhE,8CAA8C;IAC9C,iBAAiB,EAAE,kBAAkB;IAErC,8BAA8B;IAC9B,cAAc,EAAE,mBAAmB;IAEnC,wCAAwC;IACxC,cAAc,EAAE,uBAAuB;IAEvC,iCAAiC;IACjC,iBAAiB,EAAE,sBAAsB;IAEzC,kCAAkC;IAClC,gBAAgB,EAAE,WAAW;IAE7B,+BAA+B;IAC/B,eAAe,EAAE,YAAY;IAE7B,0CAA0C;IAC1C,WAAW,EAAE,CAAC,SAAiB,EAAE,MAAc,EAAE,EAAE,CAAC,aAAa,SAAS,IAAI,MAAM,EAAE;IAEtF,wCAAwC;IACxC,eAAe,EAAE,WAAW;IAE5B,wCAAwC;IACxC,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,MAAM,SAAS,EAAE;IAExD,qDAAqD;IACrD,kBAAkB,EAAE,GAAG;IAEvB,+CAA+C;IAC/C,iBAAiB,EAAE,IAAI;IAEvB,gDAAgD;IAChD,gBAAgB,EAAE,aAAa;IAE/B,iCAAiC;IACjC,qBAAqB,EAAE,0BAA0B;IAEjD,2CAA2C;IAC3C,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,MAAM,SAAS,cAAc;IAEpE,sDAAsD;IACtD,iBAAiB,EAAE,cAAc;IAEjC,oCAAoC;IACpC,uBAAuB,EAAE,4BAA4B;IAErD,sCAAsC;IACtC,qBAAqB,EAAE,0BAA0B;IAEjD,0CAA0C;IAC1C,mBAAmB,EAAE,yBAAyB;CAC0B,CAAC"}
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
* Creates or updates an App Runner service that runs the scheduler as a
|
|
5
5
|
* long-running container with an HTTPS endpoint for webhooks.
|
|
6
6
|
*/
|
|
7
|
-
import type {
|
|
7
|
+
import type { EcsCloudConfig } from "../../shared/config.js";
|
|
8
8
|
export interface AppRunnerDeployOpts {
|
|
9
9
|
imageUri: string;
|
|
10
|
-
cloudConfig:
|
|
10
|
+
cloudConfig: EcsCloudConfig;
|
|
11
11
|
port?: number;
|
|
12
12
|
envVars?: Record<string, string>;
|
|
13
13
|
}
|
|
@@ -25,13 +25,13 @@ export declare function deployAppRunner(opts: AppRunnerDeployOpts): Promise<AppR
|
|
|
25
25
|
/**
|
|
26
26
|
* Get the current status of the scheduler App Runner service.
|
|
27
27
|
*/
|
|
28
|
-
export declare function getAppRunnerStatus(cloudConfig:
|
|
28
|
+
export declare function getAppRunnerStatus(cloudConfig: EcsCloudConfig): Promise<AppRunnerServiceInfo | null>;
|
|
29
29
|
/**
|
|
30
30
|
* Fetch recent scheduler logs from CloudWatch.
|
|
31
31
|
*/
|
|
32
|
-
export declare function getAppRunnerLogs(cloudConfig:
|
|
32
|
+
export declare function getAppRunnerLogs(cloudConfig: EcsCloudConfig, limit: number): Promise<string[]>;
|
|
33
33
|
/**
|
|
34
34
|
* Delete the scheduler App Runner service.
|
|
35
35
|
*/
|
|
36
|
-
export declare function teardownAppRunner(cloudConfig:
|
|
37
|
-
//# sourceMappingURL=deploy
|
|
36
|
+
export declare function teardownAppRunner(cloudConfig: EcsCloudConfig): Promise<void>;
|
|
37
|
+
//# sourceMappingURL=deploy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/cloud/aws/deploy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,cAAc,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA+F9F;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,WAAW,EAAE,cAAc,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAG1G;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA8BpG;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAclF"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { AppRunnerClient, CreateServiceCommand, UpdateServiceCommand, DescribeServiceCommand, DeleteServiceCommand, ListServicesCommand, } from "@aws-sdk/client-apprunner";
|
|
8
8
|
import { CloudWatchLogsClient, FilterLogEventsCommand, } from "@aws-sdk/client-cloudwatch-logs";
|
|
9
|
-
import { AWS_CONSTANTS } from "
|
|
9
|
+
import { AWS_CONSTANTS } from "./constants.js";
|
|
10
10
|
/**
|
|
11
11
|
* Deploy (create or update) the scheduler as an App Runner service.
|
|
12
12
|
*/
|
|
@@ -198,4 +198,4 @@ async function waitForService(client, serviceArn) {
|
|
|
198
198
|
function sleep(ms) {
|
|
199
199
|
return new Promise((r) => setTimeout(r, ms));
|
|
200
200
|
}
|
|
201
|
-
//# sourceMappingURL=deploy
|
|
201
|
+
//# sourceMappingURL=deploy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/cloud/aws/deploy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AWS IAM reconciliation for ECS cloud agents.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from cli/commands/cloud-iam.ts into the cloud provider module.
|
|
5
|
+
* Handles per-agent IAM task roles, Lambda roles, and ECR policies.
|
|
6
|
+
*/
|
|
7
|
+
import { IAMClient } from "@aws-sdk/client-iam";
|
|
8
|
+
import type { EcsCloudConfig } from "../../shared/config.js";
|
|
9
|
+
/**
|
|
10
|
+
* Reconcile per-agent ECS task roles and Secrets Manager policies.
|
|
11
|
+
*
|
|
12
|
+
* Creates an IAM task role for each agent with a trust policy for
|
|
13
|
+
* ecs-tasks.amazonaws.com, then attaches an inline policy granting
|
|
14
|
+
* secretsmanager:GetSecretValue on each agent's declared credentials.
|
|
15
|
+
*/
|
|
16
|
+
export declare function reconcileAwsAgents(projectPath: string, cloud: EcsCloudConfig): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Grant iam:PassRole on the given role ARNs to the calling IAM user.
|
|
19
|
+
* Required so the CLI can assign roles to ECS tasks and Lambda functions.
|
|
20
|
+
*/
|
|
21
|
+
export declare function grantPassRole(awsRegion: string, iamClient: IAMClient, roleArns: string[], policyName: string): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* Validate that per-agent ECS task roles exist and have correct trust policies.
|
|
24
|
+
*/
|
|
25
|
+
export declare function validateEcsRoles(projectPath: string, cloud: EcsCloudConfig): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Ensure the ECR repository policy grants Lambda pull access.
|
|
28
|
+
*/
|
|
29
|
+
export declare function ensureLambdaEcrPolicy(awsRegion: string, ecrRepoUri: string): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* Reconcile per-agent Lambda execution roles for agents with short timeouts.
|
|
32
|
+
*
|
|
33
|
+
* Agents with timeout <= LAMBDA_MAX_TIMEOUT are automatically routed to Lambda.
|
|
34
|
+
* Each gets an IAM role with Secrets Manager, ECR, and CloudWatch Logs access.
|
|
35
|
+
*/
|
|
36
|
+
export declare function reconcileLambdaRoles(projectPath: string, cloud: EcsCloudConfig): Promise<void>;
|
|
37
|
+
//# sourceMappingURL=iam.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iam.d.ts","sourceRoot":"","sources":["../../../src/cloud/aws/iam.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,SAAS,EAKV,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAM7D;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAsKlG;AAID;;;GAGG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAAE,EAClB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CA6Cf;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA8EhG;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BhG;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA2HpG"}
|