node-ci-build: optional multi-arch docker builds (platforms input) - #2
Open
Michael-Ixo wants to merge 1 commit into
Open
node-ci-build: optional multi-arch docker builds (platforms input)#2Michael-Ixo wants to merge 1 commit into
Michael-Ixo wants to merge 1 commit into
Conversation
…rms input Adds an optional `platforms` input (e.g. "linux/amd64,linux/arm64") to the node build/publish workflow. When set, QEMU + buildx are configured and the platform list is passed to docker/build-push-action; when empty (default) the behavior is exactly as before — single-arch on the runner architecture, plain docker driver, no extra setup steps. Motivation: images meant for local/e2e use (first consumer: the subscriptions-api worker image for ixo-testing-harness) run workerd/V8, which is unreliable under Rosetta emulation on Apple Silicon — a native arm64 variant sidesteps that entirely. Authored by: Michael Pretorius <michael@ixo.world>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds an optional
platformsinput tonode-ci-build.ymlfor multi-arch image publishing:docker/build-push-action→ a multi-arch manifest is pushed.if:-gated), andplatforms: ''is treated as omitted by build-push-action, so existing callers keep their current single-arch builds.Why: first consumer is a docker image of the subscriptions-api Cloudflare Worker for the ixo-testing-harness (run the real worker locally/CI without a source checkout). It runs workerd/V8, which is flaky under Rosetta emulation on Apple Silicon — a native arm64 variant avoids that class of failure. Any other dev/e2e image pulled on M-series laptops benefits the same way.
Note for mergers: the
ixoworld/ixo-github-actionscopy is currently at the same SHA as this repo's main — after merging, please sync it there too (callers reference both org copies).Authored by: Michael Pretorius michael@ixo.world