@agent-vm/agent-vm 0.0.87 → 0.0.88
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/build/docker-image-builder.d.ts +12 -0
- package/dist/build/docker-image-builder.d.ts.map +1 -1
- package/dist/build/docker-image-builder.js +57 -2
- package/dist/build/docker-image-builder.js.map +1 -1
- package/dist/build/gondolin-image-builder.d.ts +8 -1
- package/dist/build/gondolin-image-builder.d.ts.map +1 -1
- package/dist/build/gondolin-image-builder.js +38 -4
- package/dist/build/gondolin-image-builder.js.map +1 -1
- package/dist/build/managed-image-dockerfile.d.ts +2 -0
- package/dist/build/managed-image-dockerfile.d.ts.map +1 -1
- package/dist/build/managed-image-dockerfile.js +84 -15
- package/dist/build/managed-image-dockerfile.js.map +1 -1
- package/dist/build/prepared-gondolin-image-cache.d.ts +17 -0
- package/dist/build/prepared-gondolin-image-cache.d.ts.map +1 -0
- package/dist/build/prepared-gondolin-image-cache.js +91 -0
- package/dist/build/prepared-gondolin-image-cache.js.map +1 -0
- package/dist/cli/build-command.d.ts +7 -1
- package/dist/cli/build-command.d.ts.map +1 -1
- package/dist/cli/build-command.js +329 -79
- package/dist/cli/build-command.js.map +1 -1
- package/dist/cli/codex-harness-auth-command.js +1 -1
- package/dist/cli/codex-harness-auth-command.js.map +1 -1
- package/dist/cli/commands/build-definition.d.ts.map +1 -1
- package/dist/cli/commands/build-definition.js +3 -2
- package/dist/cli/commands/build-definition.js.map +1 -1
- package/dist/cli/init-command.d.ts.map +1 -1
- package/dist/cli/init-command.js +33 -29
- package/dist/cli/init-command.js.map +1 -1
- package/dist/cli/manual-templates.d.ts.map +1 -1
- package/dist/cli/manual-templates.js +6 -5
- package/dist/cli/manual-templates.js.map +1 -1
- package/dist/cli/run-task.d.ts +3 -1
- package/dist/cli/run-task.d.ts.map +1 -1
- package/dist/cli/run-task.js +54 -11
- package/dist/cli/run-task.js.map +1 -1
- package/dist/gateway/gateway-image-builder.d.ts.map +1 -1
- package/dist/gateway/gateway-image-builder.js +9 -0
- package/dist/gateway/gateway-image-builder.js.map +1 -1
- package/dist/operations/openclaw-deployment-doctor.d.ts.map +1 -1
- package/dist/operations/openclaw-deployment-doctor.js +41 -2
- package/dist/operations/openclaw-deployment-doctor.js.map +1 -1
- package/dist/shared/run-task.d.ts +9 -0
- package/dist/shared/run-task.d.ts.map +1 -1
- package/dist/shared/run-task.js.map +1 -1
- package/dist/tool-vm/tool-vm-lifecycle.d.ts.map +1 -1
- package/dist/tool-vm/tool-vm-lifecycle.js +9 -2
- package/dist/tool-vm/tool-vm-lifecycle.js.map +1 -1
- package/managed-images.json +5 -4
- package/package.json +11 -11
|
@@ -1,16 +1,28 @@
|
|
|
1
1
|
import type { TaskOutput } from '../shared/run-task.js';
|
|
2
2
|
export interface DockerCommandOptions {
|
|
3
|
+
readonly quiet?: boolean;
|
|
3
4
|
readonly streamPreview?: TaskOutput;
|
|
4
5
|
}
|
|
6
|
+
export interface DockerRootfsIdentity {
|
|
7
|
+
readonly architecture: string;
|
|
8
|
+
readonly layers: readonly string[];
|
|
9
|
+
readonly os: string;
|
|
10
|
+
readonly variant?: string;
|
|
11
|
+
}
|
|
5
12
|
export interface DockerImageBuilderDependencies {
|
|
6
13
|
readonly executeCommand?: (command: string, args: readonly string[], options: DockerCommandOptions) => Promise<{
|
|
7
14
|
readonly exitCode?: number;
|
|
8
15
|
} | void>;
|
|
9
16
|
}
|
|
17
|
+
export interface DockerImageInspectDependencies {
|
|
18
|
+
readonly inspectImage?: (imageTag: string) => Promise<unknown | undefined>;
|
|
19
|
+
}
|
|
10
20
|
export interface BuildDockerImageOptions {
|
|
11
21
|
readonly dockerfilePath: string;
|
|
12
22
|
readonly imageTag: string;
|
|
23
|
+
readonly quiet?: boolean;
|
|
13
24
|
readonly streamPreview?: TaskOutput;
|
|
14
25
|
}
|
|
26
|
+
export declare function resolveDockerRootfsIdentity(imageTag: string, dependencies?: DockerImageInspectDependencies): Promise<DockerRootfsIdentity | undefined>;
|
|
15
27
|
export declare function buildDockerImage(options: BuildDockerImageOptions, dependencies?: DockerImageBuilderDependencies): Promise<void>;
|
|
16
28
|
//# sourceMappingURL=docker-image-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker-image-builder.d.ts","sourceRoot":"","sources":["../../src/build/docker-image-builder.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC;CACpC;AAED,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,cAAc,CAAC,EAAE,CACzB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,EAAE,oBAAoB,KACzB,OAAO,CAAC;QACZ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,IAAI,CAAC,CAAC;CACV;AAED,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC;CACpC;
|
|
1
|
+
{"version":3,"file":"docker-image-builder.d.ts","sourceRoot":"","sources":["../../src/build/docker-image-builder.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC;CACpC;AAED,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,cAAc,CAAC,EAAE,CACzB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,EAAE,oBAAoB,KACzB,OAAO,CAAC;QACZ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,IAAI,CAAC,CAAC;CACV;AAED,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;CAC3E;AAED,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC;CACpC;AAkDD,wBAAsB,2BAA2B,CAChD,QAAQ,EAAE,MAAM,EAChB,YAAY,GAAE,8BAAmC,GAC/C,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAoC3C;AAED,wBAAsB,gBAAgB,CACrC,OAAO,EAAE,uBAAuB,EAChC,YAAY,GAAE,8BAAmC,GAC/C,OAAO,CAAC,IAAI,CAAC,CA4Bf"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
2
|
import { createInterface as createReadlineInterface } from 'node:readline';
|
|
3
3
|
import { execa } from 'execa';
|
|
4
|
+
function isRecord(value) {
|
|
5
|
+
return typeof value === 'object' && value !== null;
|
|
6
|
+
}
|
|
4
7
|
function pipeStreamAsLines(stream, sink) {
|
|
5
8
|
if (!stream) {
|
|
6
9
|
return;
|
|
@@ -12,7 +15,7 @@ function pipeStreamAsLines(stream, sink) {
|
|
|
12
15
|
}
|
|
13
16
|
async function executeDockerCommand(command, args, options) {
|
|
14
17
|
if (!options.streamPreview) {
|
|
15
|
-
await execa(command, args, { stdio: 'inherit' });
|
|
18
|
+
await execa(command, args, { stdio: options.quiet ? 'pipe' : 'inherit' });
|
|
16
19
|
return;
|
|
17
20
|
}
|
|
18
21
|
const child = execa(command, args, { stdio: ['inherit', 'pipe', 'pipe'] });
|
|
@@ -20,6 +23,55 @@ async function executeDockerCommand(command, args, options) {
|
|
|
20
23
|
pipeStreamAsLines(child.stderr, options.streamPreview);
|
|
21
24
|
await child;
|
|
22
25
|
}
|
|
26
|
+
async function inspectDockerImage(imageTag) {
|
|
27
|
+
try {
|
|
28
|
+
const result = await execa('docker', [
|
|
29
|
+
'image',
|
|
30
|
+
'inspect',
|
|
31
|
+
'--format',
|
|
32
|
+
'{{json .}}',
|
|
33
|
+
imageTag,
|
|
34
|
+
]);
|
|
35
|
+
return JSON.parse(result.stdout);
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return undefined;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
export async function resolveDockerRootfsIdentity(imageTag, dependencies = {}) {
|
|
42
|
+
const inspectedImage = await (dependencies.inspectImage ?? inspectDockerImage)(imageTag);
|
|
43
|
+
if (inspectedImage === undefined) {
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
if (!isRecord(inspectedImage)) {
|
|
47
|
+
throw new Error(`Docker image '${imageTag}' inspect result must be an object.`);
|
|
48
|
+
}
|
|
49
|
+
const architecture = inspectedImage.Architecture;
|
|
50
|
+
const os = inspectedImage.Os;
|
|
51
|
+
const variant = inspectedImage.Variant;
|
|
52
|
+
const rootfs = inspectedImage.RootFS;
|
|
53
|
+
if (typeof architecture !== 'string' || architecture.length === 0) {
|
|
54
|
+
throw new Error(`Docker image '${imageTag}' is missing architecture.`);
|
|
55
|
+
}
|
|
56
|
+
if (typeof os !== 'string' || os.length === 0) {
|
|
57
|
+
throw new Error(`Docker image '${imageTag}' is missing operating system.`);
|
|
58
|
+
}
|
|
59
|
+
if (!isRecord(rootfs)) {
|
|
60
|
+
throw new Error(`Docker image '${imageTag}' is missing rootfs metadata.`);
|
|
61
|
+
}
|
|
62
|
+
const layers = rootfs.Layers;
|
|
63
|
+
if (!Array.isArray(layers) ||
|
|
64
|
+
layers.length === 0 ||
|
|
65
|
+
!layers.every((layer) => typeof layer === 'string' && layer.length > 0)) {
|
|
66
|
+
throw new Error(`Docker image '${imageTag}' is missing ordered rootfs layers.`);
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
architecture,
|
|
70
|
+
layers,
|
|
71
|
+
os,
|
|
72
|
+
...(typeof variant === 'string' && variant.length > 0 ? { variant } : {}),
|
|
73
|
+
};
|
|
74
|
+
}
|
|
23
75
|
export async function buildDockerImage(options, dependencies = {}) {
|
|
24
76
|
const executeCommand = dependencies.executeCommand ?? executeDockerCommand;
|
|
25
77
|
const resolvedDockerfilePath = path.resolve(options.dockerfilePath);
|
|
@@ -33,7 +85,10 @@ export async function buildDockerImage(options, dependencies = {}) {
|
|
|
33
85
|
'-t',
|
|
34
86
|
options.imageTag,
|
|
35
87
|
dockerBuildContextDirectory,
|
|
36
|
-
],
|
|
88
|
+
], {
|
|
89
|
+
...(options.quiet ? { quiet: true } : {}),
|
|
90
|
+
...(options.streamPreview ? { streamPreview: options.streamPreview } : {}),
|
|
91
|
+
});
|
|
37
92
|
}
|
|
38
93
|
catch (error) {
|
|
39
94
|
throw new Error(`Docker build failed for ${options.imageTag}: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker-image-builder.js","sourceRoot":"","sources":["../../src/build/docker-image-builder.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,IAAI,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAE3E,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"docker-image-builder.js","sourceRoot":"","sources":["../../src/build/docker-image-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,9 @@ import type { TaskOutput } from '../shared/run-task.js';
|
|
|
3
3
|
export interface GondolinImageBuildRequest {
|
|
4
4
|
readonly buildConfigPath: string;
|
|
5
5
|
readonly cacheDir: string;
|
|
6
|
+
readonly fingerprintInput?: unknown;
|
|
6
7
|
readonly fullReset?: boolean;
|
|
8
|
+
readonly previewOutput?: boolean;
|
|
7
9
|
}
|
|
8
10
|
export interface RunGondolinBuildChildProcessOptions {
|
|
9
11
|
readonly childModuleUrl?: URL;
|
|
@@ -18,13 +20,18 @@ export interface GondolinImageBuilderDependencies {
|
|
|
18
20
|
readonly runBuildChildProcess?: (options: RunGondolinBuildChildProcessOptions) => Promise<BuildImageResult>;
|
|
19
21
|
readonly resolveRuntimeBuildVersionTag?: () => Promise<string>;
|
|
20
22
|
}
|
|
21
|
-
|
|
23
|
+
interface ComputeFingerprintFromConfigPathOptions {
|
|
24
|
+
readonly fingerprintInput?: unknown;
|
|
25
|
+
}
|
|
26
|
+
export declare function computeFingerprintFromConfigPath(buildConfigPath: string, optionsOrDependencies?: ComputeFingerprintFromConfigPathOptions | Pick<GondolinImageBuilderDependencies, 'resolveRuntimeBuildVersionTag'>, dependencies?: Pick<GondolinImageBuilderDependencies, 'resolveRuntimeBuildVersionTag'>): Promise<string>;
|
|
22
27
|
export declare function runGondolinImageBuildRequest(request: GondolinImageBuildRequest, dependencies?: Omit<GondolinImageBuilderDependencies, 'runBuildChildProcess'>): Promise<BuildImageResult>;
|
|
23
28
|
export declare function runGondolinBuildChildProcess(options: RunGondolinBuildChildProcessOptions): Promise<BuildImageResult>;
|
|
24
29
|
export declare function buildGondolinImage(options: {
|
|
25
30
|
readonly buildConfigPath: string;
|
|
26
31
|
readonly cacheDir: string;
|
|
32
|
+
readonly fingerprintInput?: unknown;
|
|
27
33
|
readonly fullReset?: boolean;
|
|
28
34
|
readonly streamPreview?: TaskOutput;
|
|
29
35
|
}, dependencies?: GondolinImageBuilderDependencies): Promise<BuildImageResult>;
|
|
36
|
+
export {};
|
|
30
37
|
//# sourceMappingURL=gondolin-image-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gondolin-image-builder.d.ts","sourceRoot":"","sources":["../../src/build/gondolin-image-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAGN,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGxD,MAAM,WAAW,yBAAyB;IACzC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"gondolin-image-builder.d.ts","sourceRoot":"","sources":["../../src/build/gondolin-image-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAGN,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGxD,MAAM,WAAW,yBAAyB;IACzC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,mCAAmC;IACnD,QAAQ,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC;CACnC;AAED,MAAM,WAAW,gCAAgC;IAChD,QAAQ,CAAC,UAAU,CAAC,EAAE,CACrB,OAAO,EAAE,iBAAiB,EAC1B,YAAY,CAAC,EAAE;QAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,KAChD,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC/B,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7E,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAC/B,OAAO,EAAE,mCAAmC,KACxC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC/B,QAAQ,CAAC,6BAA6B,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CAC/D;AAED,UAAU,uCAAuC;IAChD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACpC;AA+CD,wBAAsB,gCAAgC,CACrD,eAAe,EAAE,MAAM,EACvB,qBAAqB,GAClB,uCAAuC,GACvC,IAAI,CAAC,gCAAgC,EAAE,+BAA+B,CAAM,EAC/E,YAAY,GAAE,IAAI,CAAC,gCAAgC,EAAE,+BAA+B,CAAM,GACxF,OAAO,CAAC,MAAM,CAAC,CAqBjB;AAmED,wBAAsB,4BAA4B,CACjD,OAAO,EAAE,yBAAyB,EAClC,YAAY,GAAE,IAAI,CAAC,gCAAgC,EAAE,sBAAsB,CAAM,GAC/E,OAAO,CAAC,gBAAgB,CAAC,CAwB3B;AAED,wBAAsB,4BAA4B,CACjD,OAAO,EAAE,mCAAmC,GAC1C,OAAO,CAAC,gBAAgB,CAAC,CA+E3B;AAED,wBAAsB,kBAAkB,CACvC,OAAO,EAAE;IACR,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC;CACpC,EACD,YAAY,GAAE,gCAAqC,GACjD,OAAO,CAAC,gBAAgB,CAAC,CA0B3B"}
|
|
@@ -5,6 +5,12 @@ import { loadJsonConfigFile } from '../config/json-config-file.js';
|
|
|
5
5
|
import { resolveRuntimeBuildVersionTag as resolveRuntimeBuildVersionTagDefault } from './runtime-versions.js';
|
|
6
6
|
const CHILD_EXIT_GRACE_MS = 2_000;
|
|
7
7
|
const CHILD_STDERR_TAIL_BYTES = 16_384;
|
|
8
|
+
const silentTaskOutput = {
|
|
9
|
+
write: () => true,
|
|
10
|
+
};
|
|
11
|
+
function hasRuntimeBuildVersionDependency(optionsOrDependencies) {
|
|
12
|
+
return 'resolveRuntimeBuildVersionTag' in optionsOrDependencies;
|
|
13
|
+
}
|
|
8
14
|
async function loadBuildConfigFromJson(buildConfigPath) {
|
|
9
15
|
try {
|
|
10
16
|
return (await loadJsonConfigFile(buildConfigPath));
|
|
@@ -21,12 +27,19 @@ async function loadBuildConfigFromJson(buildConfigPath) {
|
|
|
21
27
|
});
|
|
22
28
|
}
|
|
23
29
|
}
|
|
24
|
-
export async function computeFingerprintFromConfigPath(buildConfigPath, dependencies = {}) {
|
|
30
|
+
export async function computeFingerprintFromConfigPath(buildConfigPath, optionsOrDependencies = {}, dependencies = {}) {
|
|
31
|
+
const options = hasRuntimeBuildVersionDependency(optionsOrDependencies)
|
|
32
|
+
? {}
|
|
33
|
+
: optionsOrDependencies;
|
|
34
|
+
const resolvedDependencies = hasRuntimeBuildVersionDependency(optionsOrDependencies)
|
|
35
|
+
? optionsOrDependencies
|
|
36
|
+
: dependencies;
|
|
25
37
|
const buildConfig = await loadBuildConfigFromJson(buildConfigPath);
|
|
26
|
-
const runtimeBuildVersionTag = await (
|
|
38
|
+
const runtimeBuildVersionTag = await (resolvedDependencies.resolveRuntimeBuildVersionTag ?? resolveRuntimeBuildVersionTagDefault)();
|
|
27
39
|
const effectiveBuildFingerprint = await computeEffectiveBuildFingerprint({
|
|
28
40
|
buildConfig,
|
|
29
41
|
configDir: path.dirname(path.resolve(buildConfigPath)),
|
|
42
|
+
...(options.fingerprintInput === undefined ? {} : { fingerprintInput: options.fingerprintInput }),
|
|
30
43
|
gondolinVersion: runtimeBuildVersionTag,
|
|
31
44
|
});
|
|
32
45
|
return effectiveBuildFingerprint.fingerprint;
|
|
@@ -84,6 +97,12 @@ function forwardChildStream(stream, output, onChunk) {
|
|
|
84
97
|
}
|
|
85
98
|
});
|
|
86
99
|
}
|
|
100
|
+
function createProcessStderrOutput() {
|
|
101
|
+
const writeToStderr = process.stderr.write.bind(process.stderr);
|
|
102
|
+
return {
|
|
103
|
+
write: (chunk) => writeToStderr(chunk),
|
|
104
|
+
};
|
|
105
|
+
}
|
|
87
106
|
export async function runGondolinImageBuildRequest(request, dependencies = {}) {
|
|
88
107
|
const loadBuildConfig = dependencies.loadBuildConfig ?? loadBuildConfigFromJson;
|
|
89
108
|
const buildImage = dependencies.buildImage ?? buildImageFromCore;
|
|
@@ -94,7 +113,11 @@ export async function runGondolinImageBuildRequest(request, dependencies = {}) {
|
|
|
94
113
|
buildConfig,
|
|
95
114
|
cacheDir: request.cacheDir,
|
|
96
115
|
configDir,
|
|
116
|
+
...(request.fingerprintInput === undefined
|
|
117
|
+
? {}
|
|
118
|
+
: { fingerprintInput: request.fingerprintInput }),
|
|
97
119
|
...(request.fullReset ? { fullReset: true } : {}),
|
|
120
|
+
...(request.previewOutput ? { output: createProcessStderrOutput() } : {}),
|
|
98
121
|
}, {
|
|
99
122
|
gondolinVersion: runtimeBuildVersionTag,
|
|
100
123
|
});
|
|
@@ -180,11 +203,22 @@ export async function buildGondolinImage(options, dependencies = {}) {
|
|
|
180
203
|
const request = {
|
|
181
204
|
buildConfigPath: options.buildConfigPath,
|
|
182
205
|
cacheDir: options.cacheDir,
|
|
206
|
+
...(options.fingerprintInput === undefined ? {} : { fingerprintInput: options.fingerprintInput }),
|
|
183
207
|
...(options.fullReset ? { fullReset: true } : {}),
|
|
208
|
+
...(options.streamPreview ? { previewOutput: true } : {}),
|
|
184
209
|
};
|
|
185
|
-
if (options.streamPreview) {
|
|
210
|
+
if (options.streamPreview || dependencies.runBuildChildProcess) {
|
|
186
211
|
const runBuildChildProcess = dependencies.runBuildChildProcess ?? runGondolinBuildChildProcess;
|
|
187
|
-
return await runBuildChildProcess({
|
|
212
|
+
return await runBuildChildProcess({
|
|
213
|
+
request,
|
|
214
|
+
streamPreview: options.streamPreview ?? silentTaskOutput,
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
if (Object.keys(dependencies).length === 0) {
|
|
218
|
+
return await runGondolinBuildChildProcess({
|
|
219
|
+
request,
|
|
220
|
+
streamPreview: silentTaskOutput,
|
|
221
|
+
});
|
|
188
222
|
}
|
|
189
223
|
return await runGondolinImageBuildRequest(request, dependencies);
|
|
190
224
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gondolin-image-builder.js","sourceRoot":"","sources":["../../src/build/gondolin-image-builder.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAG1C,OAAO,EACN,UAAU,IAAI,kBAAkB,EAChC,gCAAgC,GAIhC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,6BAA6B,IAAI,oCAAoC,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"gondolin-image-builder.js","sourceRoot":"","sources":["../../src/build/gondolin-image-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,7 @@ export interface ManagedDockerfilePlan {
|
|
|
38
38
|
readonly openClawAgentVmPluginPackage?: ManagedDockerfilePackagePlanEntry;
|
|
39
39
|
readonly openClawMcpPortalPluginPackage?: ManagedDockerfilePackagePlanEntry;
|
|
40
40
|
readonly mcpPortalPackage?: ManagedDockerfilePackagePlanEntry;
|
|
41
|
+
readonly openAiCodexCliPackage?: ManagedDockerfilePackagePlanEntry;
|
|
41
42
|
readonly openClawPackages: readonly ManagedDockerfilePackagePlanEntry[];
|
|
42
43
|
readonly warnings: readonly ManagedDockerfilePlanWarning[];
|
|
43
44
|
}
|
|
@@ -51,6 +52,7 @@ export interface ManagedBaseImageReference {
|
|
|
51
52
|
}
|
|
52
53
|
export interface ManagedImageRelease {
|
|
53
54
|
readonly baseImages: Readonly<Record<ManagedImageBase, ManagedBaseImageReference>>;
|
|
55
|
+
readonly openAiCodexCliVersion: string;
|
|
54
56
|
readonly openClawVersion: string;
|
|
55
57
|
}
|
|
56
58
|
export declare function generateManagedDockerfile(options: GenerateManagedDockerfileOptions): Promise<GenerateManagedDockerfileResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"managed-image-dockerfile.d.ts","sourceRoot":"","sources":["../../src/build/managed-image-dockerfile.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,GAAG,SAAS,GAAG,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"managed-image-dockerfile.d.ts","sourceRoot":"","sources":["../../src/build/managed-image-dockerfile.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@ import { formatZodError } from '../cli/format-zod-error.js';
|
|
|
7
7
|
const managedOpenClawAgentVmPluginPackageName = '@agent-vm/openclaw-agent-vm-plugin';
|
|
8
8
|
const managedOpenClawMcpPortalPluginPackageName = '@agent-vm/openclaw-mcp-portal-plugin';
|
|
9
9
|
const managedMcpPortalPackageName = '@agent-vm/mcp-portal';
|
|
10
|
+
const managedOpenAiCodexCliPackageName = '@openai/codex';
|
|
11
|
+
const managedCoreOpenClawPackageNames = ['openclaw', '@openclaw/codex'];
|
|
10
12
|
const managedOpenClawPackageNames = new Set([
|
|
11
13
|
managedOpenClawAgentVmPluginPackageName,
|
|
12
14
|
managedOpenClawMcpPortalPluginPackageName,
|
|
@@ -16,7 +18,7 @@ const managedOpenClawAgentVmPluginExtensionPath = '/home/openclaw/.openclaw/exte
|
|
|
16
18
|
const managedOpenClawMcpPortalPluginExtensionPath = '/home/openclaw/.openclaw/extensions/mcp-portal';
|
|
17
19
|
const managedPnpmHomePath = '/pnpm';
|
|
18
20
|
const managedPnpmGlobalDirectory = '/pnpm/global';
|
|
19
|
-
const
|
|
21
|
+
const exactPackageVersionPattern = /^\d+\.\d+\.\d+(?:[-+][0-9A-Za-z.-]+)?$/u;
|
|
20
22
|
const overlayCopySchema = z
|
|
21
23
|
.object({
|
|
22
24
|
from: z.string().min(1),
|
|
@@ -27,7 +29,7 @@ const managedImageOverlaySchema = z
|
|
|
27
29
|
.object({
|
|
28
30
|
schemaVersion: z.literal(1),
|
|
29
31
|
extraAptPackages: z.array(z.string().min(1)).default([]),
|
|
30
|
-
|
|
32
|
+
openClawPackageOverrides: z.array(z.string().min(1)).default([]),
|
|
31
33
|
copy: z.array(overlayCopySchema).default([]),
|
|
32
34
|
runAfterBase: z.array(z.string().min(1)).default([]),
|
|
33
35
|
})
|
|
@@ -48,20 +50,30 @@ const managedImageReleaseSchema = z
|
|
|
48
50
|
'worker-gateway': managedBaseImageReferenceSchema,
|
|
49
51
|
})
|
|
50
52
|
.strict(),
|
|
53
|
+
openAiCodexCliVersion: z.string().min(1),
|
|
51
54
|
openClawVersion: z.string().min(1),
|
|
52
55
|
})
|
|
53
56
|
.strict();
|
|
57
|
+
function hasLegacyOpenClawPackageOverlayKey(value) {
|
|
58
|
+
return (typeof value === 'object' &&
|
|
59
|
+
value !== null &&
|
|
60
|
+
!Array.isArray(value) &&
|
|
61
|
+
Object.hasOwn(value, 'extraOpenClawPackages'));
|
|
62
|
+
}
|
|
54
63
|
async function loadManagedImageOverlay(overlayPath) {
|
|
55
64
|
if (!overlayPath) {
|
|
56
65
|
return {
|
|
57
66
|
schemaVersion: 1,
|
|
58
67
|
extraAptPackages: [],
|
|
59
|
-
|
|
68
|
+
openClawPackageOverrides: [],
|
|
60
69
|
copy: [],
|
|
61
70
|
runAfterBase: [],
|
|
62
71
|
};
|
|
63
72
|
}
|
|
64
73
|
const rawOverlay = await loadJsonConfigFile(overlayPath);
|
|
74
|
+
if (hasLegacyOpenClawPackageOverlayKey(rawOverlay)) {
|
|
75
|
+
throw new Error(`Invalid managed image overlay at ${overlayPath}: rename extraOpenClawPackages to openClawPackageOverrides.`);
|
|
76
|
+
}
|
|
65
77
|
const parsedOverlay = managedImageOverlaySchema.safeParse(rawOverlay);
|
|
66
78
|
if (!parsedOverlay.success) {
|
|
67
79
|
throw new Error(formatZodError(`Invalid managed image overlay at ${overlayPath}:`, parsedOverlay.error));
|
|
@@ -98,16 +110,29 @@ function parsePackageSpec(packageSpec) {
|
|
|
98
110
|
function packageSpec(packageName, version) {
|
|
99
111
|
return `${packageName}@${version}`;
|
|
100
112
|
}
|
|
113
|
+
function isOpenClawRuntimePackageName(packageName) {
|
|
114
|
+
return packageName === 'openclaw' || packageName.startsWith('@openclaw/');
|
|
115
|
+
}
|
|
116
|
+
function assertValidOpenClawPackageOverride(packageSpecValue) {
|
|
117
|
+
const parsedPackageSpec = parsePackageSpec(packageSpecValue);
|
|
118
|
+
if (managedOpenClawPackageNames.has(parsedPackageSpec.name)) {
|
|
119
|
+
throw new Error(`openClawPackageOverrides cannot override managed package ${parsedPackageSpec.name}. Update the agent-vm release instead.`);
|
|
120
|
+
}
|
|
121
|
+
if (!isOpenClawRuntimePackageName(parsedPackageSpec.name)) {
|
|
122
|
+
throw new Error(`openClawPackageOverrides only accepts OpenClaw runtime package pins. Use openclaw@<version> or @openclaw/<name>@<version>, not ${packageSpecValue}.`);
|
|
123
|
+
}
|
|
124
|
+
if (parsedPackageSpec.version === undefined ||
|
|
125
|
+
!exactPackageVersionPattern.test(parsedPackageSpec.version)) {
|
|
126
|
+
throw new Error(`openClawPackageOverrides requires exact package versions. Use ${parsedPackageSpec.name}@<version>, not ${packageSpecValue}.`);
|
|
127
|
+
}
|
|
128
|
+
return parsedPackageSpec;
|
|
129
|
+
}
|
|
101
130
|
function renderManagedDockerfile(props) {
|
|
102
131
|
const lines = [
|
|
103
132
|
`FROM ${props.baseImage.repository}:${props.baseImage.tag}`,
|
|
104
133
|
'',
|
|
105
134
|
'# Generated by agent-vm from a managed image profile. Do not edit by hand.',
|
|
106
135
|
];
|
|
107
|
-
if (props.base === 'openclaw-gateway') {
|
|
108
|
-
lines.push(`COPY --from=${managedUvImageReference} /uv /uvx /usr/local/bin/`);
|
|
109
|
-
lines.push('RUN uv --version && uvx --version');
|
|
110
|
-
}
|
|
111
136
|
if (props.overlay.extraAptPackages.length > 0) {
|
|
112
137
|
lines.push('RUN apt-get update && apt-get install -y --no-install-recommends ' +
|
|
113
138
|
shellJoin(props.overlay.extraAptPackages) +
|
|
@@ -121,7 +146,10 @@ function renderManagedDockerfile(props) {
|
|
|
121
146
|
lines.push(`RUN pnpm config set global-dir ${managedPnpmGlobalDirectory} && pnpm config set global-bin-dir ${managedPnpmHomePath}`);
|
|
122
147
|
}
|
|
123
148
|
if (props.base === 'openclaw-gateway') {
|
|
124
|
-
if (!props.openClawAgentVmPluginPackageSpec ||
|
|
149
|
+
if (!props.openClawAgentVmPluginPackageSpec ||
|
|
150
|
+
!props.openClawMcpPortalPluginPackageSpec ||
|
|
151
|
+
!props.mcpPortalPackageSpec ||
|
|
152
|
+
!props.openAiCodexCliPackageSpec) {
|
|
125
153
|
throw new Error('OpenClaw gateway managed Dockerfiles require all managed OpenClaw plugin package specs.');
|
|
126
154
|
}
|
|
127
155
|
lines.push('RUN pnpm add -g ' +
|
|
@@ -129,6 +157,7 @@ function renderManagedDockerfile(props) {
|
|
|
129
157
|
props.openClawAgentVmPluginPackageSpec,
|
|
130
158
|
props.openClawMcpPortalPluginPackageSpec,
|
|
131
159
|
props.mcpPortalPackageSpec,
|
|
160
|
+
props.openAiCodexCliPackageSpec,
|
|
132
161
|
]));
|
|
133
162
|
}
|
|
134
163
|
if (props.base === 'tool-vm') {
|
|
@@ -140,6 +169,26 @@ function renderManagedDockerfile(props) {
|
|
|
140
169
|
if (props.openClawPackages.length > 0) {
|
|
141
170
|
lines.push('RUN pnpm add -g ' + shellJoin(props.openClawPackages.map((entry) => entry.spec)));
|
|
142
171
|
}
|
|
172
|
+
if (props.base === 'openclaw-gateway') {
|
|
173
|
+
lines.push([
|
|
174
|
+
'RUN openclaw_package_root="$(pnpm root -g)/openclaw" && \\',
|
|
175
|
+
' (cd "$openclaw_package_root" && node scripts/postinstall-bundled-plugins.mjs) && \\',
|
|
176
|
+
" printf '%s\\n' \\",
|
|
177
|
+
" '{' \\",
|
|
178
|
+
" ' \"gateway\": { \"mode\": \"local\", \"auth\": { \"mode\": \"token\" } },' \\",
|
|
179
|
+
" ' \"plugins\": {' \\",
|
|
180
|
+
" ' \"allow\": [\"memory-core\"],' \\",
|
|
181
|
+
" ' \"slots\": { \"memory\": \"memory-core\" },' \\",
|
|
182
|
+
" ' \"entries\": {' \\",
|
|
183
|
+
" ' \"memory-core\": { \"enabled\": true }' \\",
|
|
184
|
+
" ' }' \\",
|
|
185
|
+
" ' }' \\",
|
|
186
|
+
" '}' > /tmp/openclaw-plugin-stage-config.json && \\",
|
|
187
|
+
' chmod 600 /tmp/openclaw-plugin-stage-config.json && \\',
|
|
188
|
+
' (OPENCLAW_CONFIG_PATH=/tmp/openclaw-plugin-stage-config.json openclaw doctor --fix --non-interactive || true) && \\',
|
|
189
|
+
' rm -f /tmp/openclaw-plugin-stage-config.json /tmp/openclaw-plugin-stage-config.json.bak',
|
|
190
|
+
].join('\n'));
|
|
191
|
+
}
|
|
143
192
|
for (const copy of props.overlay.copy) {
|
|
144
193
|
lines.push(`COPY overlay/${copy.from} ${copy.to}`);
|
|
145
194
|
}
|
|
@@ -149,9 +198,15 @@ function renderManagedDockerfile(props) {
|
|
|
149
198
|
if (props.base === 'openclaw-gateway') {
|
|
150
199
|
lines.push([
|
|
151
200
|
'RUN package_root="$(pnpm root -g)" && \\',
|
|
201
|
+
' openclaw_package_root="$package_root/openclaw" && \\',
|
|
152
202
|
' mkdir -p /home/openclaw/.openclaw/extensions && \\',
|
|
203
|
+
' ln -sfn "$openclaw_package_root/dist/plugin-sdk/sandbox.js" /opt/openclaw-sdk/sandbox.js && \\',
|
|
204
|
+
' printf \'#!/bin/sh\\nexec /pnpm/openclaw "$@"\\n\' > /usr/local/bin/openclaw && \\',
|
|
205
|
+
' chmod 755 /usr/local/bin/openclaw && \\',
|
|
153
206
|
` ln -sfn "$package_root/@agent-vm/openclaw-agent-vm-plugin/dist" ${managedOpenClawAgentVmPluginExtensionPath} && \\`,
|
|
154
|
-
` ln -sfn "$package_root/@agent-vm/openclaw-mcp-portal-plugin/dist" ${managedOpenClawMcpPortalPluginExtensionPath}
|
|
207
|
+
` ln -sfn "$package_root/@agent-vm/openclaw-mcp-portal-plugin/dist" ${managedOpenClawMcpPortalPluginExtensionPath} && \\`,
|
|
208
|
+
' pnpm store prune && \\',
|
|
209
|
+
' rm -rf /root/.cache /root/.npm /tmp/*',
|
|
155
210
|
].join('\n'));
|
|
156
211
|
}
|
|
157
212
|
lines.push('');
|
|
@@ -160,13 +215,10 @@ function renderManagedDockerfile(props) {
|
|
|
160
215
|
function resolveOpenClawPackagePlanEntries(props) {
|
|
161
216
|
const entriesByName = new Map();
|
|
162
217
|
let overlayOpenClawVersion;
|
|
163
|
-
for (const overlayPackageSpec of props.overlay.
|
|
164
|
-
const parsedPackageSpec =
|
|
218
|
+
for (const overlayPackageSpec of props.overlay.openClawPackageOverrides) {
|
|
219
|
+
const parsedPackageSpec = assertValidOpenClawPackageOverride(overlayPackageSpec);
|
|
165
220
|
const name = parsedPackageSpec.name;
|
|
166
221
|
const version = parsedPackageSpec.version;
|
|
167
|
-
if (managedOpenClawPackageNames.has(name)) {
|
|
168
|
-
throw new Error(`extraOpenClawPackages cannot override managed package ${name}. Update the agent-vm release instead.`);
|
|
169
|
-
}
|
|
170
222
|
if (name === 'openclaw' && version !== undefined) {
|
|
171
223
|
overlayOpenClawVersion = version;
|
|
172
224
|
}
|
|
@@ -191,6 +243,9 @@ function resolveOpenClawPackagePlanEntries(props) {
|
|
|
191
243
|
}
|
|
192
244
|
return [...entriesByName.values()];
|
|
193
245
|
}
|
|
246
|
+
function mergeRequiredOpenClawPackageNames(packageNames) {
|
|
247
|
+
return [...new Set([...managedCoreOpenClawPackageNames, ...packageNames])];
|
|
248
|
+
}
|
|
194
249
|
function collectOpenClawPackagePlanWarnings(openClawPackages) {
|
|
195
250
|
const coreOpenClawPackage = openClawPackages.find((packageEntry) => packageEntry.name === 'openclaw');
|
|
196
251
|
if (!coreOpenClawPackage?.version) {
|
|
@@ -222,7 +277,7 @@ export async function generateManagedDockerfile(options) {
|
|
|
222
277
|
? resolveOpenClawPackagePlanEntries({
|
|
223
278
|
managedImageRelease: options.managedImageRelease,
|
|
224
279
|
overlay,
|
|
225
|
-
requiredOpenClawPackageNames: options.requiredOpenClawPackageNames ?? [],
|
|
280
|
+
requiredOpenClawPackageNames: mergeRequiredOpenClawPackageNames(options.requiredOpenClawPackageNames ?? []),
|
|
226
281
|
})
|
|
227
282
|
: [];
|
|
228
283
|
const warnings = collectOpenClawPackagePlanWarnings(openClawPackages);
|
|
@@ -235,6 +290,14 @@ export async function generateManagedDockerfile(options) {
|
|
|
235
290
|
const mcpPortalPackageSpec = options.base === 'openclaw-gateway' || options.base === 'tool-vm'
|
|
236
291
|
? await resolveManagedPackageSpec(managedMcpPortalPackageName)
|
|
237
292
|
: undefined;
|
|
293
|
+
const openAiCodexCliPackage = options.base === 'openclaw-gateway'
|
|
294
|
+
? {
|
|
295
|
+
name: managedOpenAiCodexCliPackageName,
|
|
296
|
+
source: 'managed-images.json',
|
|
297
|
+
spec: packageSpec(managedOpenAiCodexCliPackageName, options.managedImageRelease.openAiCodexCliVersion),
|
|
298
|
+
version: options.managedImageRelease.openAiCodexCliVersion,
|
|
299
|
+
}
|
|
300
|
+
: undefined;
|
|
238
301
|
await fs.rm(options.outputDirectory, { force: true, recursive: true });
|
|
239
302
|
await fs.mkdir(path.join(options.outputDirectory, 'overlay'), { recursive: true });
|
|
240
303
|
const overlayDirectory = options.overlayPath ? path.dirname(options.overlayPath) : undefined;
|
|
@@ -253,6 +316,9 @@ export async function generateManagedDockerfile(options) {
|
|
|
253
316
|
base: options.base,
|
|
254
317
|
baseImage,
|
|
255
318
|
...(mcpPortalPackageSpec === undefined ? {} : { mcpPortalPackageSpec }),
|
|
319
|
+
...(openAiCodexCliPackage === undefined
|
|
320
|
+
? {}
|
|
321
|
+
: { openAiCodexCliPackageSpec: openAiCodexCliPackage.spec }),
|
|
256
322
|
overlay,
|
|
257
323
|
...(openClawAgentVmPluginPackageSpec === undefined
|
|
258
324
|
? {}
|
|
@@ -302,6 +368,9 @@ export async function generateManagedDockerfile(options) {
|
|
|
302
368
|
spec: mcpPortalPackageSpec,
|
|
303
369
|
},
|
|
304
370
|
}),
|
|
371
|
+
...(openAiCodexCliPackage === undefined
|
|
372
|
+
? {}
|
|
373
|
+
: { openAiCodexCliPackage }),
|
|
305
374
|
openClawPackages,
|
|
306
375
|
warnings,
|
|
307
376
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"managed-image-dockerfile.js","sourceRoot":"","sources":["../../src/build/managed-image-dockerfile.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"managed-image-dockerfile.js","sourceRoot":"","sources":["../../src/build/managed-image-dockerfile.ts"],"names":[],"mappings":"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"}
|