1616# under the License.
1717
1818ARG arch=amd64
19- FROM ${arch}/debian:11
19+ FROM ${arch}/debian:12
2020ARG arch
2121
2222ENV DEBIAN_FRONTEND noninteractive
2323
2424ARG llvm
25- # We can't use LLVM 14 or later from apt.llvm.org on i386 because LLVM
26- # 14 or later dropped support for i386.
2725RUN apt-get update -y -q && \
28- apt-get install -y -q --no-install-recommends \
29- dpkg-dev && \
30- latest_available_llvm_i386=13 && \
31- if [ $(dpkg-architecture -qDEB_HOST_ARCH) = "i386" -a \
32- "${llvm}" -gt "${latest_available_llvm_i386}" ]; then \
33- available_llvm="${latest_available_llvm_i386}" ; \
34- else \
35- available_llvm="${llvm}" ; \
36- fi && \
37- apt-get update -y -q && \
3826 apt-get install -y -q --no-install-recommends \
3927 apt-transport-https \
4028 ca-certificates \
4129 gnupg \
30+ lsb-release \
4231 wget && \
43- wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - && \
44- echo "deb https://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${available_llvm} main" > \
45- /etc/apt/sources.list.d/llvm.list && \
32+ if [ ${llvm} -ge 17 ]; then \
33+ wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | \
34+ gpg \
35+ --import - \
36+ --keyring /usr/share/keyrings/llvm-snapshot.gpg \
37+ --no-default-keyring && \
38+ echo "deb[keyring=/usr/share/keyrings/llvm-snapshot.gpg] https://apt.llvm.org/$(lsb_release --codename --short)/ llvm-toolchain-$(lsb_release --codename --short)-${available_llvm} main" > \
39+ /etc/apt/sources.list.d/llvm.list; \
40+ fi && \
4641 apt-get update -y -q && \
4742 apt-get install -y -q --no-install-recommends \
4843 autoconf \
4944 ccache \
50- clang-${available_llvm } \
45+ clang-${llvm } \
5146 cmake \
5247 curl \
5348 g++ \
5449 gcc \
5550 gdb \
5651 git \
5752 libbenchmark-dev \
58- libboost-all-dev \
53+ libboost-filesystem-dev \
54+ libboost-system-dev \
5955 libbrotli-dev \
6056 libbz2-dev \
6157 libc-ares-dev \
@@ -64,22 +60,35 @@ RUN apt-get update -y -q && \
6460 libgmock-dev \
6561 libgoogle-glog-dev \
6662 libgrpc++-dev \
63+ libidn2-dev \
64+ libkrb5-dev \
65+ libldap-dev \
6766 liblz4-dev \
67+ libnghttp2-dev \
6868 libprotobuf-dev \
6969 libprotoc-dev \
70+ libpsl-dev \
7071 libre2-dev \
72+ librtmp-dev \
7173 libsnappy-dev \
74+ libsqlite3-dev \
75+ libssh-dev \
76+ libssh2-1-dev \
7277 libssl-dev \
7378 libthrift-dev \
7479 libutf8proc-dev \
80+ libxml2-dev \
7581 libzstd-dev \
76- llvm-${available_llvm }-dev \
82+ llvm-${llvm }-dev \
7783 make \
7884 ninja-build \
7985 nlohmann-json3-dev \
86+ npm \
8087 pkg-config \
8188 protobuf-compiler-grpc \
89+ python3-dev \
8290 python3-pip \
91+ python3-venv \
8392 rapidjson-dev \
8493 rsync \
8594 tzdata \
@@ -93,18 +102,24 @@ RUN /arrow/ci/scripts/install_minio.sh latest /usr/local
93102COPY ci/scripts/install_gcs_testbench.sh /arrow/ci/scripts/
94103RUN /arrow/ci/scripts/install_gcs_testbench.sh default
95104
105+ COPY ci/scripts/install_azurite.sh /arrow/ci/scripts/
106+ RUN /arrow/ci/scripts/install_azurite.sh
107+
96108COPY ci/scripts/install_sccache.sh /arrow/ci/scripts/
97109RUN /arrow/ci/scripts/install_sccache.sh unknown-linux-musl /usr/local/bin
98110
99- ENV absl_SOURCE=BUNDLED \
100- ARROW_ACERO =ON \
111+ ENV ARROW_ACERO=ON \
112+ ARROW_AZURE =ON \
101113 ARROW_BUILD_TESTS=ON \
102114 ARROW_DATASET=ON \
103115 ARROW_DEPENDENCY_SOURCE=SYSTEM \
116+ ARROW_DATASET=ON \
104117 ARROW_FLIGHT=ON \
118+ ARROW_FLIGHT_SQL=ON \
105119 ARROW_GANDIVA=ON \
106120 ARROW_GCS=ON \
107121 ARROW_HOME=/usr/local \
122+ ARROW_NO_DEPRECATED_API=ON \
108123 ARROW_ORC=ON \
109124 ARROW_PARQUET=ON \
110125 ARROW_S3=ON \
@@ -113,15 +128,14 @@ ENV absl_SOURCE=BUNDLED \
113128 ARROW_WITH_BROTLI=ON \
114129 ARROW_WITH_BZ2=ON \
115130 ARROW_WITH_LZ4=ON \
116- ARROW_WITH_OPENTELEMETRY=OFF \
131+ ARROW_WITH_OPENTELEMETRY=ON \
117132 ARROW_WITH_SNAPPY=ON \
118133 ARROW_WITH_ZLIB=ON \
119134 ARROW_WITH_ZSTD=ON \
120135 AWSSDK_SOURCE=BUNDLED \
121- CC=gcc \
122- CXX=g++ \
136+ Azure_SOURCE=BUNDLED \
123137 google_cloud_cpp_storage_SOURCE=BUNDLED \
124- GTest_SOURCE=BUNDLED \
125138 ORC_SOURCE=BUNDLED \
126139 PATH=/usr/lib/ccache/:$PATH \
140+ PYTHON=python3 \
127141 xsimd_SOURCE=BUNDLED
0 commit comments