From caaa0180afc7724bd7ba466bc282d8fe8fd6dc7d Mon Sep 17 00:00:00 2001 From: Dewey Dunnington Date: Fri, 17 Apr 2026 21:54:55 -0500 Subject: [PATCH 1/6] try a fix --- ci/docker/integration.dockerfile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ci/docker/integration.dockerfile b/ci/docker/integration.dockerfile index 95940fd75..34b37c057 100644 --- a/ci/docker/integration.dockerfile +++ b/ci/docker/integration.dockerfile @@ -60,6 +60,10 @@ RUN git clone https://github.com/apache/arrow-js.git /arrow-integration/js --dep # Clone the arrow-rs repo RUN git clone https://github.com/apache/arrow-rs.git /arrow-integration/rust --depth 1 +# Tell zstd-sys to use system libzstd via pkg-config instead of compiling from source +# (the conda C compiler referenced by $CC doesn't exist in this image) +ENV ZSTD_SYS_USE_PKG_CONFIG=1 + # Build all the integrations except nanoarrow (since we'll do that ourselves on each run) RUN ARCHERY_INTEGRATION_WITH_NANOARROW="0" \ conda run --no-capture-output \ From c582680dd76ed36b760b402f970a8b25f6df2a5a Mon Sep 17 00:00:00 2001 From: Dewey Dunnington Date: Fri, 17 Apr 2026 22:10:48 -0500 Subject: [PATCH 2/6] add go --- ci/docker/integration.dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ci/docker/integration.dockerfile b/ci/docker/integration.dockerfile index 34b37c057..ba0941584 100644 --- a/ci/docker/integration.dockerfile +++ b/ci/docker/integration.dockerfile @@ -64,6 +64,9 @@ RUN git clone https://github.com/apache/arrow-rs.git /arrow-integration/rust --d # (the conda C compiler referenced by $CC doesn't exist in this image) ENV ZSTD_SYS_USE_PKG_CONFIG=1 +# Install Go (the base image sets GOROOT=/opt/conda/go but doesn't install it) +RUN conda install -y go + # Build all the integrations except nanoarrow (since we'll do that ourselves on each run) RUN ARCHERY_INTEGRATION_WITH_NANOARROW="0" \ conda run --no-capture-output \ From 160c572335d5d2b3a4c464dbdb18e7a285d4a2e9 Mon Sep 17 00:00:00 2001 From: Dewey Dunnington Date: Fri, 17 Apr 2026 23:46:30 -0500 Subject: [PATCH 3/6] fixes --- ci/docker/integration.dockerfile | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/ci/docker/integration.dockerfile b/ci/docker/integration.dockerfile index ba0941584..8586659f6 100644 --- a/ci/docker/integration.dockerfile +++ b/ci/docker/integration.dockerfile @@ -60,16 +60,21 @@ RUN git clone https://github.com/apache/arrow-js.git /arrow-integration/js --dep # Clone the arrow-rs repo RUN git clone https://github.com/apache/arrow-rs.git /arrow-integration/rust --depth 1 +# Install missing conda packages that the base image expects but no longer includes. +# The conda environment sets CC, GOROOT, CFLAGS etc. but the packages that provide +# these tools were removed from the base image. Must install into the "arrow" environment. +RUN conda install -n arrow -y compilers go + # Tell zstd-sys to use system libzstd via pkg-config instead of compiling from source -# (the conda C compiler referenced by $CC doesn't exist in this image) ENV ZSTD_SYS_USE_PKG_CONFIG=1 -# Install Go (the base image sets GOROOT=/opt/conda/go but doesn't install it) -RUN conda install -y go - # Build all the integrations except nanoarrow (since we'll do that ourselves on each run) -RUN ARCHERY_INTEGRATION_WITH_NANOARROW="0" \ - conda run --no-capture-output \ - /arrow-integration/ci/scripts/integration_arrow_build.sh \ - /arrow-integration \ - /build +# Activate conda environment directly instead of using conda run, which has issues with +# environment variables being inherited from base instead of the target environment. +# Also add cargo/bin back to PATH since conda activation may not include it. +SHELL ["/bin/bash", "-c"] +RUN source /opt/conda/etc/profile.d/conda.sh && \ + conda activate arrow && \ + export PATH="/root/.cargo/bin:$PATH" && \ + ARCHERY_INTEGRATION_WITH_NANOARROW="0" \ + /arrow-integration/ci/scripts/integration_arrow_build.sh /arrow-integration /build From 181e868622f8b92467e4503505074b54633af30b Mon Sep 17 00:00:00 2001 From: Dewey Dunnington Date: Fri, 17 Apr 2026 23:46:39 -0500 Subject: [PATCH 4/6] undo previous fixes --- ci/docker/integration.dockerfile | 8 -------- 1 file changed, 8 deletions(-) diff --git a/ci/docker/integration.dockerfile b/ci/docker/integration.dockerfile index 8586659f6..b006e4bbc 100644 --- a/ci/docker/integration.dockerfile +++ b/ci/docker/integration.dockerfile @@ -60,14 +60,6 @@ RUN git clone https://github.com/apache/arrow-js.git /arrow-integration/js --dep # Clone the arrow-rs repo RUN git clone https://github.com/apache/arrow-rs.git /arrow-integration/rust --depth 1 -# Install missing conda packages that the base image expects but no longer includes. -# The conda environment sets CC, GOROOT, CFLAGS etc. but the packages that provide -# these tools were removed from the base image. Must install into the "arrow" environment. -RUN conda install -n arrow -y compilers go - -# Tell zstd-sys to use system libzstd via pkg-config instead of compiling from source -ENV ZSTD_SYS_USE_PKG_CONFIG=1 - # Build all the integrations except nanoarrow (since we'll do that ourselves on each run) # Activate conda environment directly instead of using conda run, which has issues with # environment variables being inherited from base instead of the target environment. From 80107a90d893ac495e1f5b53832643692aa4ef88 Mon Sep 17 00:00:00 2001 From: Dewey Dunnington Date: Sat, 18 Apr 2026 21:03:04 -0500 Subject: [PATCH 5/6] maybe add back --- docker-compose.yml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index eb84c48e8..8b9204a18 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -56,10 +56,16 @@ services: environment: ARCHERY_INTEGRATION_TARGET_IMPLEMENTATIONS: "nanoarrow" ARCHERY_INTEGRATION_WITH_RUST: "1" + # Activate conda environment directly instead of using conda run, which has issues with + # environment variables being inherited from base instead of the target environment. + # Also add cargo/bin back to PATH since conda activation may not include it. command: - ["echo '::group::Build nanoarrow' && - conda run --no-capture-output /arrow-integration/ci/scripts/nanoarrow_build.sh /arrow-integration /build && + ["/bin/bash", "-c", + "source /opt/conda/etc/profile.d/conda.sh && conda activate arrow && + echo '::group::Build nanoarrow' && + /arrow-integration/ci/scripts/nanoarrow_build.sh /arrow-integration /build && echo '::endgroup::' && echo '::group::Run integration tests' && - conda run --no-capture-output /arrow-integration/ci/scripts/integration_arrow.sh /arrow-integration /build && - echo '::endgroup::'"] + /arrow-integration/ci/scripts/integration_arrow.sh /arrow-integration /build && + echo '::endgroup::'" + ] From b6a3df87176fcedebac82ceea6d36e001dccb728 Mon Sep 17 00:00:00 2001 From: Dewey Dunnington Date: Sat, 18 Apr 2026 22:16:30 -0500 Subject: [PATCH 6/6] try maybe with envs sorted --- ci/docker/integration.dockerfile | 1 - docker-compose.yml | 8 ++++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/ci/docker/integration.dockerfile b/ci/docker/integration.dockerfile index b006e4bbc..1fcc73fb2 100644 --- a/ci/docker/integration.dockerfile +++ b/ci/docker/integration.dockerfile @@ -18,7 +18,6 @@ FROM apache/arrow-dev:amd64-conda-integration ENV ARROW_USE_CCACHE=OFF \ - ARROW_CPP_EXE_PATH=/build/cpp/debug \ ARROW_NANOARROW_PATH=/build/nanoarrow \ ARROW_RUST_EXE_PATH=/build/rust/debug \ BUILD_DOCS_CPP=OFF \ diff --git a/docker-compose.yml b/docker-compose.yml index 8b9204a18..649e50f2b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -59,13 +59,13 @@ services: # Activate conda environment directly instead of using conda run, which has issues with # environment variables being inherited from base instead of the target environment. # Also add cargo/bin back to PATH since conda activation may not include it. + entrypoint: ["/bin/bash", "-c"] command: - ["/bin/bash", "-c", - "source /opt/conda/etc/profile.d/conda.sh && conda activate arrow && + - | + source /opt/conda/etc/profile.d/conda.sh && conda activate arrow && export PATH=/root/.cargo/bin:$$PATH && echo '::group::Build nanoarrow' && /arrow-integration/ci/scripts/nanoarrow_build.sh /arrow-integration /build && echo '::endgroup::' && echo '::group::Run integration tests' && /arrow-integration/ci/scripts/integration_arrow.sh /arrow-integration /build && - echo '::endgroup::'" - ] + echo '::endgroup::'