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 \

Reply via email to