bastion image: pin ipxe-builder stage to the build platform
Some checks failed
CI/CD / lint (push) Successful in 44s
CI/CD / typecheck (push) Successful in 1m21s
CI/CD / test (push) Successful in 1m11s
CI/CD / build (push) Successful in 1m28s
CI/CD / publish-rpm (push) Failing after 43s
CI/CD / publish-deb (push) Successful in 1m4s
Some checks failed
CI/CD / lint (push) Successful in 44s
CI/CD / typecheck (push) Successful in 1m21s
CI/CD / test (push) Successful in 1m11s
CI/CD / build (push) Successful in 1m28s
CI/CD / publish-rpm (push) Failing after 43s
CI/CD / publish-deb (push) Successful in 1m4s
The arm64 image build died at the iPXE compile: under podman multi-arch builds the stage runs once per TARGET platform, and the iPXE toolchain (gcc/perl build system) does not survive qemu-user emulation. The stage already cross-compiles both bin-x86_64-efi and bin-arm64-efi outputs in one pass, so it only ever needs to run natively on the build host — FROM --platform=$BUILDPLATFORM restores the arm64 image without qemu touching the iPXE build. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01V6HNx6cyr4J4CiMGCy1wkF
This commit is contained in:
@@ -29,7 +29,9 @@ COPY src/modules/modules/ src/modules/modules/
|
|||||||
RUN pnpm build
|
RUN pnpm build
|
||||||
|
|
||||||
# ── Stage 1b: Build iPXE snp.efi (uses UEFI SNP protocol for ISO boot) ──
|
# ── Stage 1b: Build iPXE snp.efi (uses UEFI SNP protocol for ISO boot) ──
|
||||||
FROM fedora:43 AS ipxe-builder
|
# Pinned to the build platform: this stage cross-compiles BOTH arch outputs
|
||||||
|
# itself, and the iPXE toolchain does not survive qemu-user emulation.
|
||||||
|
FROM --platform=$BUILDPLATFORM fedora:43 AS ipxe-builder
|
||||||
|
|
||||||
RUN dnf install -y git gcc make perl-interpreter xz-devel gcc-aarch64-linux-gnu && dnf clean all
|
RUN dnf install -y git gcc make perl-interpreter xz-devel gcc-aarch64-linux-gnu && dnf clean all
|
||||||
RUN git clone --depth=1 https://github.com/ipxe/ipxe.git /tmp/ipxe
|
RUN git clone --depth=1 https://github.com/ipxe/ipxe.git /tmp/ipxe
|
||||||
|
|||||||
Reference in New Issue
Block a user