This is an automated email from the ASF dual-hosted git repository. hubcio pushed a commit to branch fix/pin-cargo-zigbuild in repository https://gitbox.apache.org/repos/asf/iggy.git
commit 7ce8980e8753cb62550264f2d6976868982b34fd Author: Hubert Gruszecki <[email protected]> AuthorDate: Wed May 13 16:50:54 2026 +0200 fix(ci): pin cargo-zigbuild to 0.22.1 and alpine to 3.23 April 14 publish on master used cargo-zigbuild 0.22.1 + zig 0.15.2-r0 (alpine) and produced rust-server amd64 cleanly. After 0.22.2/0.22.3 hit crates.io, `cargo install --locked` started installing 0.22.3 unconditionally and rust-server amd64 publish broke with: LLVM failed to parse 'x86_64-unknown-linux5.10.0-musl': No available targets are compatible with triple sub-compilation of libubsan / libzigc / compiler_rt failed could not compile `iggy-cli` (bin "iggy") cargo-zigbuild 0.22.2 introduced "Support zig 0.16.0" and new docker workflow targeting zig 0.16.0, 0.22.3 added "link compiler-rt for windows-gnu on zig >= 0.16". The alpine `zig` apk on 3.22 and 3.23 still ships 0.15.2, so 0.22.x assumptions break the link step intermittently under that older zig. Pin cargo-zigbuild to 0.22.1 (last known good in this project's CI under same zig 0.15.2) across all four Dockerfiles. Wire up the previously unused ALPINE_VERSION arg into the chef FROM tag and bump to 3.23 (the alpine release `latest-rust-1.95-alpine` currently floats to); prevents silent base-image drift when chef rebuilds the floating tag. A follow-up should install zig from upstream tarball and pin the chef base by digest for full reproducibility. --- core/ai/mcp/Dockerfile | 6 +++--- core/connectors/runtime/Dockerfile | 6 +++--- core/server-ng/Dockerfile | 6 +++--- core/server/Dockerfile | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/core/ai/mcp/Dockerfile b/core/ai/mcp/Dockerfile index ea68f4934..520bdac1f 100644 --- a/core/ai/mcp/Dockerfile +++ b/core/ai/mcp/Dockerfile @@ -28,9 +28,9 @@ # fully endorsed by the ASF. ARG RUST_VERSION=1.95 -ARG ALPINE_VERSION=3.22 +ARG ALPINE_VERSION=3.23 -FROM --platform=$BUILDPLATFORM lukemathwalker/cargo-chef:latest-rust-${RUST_VERSION}-alpine AS chef +FROM --platform=$BUILDPLATFORM lukemathwalker/cargo-chef:latest-rust-${RUST_VERSION}-alpine${ALPINE_VERSION} AS chef WORKDIR /app RUN apk add --no-cache musl-dev pkgconfig @@ -46,7 +46,7 @@ ARG IGGY_CI_BUILD ENV IGGY_CI_BUILD=${IGGY_CI_BUILD} RUN apk add --no-cache bash curl tar zig make autoconf automake libtool pkgconfig && \ - cargo install cargo-zigbuild --locked && \ + cargo install cargo-zigbuild --version '=0.22.1' --locked && \ rustup target add \ x86_64-unknown-linux-musl \ aarch64-unknown-linux-musl \ diff --git a/core/connectors/runtime/Dockerfile b/core/connectors/runtime/Dockerfile index 880783687..bd8c3f8e6 100644 --- a/core/connectors/runtime/Dockerfile +++ b/core/connectors/runtime/Dockerfile @@ -28,9 +28,9 @@ # fully endorsed by the ASF. ARG RUST_VERSION=1.95 -ARG ALPINE_VERSION=3.22 +ARG ALPINE_VERSION=3.23 -FROM --platform=$BUILDPLATFORM lukemathwalker/cargo-chef:latest-rust-${RUST_VERSION}-alpine AS chef +FROM --platform=$BUILDPLATFORM lukemathwalker/cargo-chef:latest-rust-${RUST_VERSION}-alpine${ALPINE_VERSION} AS chef WORKDIR /app RUN apk add --no-cache musl-dev pkgconfig @@ -46,7 +46,7 @@ ARG IGGY_CI_BUILD ENV IGGY_CI_BUILD=${IGGY_CI_BUILD} RUN apk add --no-cache bash curl tar zig make autoconf automake libtool pkgconfig hwloc-dev xz-dev xz-static && \ - cargo install cargo-zigbuild --locked && \ + cargo install cargo-zigbuild --version '=0.22.1' --locked && \ rustup target add \ x86_64-unknown-linux-musl \ aarch64-unknown-linux-musl \ diff --git a/core/server-ng/Dockerfile b/core/server-ng/Dockerfile index 2eac1203b..a15be0830 100644 --- a/core/server-ng/Dockerfile +++ b/core/server-ng/Dockerfile @@ -28,10 +28,10 @@ # fully endorsed by the ASF. ARG RUST_VERSION=1.95 -ARG ALPINE_VERSION=3.22 +ARG ALPINE_VERSION=3.23 # ── from-source path ───────────────────────────────────────────────────────── -FROM --platform=$BUILDPLATFORM lukemathwalker/cargo-chef:latest-rust-${RUST_VERSION}-alpine AS chef +FROM --platform=$BUILDPLATFORM lukemathwalker/cargo-chef:latest-rust-${RUST_VERSION}-alpine${ALPINE_VERSION} AS chef WORKDIR /app RUN apk add --no-cache musl-dev pkgconfig @@ -47,7 +47,7 @@ ARG IGGY_CI_BUILD ENV IGGY_CI_BUILD=${IGGY_CI_BUILD} RUN apk add --no-cache zig make autoconf automake libtool pkgconfig hwloc-dev xz-dev xz-static nodejs npm && \ - cargo install cargo-zigbuild --locked && \ + cargo install cargo-zigbuild --version '=0.22.1' --locked && \ rustup target add \ x86_64-unknown-linux-musl \ aarch64-unknown-linux-musl \ diff --git a/core/server/Dockerfile b/core/server/Dockerfile index 989d03fad..35765d00b 100644 --- a/core/server/Dockerfile +++ b/core/server/Dockerfile @@ -28,10 +28,10 @@ # fully endorsed by the ASF. ARG RUST_VERSION=1.95 -ARG ALPINE_VERSION=3.22 +ARG ALPINE_VERSION=3.23 # ── from-source path ───────────────────────────────────────────────────────── -FROM --platform=$BUILDPLATFORM lukemathwalker/cargo-chef:latest-rust-${RUST_VERSION}-alpine AS chef +FROM --platform=$BUILDPLATFORM lukemathwalker/cargo-chef:latest-rust-${RUST_VERSION}-alpine${ALPINE_VERSION} AS chef WORKDIR /app RUN apk add --no-cache musl-dev pkgconfig @@ -47,7 +47,7 @@ ARG IGGY_CI_BUILD ENV IGGY_CI_BUILD=${IGGY_CI_BUILD} RUN apk add --no-cache bash curl tar zig make autoconf automake libtool pkgconfig hwloc-dev xz-dev xz-static nodejs npm && \ - cargo install cargo-zigbuild --locked && \ + cargo install cargo-zigbuild --version '=0.22.1' --locked && \ rustup target add \ x86_64-unknown-linux-musl \ aarch64-unknown-linux-musl \
