Skip to content

Commit f8da323

Browse files
GitHub CopilotCopilot
andcommitted
docs: clarify cross-build setup for linux/arm64 in CI example
Add an inline YAML comment and a note explaining that the linux/arm64 matrix entry uses cross-building via TARGET_ARCH env var on an x64 runner, and that engines with native compilation steps may need actual arm64 runners or QEMU emulation. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 8495e7f commit f8da323

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

docs/integration-guide.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -935,7 +935,7 @@ jobs:
935935
- os: ubuntu-latest
936936
platform: linux
937937
arch: x64
938-
- os: ubuntu-latest
938+
- os: ubuntu-latest # Cross-build: uses TARGET_ARCH env var, not native arm64
939939
platform: linux
940940
arch: arm64
941941
- os: macos-latest
@@ -978,6 +978,8 @@ jobs:
978978
979979
Each matrix job builds for its target platform (using `TARGET_PLATFORM` and `TARGET_ARCH` environment variables) and uploads a named tarball. The result is a single GitHub Release with one artifact per platform.
980980

981+
> **Note:** This example uses cross-building — the `linux/arm64` job runs on an x64 runner and relies on `TARGET_ARCH` to select the correct platform-specific binaries at build time rather than compiling natively. This works well for engines that bundle pre-built binaries or use interpreted runtimes. If your engine includes native compilation steps (e.g., building C/C++ extensions or Rust crates for arm64), you will need either an actual arm64 runner or a QEMU/cross-toolchain emulation setup.
982+
981983
### What to Include in the Release
982984

983985
Your release artifact must include `engine.yaml` and everything it references. The `entrypoint` in `engine.yaml` is resolved as a relative path, so any files or directories it points to need to be in the tarball alongside it. For example, if your entrypoint is `node dist/index.js`, then `dist/index.js` (and any of its runtime dependencies) must be present.

0 commit comments

Comments
 (0)