From 21b91dfea40606995bb5bdf40b47b55951de960f Mon Sep 17 00:00:00 2001 From: Chummy Date: Mon, 2 Mar 2026 16:44:25 +0800 Subject: [PATCH] fix(docker): include workspace crate manifests in prebuild stage --- Dockerfile | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index e8e9ded74..1661b9937 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,11 +16,15 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ # 1. Copy manifests to cache dependencies COPY Cargo.toml Cargo.lock ./ COPY crates/robot-kit/Cargo.toml crates/robot-kit/Cargo.toml +COPY crates/zeroclaw-types/Cargo.toml crates/zeroclaw-types/Cargo.toml +COPY crates/zeroclaw-core/Cargo.toml crates/zeroclaw-core/Cargo.toml # Create dummy targets declared in Cargo.toml so manifest parsing succeeds. -RUN mkdir -p src benches crates/robot-kit/src \ +RUN mkdir -p src benches crates/robot-kit/src crates/zeroclaw-types/src crates/zeroclaw-core/src \ && echo "fn main() {}" > src/main.rs \ && echo "fn main() {}" > benches/agent_benchmarks.rs \ - && echo "pub fn placeholder() {}" > crates/robot-kit/src/lib.rs + && echo "pub fn placeholder() {}" > crates/robot-kit/src/lib.rs \ + && echo "pub fn placeholder() {}" > crates/zeroclaw-types/src/lib.rs \ + && echo "pub fn placeholder() {}" > crates/zeroclaw-core/src/lib.rs RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/registry,sharing=locked \ --mount=type=cache,id=zeroclaw-cargo-git,target=/usr/local/cargo/git,sharing=locked \ --mount=type=cache,id=zeroclaw-target,target=/app/target,sharing=locked \ @@ -29,7 +33,7 @@ RUN --mount=type=cache,id=zeroclaw-cargo-registry,target=/usr/local/cargo/regist else \ cargo build --release --locked; \ fi -RUN rm -rf src benches crates/robot-kit/src +RUN rm -rf src benches crates/robot-kit/src crates/zeroclaw-types/src crates/zeroclaw-core/src # 2. Copy only build-relevant source paths (avoid cache-busting on docs/tests/scripts) COPY src/ src/