@elizaos/cli 1.6.2-alpha.18 → 1.6.2-alpha.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/deploy/actions/deploy-ecs.d.ts +10 -0
- package/dist/commands/deploy/actions/deploy-ecs.d.ts.map +1 -0
- package/dist/commands/deploy/actions/deploy.d.ts +1 -1
- package/dist/commands/deploy/index.d.ts +1 -1
- package/dist/commands/deploy/index.d.ts.map +1 -1
- package/dist/commands/deploy/types.d.ts +36 -71
- package/dist/commands/deploy/types.d.ts.map +1 -1
- package/dist/commands/deploy/utils/api-client.d.ts +7 -5
- package/dist/commands/deploy/utils/api-client.d.ts.map +1 -1
- package/dist/commands/deploy/utils/docker-build.d.ts +58 -0
- package/dist/commands/deploy/utils/docker-build.d.ts.map +1 -0
- package/dist/index.js +38921 -39114
- package/dist/index.js.map +161 -57
- package/dist/templates/plugin-quick-starter/package.json +2 -2
- package/dist/templates/plugin-starter/package.json +2 -2
- package/dist/templates/project-starter/package.json +6 -6
- package/dist/templates/project-tee-starter/package.json +4 -4
- package/dist/version.d.ts +2 -2
- package/dist/version.js +2 -2
- package/package.json +8 -7
- package/templates/plugin-quick-starter/package.json +2 -2
- package/templates/plugin-starter/package.json +2 -2
- package/templates/project-starter/package.json +6 -6
- package/templates/project-tee-starter/package.json +4 -4
- package/dist/commands/deploy/actions/deploy-bootstrapper.d.ts +0 -10
- package/dist/commands/deploy/actions/deploy-bootstrapper.d.ts.map +0 -1
- package/dist/commands/deploy/utils/artifact.d.ts +0 -48
- package/dist/commands/deploy/utils/artifact.d.ts.map +0 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deploy Action with Docker and AWS ECS
|
|
3
|
+
* Deploys ElizaOS projects using Docker containers to AWS ECS
|
|
4
|
+
*/
|
|
5
|
+
import type { DeployOptions, DeploymentResult } from "../types";
|
|
6
|
+
/**
|
|
7
|
+
* Deploy project using Docker and AWS ECS
|
|
8
|
+
*/
|
|
9
|
+
export declare function deployWithECS(options: DeployOptions): Promise<DeploymentResult>;
|
|
10
|
+
//# sourceMappingURL=deploy-ecs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy-ecs.d.ts","sourceRoot":"","sources":["../../../../src/commands/deploy/actions/deploy-ecs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAGjB,MAAM,UAAU,CAAC;AAUlB;;GAEG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,gBAAgB,CAAC,CA4P3B"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import type { DeployOptions, DeploymentResult } from "../types";
|
|
5
5
|
/**
|
|
6
|
-
* Main deployment handler - uses
|
|
6
|
+
* Main deployment handler - uses Docker and AWS ECS
|
|
7
7
|
*/
|
|
8
8
|
export declare function deployProject(options: DeployOptions): Promise<DeploymentResult>;
|
|
9
9
|
//# sourceMappingURL=deploy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,eAAO,MAAM,MAAM,SAuGf,CAAC;AAEL,cAAc,SAAS,CAAC"}
|
|
@@ -1,21 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Deploy Command Types
|
|
3
|
-
* Types for deploying ElizaOS projects to
|
|
3
|
+
* Types for deploying ElizaOS projects to AWS ECS
|
|
4
4
|
*/
|
|
5
5
|
export interface DeployOptions {
|
|
6
6
|
name?: string;
|
|
7
7
|
port?: number;
|
|
8
|
-
|
|
8
|
+
desiredCount?: number;
|
|
9
|
+
cpu?: number;
|
|
10
|
+
memory?: number;
|
|
9
11
|
apiKey?: string;
|
|
10
12
|
apiUrl?: string;
|
|
11
13
|
env?: string[];
|
|
12
|
-
|
|
13
|
-
|
|
14
|
+
skipBuild?: boolean;
|
|
15
|
+
imageUri?: string;
|
|
14
16
|
}
|
|
15
17
|
export interface DeploymentResult {
|
|
16
18
|
success: boolean;
|
|
17
19
|
containerId?: string;
|
|
18
|
-
|
|
20
|
+
serviceArn?: string;
|
|
21
|
+
taskDefinitionArn?: string;
|
|
19
22
|
url?: string;
|
|
20
23
|
error?: string;
|
|
21
24
|
}
|
|
@@ -23,13 +26,13 @@ export interface ContainerConfig {
|
|
|
23
26
|
name: string;
|
|
24
27
|
description?: string;
|
|
25
28
|
port: number;
|
|
26
|
-
|
|
29
|
+
desired_count: number;
|
|
30
|
+
cpu: number;
|
|
31
|
+
memory: number;
|
|
27
32
|
environment_vars?: Record<string, string>;
|
|
28
33
|
health_check_path: string;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
artifact_id?: string;
|
|
32
|
-
artifact_checksum?: string;
|
|
34
|
+
ecr_image_uri: string;
|
|
35
|
+
ecr_repository_uri?: string;
|
|
33
36
|
image_tag?: string;
|
|
34
37
|
}
|
|
35
38
|
/**
|
|
@@ -107,85 +110,47 @@ export interface ContainerData {
|
|
|
107
110
|
id: string;
|
|
108
111
|
name: string;
|
|
109
112
|
status: string;
|
|
110
|
-
|
|
113
|
+
ecs_service_arn?: string;
|
|
114
|
+
ecs_task_definition_arn?: string;
|
|
115
|
+
load_balancer_url?: string;
|
|
111
116
|
deployment_url?: string;
|
|
112
|
-
cloudflare_url?: string;
|
|
113
117
|
error_message?: string;
|
|
114
118
|
created_at?: string;
|
|
115
119
|
updated_at?: string;
|
|
116
120
|
port?: number;
|
|
117
|
-
|
|
121
|
+
desired_count?: number;
|
|
122
|
+
cpu?: number;
|
|
123
|
+
memory?: number;
|
|
118
124
|
environment_vars?: Record<string, string>;
|
|
119
125
|
health_check_path?: string;
|
|
120
126
|
}
|
|
121
127
|
/**
|
|
122
|
-
*
|
|
128
|
+
* Image build and push request
|
|
123
129
|
*/
|
|
124
|
-
export interface
|
|
130
|
+
export interface ImageBuildRequest {
|
|
125
131
|
projectId: string;
|
|
126
132
|
version: string;
|
|
127
|
-
checksum: string;
|
|
128
|
-
size: number;
|
|
129
133
|
metadata?: Record<string, string>;
|
|
130
134
|
}
|
|
131
135
|
/**
|
|
132
|
-
*
|
|
133
|
-
*
|
|
134
|
-
*
|
|
135
|
-
* SECURITY: Raw credentials have been removed from this interface.
|
|
136
|
-
* The API no longer returns temporary AWS credentials to reduce attack surface.
|
|
137
|
-
* Use the presigned URLs (upload.url and download.url) which contain all
|
|
138
|
-
* necessary authentication embedded in the URL itself.
|
|
139
|
-
*/
|
|
140
|
-
export interface ArtifactUploadResponse {
|
|
141
|
-
artifactId: string;
|
|
142
|
-
upload: {
|
|
143
|
-
url: string;
|
|
144
|
-
method: "PUT";
|
|
145
|
-
expiresAt: string;
|
|
146
|
-
};
|
|
147
|
-
download: {
|
|
148
|
-
url: string;
|
|
149
|
-
method: "GET";
|
|
150
|
-
expiresAt: string;
|
|
151
|
-
};
|
|
152
|
-
artifact: {
|
|
153
|
-
id: string;
|
|
154
|
-
version: string;
|
|
155
|
-
checksum: string;
|
|
156
|
-
size: number;
|
|
157
|
-
r2Key?: string;
|
|
158
|
-
r2Url?: string;
|
|
159
|
-
};
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* Artifact metadata stored in database
|
|
136
|
+
* Image build and push response from Cloud API
|
|
137
|
+
* Returns ECR repository and authentication information
|
|
163
138
|
*/
|
|
164
|
-
export interface
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
r2Key: string;
|
|
172
|
-
r2Url: string;
|
|
173
|
-
metadata?: Record<string, string>;
|
|
174
|
-
createdAt: Date;
|
|
175
|
-
createdBy: string;
|
|
139
|
+
export interface ImageBuildResponse {
|
|
140
|
+
ecrRepositoryUri: string;
|
|
141
|
+
ecrImageUri: string;
|
|
142
|
+
ecrImageTag: string;
|
|
143
|
+
authToken: string;
|
|
144
|
+
authTokenExpiresAt: string;
|
|
145
|
+
registryEndpoint: string;
|
|
176
146
|
}
|
|
177
147
|
/**
|
|
178
|
-
*
|
|
179
|
-
*/
|
|
180
|
-
export type DeploymentMode = "docker" | "bootstrapper";
|
|
181
|
-
/**
|
|
182
|
-
* Bootstrapper deployment config
|
|
148
|
+
* Docker build context
|
|
183
149
|
*/
|
|
184
|
-
export interface
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
envVars?: Record<string, string>;
|
|
150
|
+
export interface DockerBuildContext {
|
|
151
|
+
projectPath: string;
|
|
152
|
+
dockerfile?: string;
|
|
153
|
+
buildArgs?: Record<string, string>;
|
|
154
|
+
target?: string;
|
|
190
155
|
}
|
|
191
156
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* ElizaOS Cloud API Client
|
|
3
3
|
* Handles communication with the ElizaOS Cloud backend for deployments
|
|
4
4
|
*/
|
|
5
|
-
import type { ContainerConfig, CloudApiResponse, QuotaInfo, ContainerData
|
|
5
|
+
import type { ContainerConfig, CloudApiResponse, QuotaInfo, ContainerData } from "../types";
|
|
6
6
|
export interface ApiClientOptions {
|
|
7
7
|
apiKey: string;
|
|
8
8
|
apiUrl: string;
|
|
@@ -53,11 +53,13 @@ export declare class CloudApiClient {
|
|
|
53
53
|
intervalMs?: number;
|
|
54
54
|
}): Promise<CloudApiResponse<ContainerData>>;
|
|
55
55
|
/**
|
|
56
|
-
*
|
|
56
|
+
* Request ECR credentials and repository for image build
|
|
57
57
|
*/
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
58
|
+
requestImageBuild(request: {
|
|
59
|
+
projectId: string;
|
|
60
|
+
version: string;
|
|
61
|
+
metadata?: Record<string, string>;
|
|
62
|
+
}): Promise<CloudApiResponse<any>>;
|
|
61
63
|
}
|
|
62
64
|
/**
|
|
63
65
|
* Get API credentials from environment or config
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../../src/commands/deploy/utils/api-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAEhB,SAAS,EACT,aAAa,
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../../../src/commands/deploy/utils/api-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAEhB,SAAS,EACT,aAAa,EACd,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;gBAEhC,OAAO,EAAE,gBAAgB;IAKrC;;OAEG;YACW,gBAAgB;IAwB9B;;OAEG;YACW,kBAAkB;IAehC;;OAEG;IACH,OAAO,CAAC,cAAc;IAWtB;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IA+BtD;;OAEG;IACG,eAAe,CACnB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAoC3C;;OAEG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAuBjF;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC;IA4BlE;;OAEG;IACG,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA4BrE;;;OAGG;IACG,iBAAiB,CACrB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KAChB,GACL,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAsD3C;;OAEG;IACG,iBAAiB,CACrB,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GACjF,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;CA0ClC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,IAAI,CAaP"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Docker Build Utilities
|
|
3
|
+
* Handles Docker image building and pushing to ECR
|
|
4
|
+
*/
|
|
5
|
+
export interface DockerBuildOptions {
|
|
6
|
+
projectPath: string;
|
|
7
|
+
dockerfile?: string;
|
|
8
|
+
imageTag: string;
|
|
9
|
+
buildArgs?: Record<string, string>;
|
|
10
|
+
target?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface DockerBuildResult {
|
|
13
|
+
success: boolean;
|
|
14
|
+
imageTag: string;
|
|
15
|
+
imageId?: string;
|
|
16
|
+
size?: number;
|
|
17
|
+
checksum?: string;
|
|
18
|
+
error?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface DockerPushOptions {
|
|
21
|
+
imageTag: string;
|
|
22
|
+
ecrRegistryUrl: string;
|
|
23
|
+
ecrAuthToken: string;
|
|
24
|
+
}
|
|
25
|
+
export interface DockerPushResult {
|
|
26
|
+
success: boolean;
|
|
27
|
+
imageDigest?: string;
|
|
28
|
+
repositoryUri?: string;
|
|
29
|
+
error?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Check if Docker is installed and running
|
|
33
|
+
*/
|
|
34
|
+
export declare function checkDockerAvailable(): Promise<boolean>;
|
|
35
|
+
/**
|
|
36
|
+
* Ensure Dockerfile exists, create from template if needed
|
|
37
|
+
*/
|
|
38
|
+
export declare function ensureDockerfile(projectPath: string): Promise<string>;
|
|
39
|
+
/**
|
|
40
|
+
* Build Docker image
|
|
41
|
+
*/
|
|
42
|
+
export declare function buildDockerImage(options: DockerBuildOptions): Promise<DockerBuildResult>;
|
|
43
|
+
/**
|
|
44
|
+
* Push Docker image to ECR
|
|
45
|
+
*/
|
|
46
|
+
export declare function pushDockerImage(options: DockerPushOptions): Promise<DockerPushResult>;
|
|
47
|
+
/**
|
|
48
|
+
* Build and push Docker image in one operation
|
|
49
|
+
*/
|
|
50
|
+
export declare function buildAndPushImage(buildOptions: DockerBuildOptions, pushOptions: DockerPushOptions): Promise<{
|
|
51
|
+
buildResult: DockerBuildResult;
|
|
52
|
+
pushResult?: DockerPushResult;
|
|
53
|
+
}>;
|
|
54
|
+
/**
|
|
55
|
+
* Clean up local Docker images
|
|
56
|
+
*/
|
|
57
|
+
export declare function cleanupLocalImages(imageTags: string[]): Promise<void>;
|
|
58
|
+
//# sourceMappingURL=docker-build.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker-build.d.ts","sourceRoot":"","sources":["../../../../src/commands/deploy/utils/docker-build.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CAQ7D;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsC3E;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAwF5B;AA2CD;;GAEG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAwC3B;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,kBAAkB,EAChC,WAAW,EAAE,iBAAiB,GAC7B,OAAO,CAAC;IACT,WAAW,EAAE,iBAAiB,CAAC;IAC/B,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B,CAAC,CAeD;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAc3E"}
|