CI: Add wasm-tools to the build image
wasm-tools is needed at build time to generate the WebAssembly spec tests (INCLUDE_WASM_SPEC_TESTS), and the setup action downloads it from the bytecodealliance releases CDN for every build job. That CDN intermittently returns 504, which fails otherwise-green CI runs. Bake the pinned wasm-tools 1.243.0 into the ladybird-ci image so the Linux container jobs, which are the bulk of the build matrix, get it from the image instead of fetching it per run. A follow-up will drop the per-job download for the container platforms once this image is published. The macOS and Windows jobs run on native runners that do not use this image, so they keep downloading the same pinned version.
This commit is contained in:
parent
1484686c70
commit
13b609133d
2 changed files with 20 additions and 1 deletions
|
|
@ -2,6 +2,7 @@ FROM ubuntu:26.04
|
|||
|
||||
ARG GCC_VERSION=14
|
||||
ARG LLVM_VERSION=21
|
||||
ARG WASM_TOOLS_VERSION=1.243.0
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV RUSTUP_HOME=/opt/rustup
|
||||
|
|
@ -100,3 +101,21 @@ RUN apt-get update -o APT::Update::Error-Mode=any \
|
|||
&& rustup component add rustfmt clippy \
|
||||
&& rm -rf /opt/rustup/downloads /opt/rustup/tmp /opt/cargo/registry /tmp/rust-toolchain.toml \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ARG TARGETARCH
|
||||
|
||||
# wasm-tools is required at build time to generate the WebAssembly spec tests
|
||||
# (INCLUDE_WASM_SPEC_TESTS). The version is pinned for reproducible test generation.
|
||||
RUN case "${TARGETARCH}" in \
|
||||
amd64) WASM_TOOLS_ARCH=x86_64 ;; \
|
||||
arm64) WASM_TOOLS_ARCH=aarch64 ;; \
|
||||
*) echo "Unsupported TARGETARCH: ${TARGETARCH}" >&2 ; exit 1 ;; \
|
||||
esac \
|
||||
&& NAME="wasm-tools-${WASM_TOOLS_VERSION}-${WASM_TOOLS_ARCH}-linux" \
|
||||
&& curl -fsSL --retry 5 --retry-delay 5 --retry-all-errors \
|
||||
"https://github.com/bytecodealliance/wasm-tools/releases/download/v${WASM_TOOLS_VERSION}/${NAME}.tar.gz" \
|
||||
-o /tmp/wasm-tools.tar.gz \
|
||||
&& tar -xzf /tmp/wasm-tools.tar.gz -C /tmp \
|
||||
&& install -m 0755 "/tmp/${NAME}/wasm-tools" /usr/local/bin/wasm-tools \
|
||||
&& rm -rf /tmp/wasm-tools.tar.gz "/tmp/${NAME}" \
|
||||
&& wasm-tools --version
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
2026.06.02
|
||||
2026.06.14
|
||||
|
|
|
|||
Loading…
Reference in a new issue