From 569e1ea07060ed64ae42379b9d33ba19722ea3e8 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 1 May 2026 21:05:10 +0100 Subject: [PATCH] fix(release): preserve Docker package runtime deps --- scripts/e2e/Dockerfile | 4 +++- src/docker-build-cache.test.ts | 5 +++++ tsdown.config.ts | 2 ++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/scripts/e2e/Dockerfile b/scripts/e2e/Dockerfile index 97ffec66df5..489ca5555db 100644 --- a/scripts/e2e/Dockerfile +++ b/scripts/e2e/Dockerfile @@ -46,10 +46,12 @@ COPY --from=openclaw_package --chown=appuser:appuser openclaw-current.tgz /tmp/o # Preserve package self-reference imports such as openclaw/plugin-sdk/* after # copying the installed package out of npm's global node_modules tree. RUN npm install -g --prefix /tmp/openclaw-prefix /tmp/openclaw-current.tgz --no-fund --no-audit \ + && mkdir -p /app/node_modules \ + && cp -a /tmp/openclaw-prefix/lib/node_modules/. /app/node_modules/ \ && cp -a /tmp/openclaw-prefix/lib/node_modules/openclaw/. /app/ \ && mkdir -p "$HOME/.local/bin" \ && ln -sf /app/openclaw.mjs "$HOME/.local/bin/openclaw" \ - && mkdir -p /app/node_modules \ + && rm -rf /app/node_modules/openclaw \ && ln -sf /app /app/node_modules/openclaw \ && rm -rf /tmp/openclaw-prefix /tmp/openclaw-current.tgz diff --git a/src/docker-build-cache.test.ts b/src/docker-build-cache.test.ts index 65b59ab0342..738549d8df1 100644 --- a/src/docker-build-cache.test.ts +++ b/src/docker-build-cache.test.ts @@ -113,6 +113,11 @@ describe("docker build cache layout", () => { expect(dockerfile).toContain( "npm install -g --prefix /tmp/openclaw-prefix /tmp/openclaw-current.tgz --no-fund --no-audit", ); + expect(dockerfile).toContain( + "cp -a /tmp/openclaw-prefix/lib/node_modules/. /app/node_modules/", + ); + expect(dockerfile).toContain("rm -rf /app/node_modules/openclaw"); + expect(dockerfile).toContain("ln -sf /app /app/node_modules/openclaw"); }); it("copies manifests before install in the qr-import image", async () => { diff --git a/tsdown.config.ts b/tsdown.config.ts index 6631d699729..e9e2976f18f 100644 --- a/tsdown.config.ts +++ b/tsdown.config.ts @@ -252,6 +252,8 @@ function buildDockerE2eHarnessEntries(): Record { "src/agents/pi-embedded-runner/run/runtime-context-prompt.ts", "auto-reply/reply/commands-crestodian": "src/auto-reply/reply/commands-crestodian.ts", "cli/run-main": "src/cli/run-main.ts", + "commitments/runtime": "src/commitments/runtime.ts", + "commitments/store": "src/commitments/store.ts", "config/config": "src/config/config.ts", "crestodian/crestodian": "src/crestodian/crestodian.ts", "crestodian/rescue-message": "src/crestodian/rescue-message.ts",