build: configured docker build pipelines for cargo native addons

- Switched Docker images to build native addons via cargo/napi-rs (`OMP_NATIVE_BUILD_BACKEND=cargo`) instead of Bazel.
- Updated Cargo.toml workspace members explicitly to prevent loading errors from stale directories under crates/.
- Added depth-agnostic patterns to .dockerignore files to exclude nested build outputs from Docker build contexts.
- Added OMP_NATIVE_CARGO_PROFILE environment variable to support configuring cargo profiles for addon builds.
This commit is contained in:
can1357
2026-08-14 07:09:48 +02:00
parent ebcbdd5297
commit ad318c7572
11 changed files with 183 additions and 39 deletions
+15 -3
View File
@@ -5,11 +5,23 @@
# the cost of per-Dockerfile shadows (no shared file to factor common rules
# into). Keep them roughly in sync.
# Heavy build outputs — must never reach the build context.
target/
# Heavy build outputs — must never reach the build context. Depth-agnostic for
# the same reason as Dockerfile.dockerignore: bare `target/`/`dist/` only match
# the context root, so nested build dirs (go-port/*/target, packages/*/dist)
# were shipped on every build.
**/target/
bazel-*
**/node_modules
dist/
**/dist/
runs/
.xwin-cache/
packages/coding-agent/binaries/
packages/natives/npm/
packages/natives/native/
**/.cache/
packages/snapcompact/research/results/
# The addon comes from PI_BASE; nothing in this context needs one.
**/*.node
# Per-host scratch the pi codebase uses for parallel agents / worktrees.
.fallow/