diff --git a/infra/colony/Dockerfile b/infra/colony/Dockerfile index 87f24da..b24e565 100644 --- a/infra/colony/Dockerfile +++ b/infra/colony/Dockerfile @@ -16,16 +16,16 @@ COPY Cargo.toml Cargo.lock ./ COPY crates/colony-types/Cargo.toml crates/colony-types/Cargo.toml COPY crates/colony/Cargo.toml crates/colony/Cargo.toml COPY crates/colony/migrations crates/colony/migrations +# Build deps only (stub sources, then delete artifacts so real build triggers) RUN mkdir -p crates/colony-types/src crates/colony/src \ && echo "fn main() {}" > crates/colony/src/main.rs \ - && echo "" > crates/colony-types/src/lib.rs \ - && cargo build --release -p colony 2>/dev/null || true \ - && rm -rf target/release/colony target/release/deps/colony-* \ - && rm crates/colony/src/main.rs crates/colony-types/src/lib.rs + && echo "pub fn _stub() {}" > crates/colony-types/src/lib.rs \ + && cargo build --release -p colony 2>/dev/null || true -# Now copy real source and build (deps already cached, binary removed so cargo rebuilds) +# Copy real source — touch both crates to force recompile COPY crates/ crates/ -RUN cargo build --release -p colony +RUN touch crates/colony-types/src/lib.rs crates/colony/src/main.rs \ + && cargo build --release -p colony # Stage 3: Runtime FROM debian:bookworm-slim