From 464684f58b02042830aca88f76874ec6bb57d48c Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Tue, 6 Jun 2023 09:59:25 +0900 Subject: [PATCH] GH-35922: [C++] Drop support for Debian GNU/Linux buster (10) Because Debian GNU/Linux buster reached EOL on 2022-09-10. --- ci/docker/debian-10-cpp.dockerfile | 124 ------------------- ci/docker/debian-10-go-cgo-python.dockerfile | 36 ------ ci/docker/debian-10-go.dockerfile | 30 ----- ci/docker/debian-10-js.dockerfile | 33 ----- dev/tasks/tasks.yml | 2 +- docker-compose.yml | 8 +- 6 files changed, 5 insertions(+), 228 deletions(-) delete mode 100644 ci/docker/debian-10-cpp.dockerfile delete mode 100644 ci/docker/debian-10-go-cgo-python.dockerfile delete mode 100644 ci/docker/debian-10-go.dockerfile delete mode 100644 ci/docker/debian-10-js.dockerfile diff --git a/ci/docker/debian-10-cpp.dockerfile b/ci/docker/debian-10-cpp.dockerfile deleted file mode 100644 index ca1017ecc3da2..0000000000000 --- a/ci/docker/debian-10-cpp.dockerfile +++ /dev/null @@ -1,124 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -ARG arch=amd64 -FROM ${arch}/debian:10 - -ENV DEBIAN_FRONTEND noninteractive - -RUN \ - echo "deb http://deb.debian.org/debian buster-backports main" > \ - /etc/apt/sources.list.d/backports.list - -ARG llvm -# We can't use LLVM 14 or later from apt.llvm.org on i386 because LLVM -# 14 or later dropped support for i386. -RUN apt-get update -y -q && \ - apt-get install -y -q --no-install-recommends \ - dpkg-dev && \ - latest_available_llvm_i386=13 && \ - if [ $(dpkg-architecture -qDEB_HOST_ARCH) = "i386" -a \ - "${llvm}" -gt "${latest_available_llvm_i386}" ]; then \ - available_llvm="${latest_available_llvm_i386}"; \ - else \ - available_llvm="${llvm}"; \ - fi && \ - apt-get update -y -q && \ - apt-get install -y -q --no-install-recommends \ - apt-transport-https \ - ca-certificates \ - gnupg \ - wget && \ - wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - && \ - echo "deb https://apt.llvm.org/buster/ llvm-toolchain-buster-${available_llvm} main" > \ - /etc/apt/sources.list.d/llvm.list && \ - apt-get update -y -q && \ - apt-get install -y -q --no-install-recommends \ - autoconf \ - ccache \ - clang-${available_llvm} \ - cmake \ - curl \ - g++ \ - gcc \ - gdb \ - git \ - libbenchmark-dev \ - libboost-all-dev \ - libbrotli-dev \ - libbz2-dev \ - libc-ares-dev \ - libcurl4-openssl-dev \ - libgflags-dev \ - libgmock-dev \ - libgoogle-glog-dev \ - liblz4-dev \ - libre2-dev \ - libsnappy-dev \ - libssl-dev \ - libthrift-dev \ - libutf8proc-dev \ - llvm-${available_llvm}-dev \ - make \ - ninja-build \ - nlohmann-json3-dev \ - pkg-config \ - protobuf-compiler \ - python3-pip \ - rapidjson-dev \ - rsync \ - tzdata \ - zlib1g-dev && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* - -COPY ci/scripts/install_minio.sh /arrow/ci/scripts/ -RUN /arrow/ci/scripts/install_minio.sh latest /usr/local - -COPY ci/scripts/install_sccache.sh /arrow/ci/scripts/ -RUN /arrow/ci/scripts/install_sccache.sh unknown-linux-musl /usr/local/bin - -ENV absl_SOURCE=BUNDLED \ - ARROW_ACERO=ON \ - ARROW_BUILD_TESTS=ON \ - ARROW_DATASET=ON \ - ARROW_DEPENDENCY_SOURCE=SYSTEM \ - ARROW_FLIGHT=ON \ - ARROW_GANDIVA=ON \ - ARROW_HOME=/usr/local \ - ARROW_ORC=ON \ - ARROW_PARQUET=ON \ - ARROW_S3=ON \ - ARROW_USE_CCACHE=ON \ - ARROW_WITH_BROTLI=ON \ - ARROW_WITH_BZ2=ON \ - ARROW_WITH_LZ4=ON \ - ARROW_WITH_OPENTELEMETRY=OFF \ - ARROW_WITH_SNAPPY=ON \ - ARROW_WITH_ZLIB=ON \ - ARROW_WITH_ZSTD=ON \ - AWSSDK_SOURCE=BUNDLED \ - cares_SOURCE=BUNDLED \ - CC=gcc \ - CXX=g++ \ - gRPC_SOURCE=BUNDLED \ - GTest_SOURCE=BUNDLED \ - ORC_SOURCE=BUNDLED \ - PATH=/usr/lib/ccache/:$PATH \ - Protobuf_SOURCE=BUNDLED \ - xsimd_SOURCE=BUNDLED \ - zstd_SOURCE=BUNDLED diff --git a/ci/docker/debian-10-go-cgo-python.dockerfile b/ci/docker/debian-10-go-cgo-python.dockerfile deleted file mode 100644 index 46455a42bb3a9..0000000000000 --- a/ci/docker/debian-10-go-cgo-python.dockerfile +++ /dev/null @@ -1,36 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -ARG base -FROM ${base} - -ENV DEBIAN_FRONTEND noninteractive - -# Install python3 and pip so we can install pyarrow to test the C data interface. -RUN apt-get update -y -q && \ - apt-get install -y -q --no-install-recommends \ - python3 \ - python3-pip && \ - apt-get clean - -RUN ln -s /usr/bin/python3 /usr/local/bin/python && \ - ln -s /usr/bin/pip3 /usr/local/bin/pip - -# Need a newer pip than Debian's to install manylinux201x wheels -RUN pip install -U pip - -RUN pip install pyarrow cffi --only-binary pyarrow diff --git a/ci/docker/debian-10-go.dockerfile b/ci/docker/debian-10-go.dockerfile deleted file mode 100644 index 8d964c76a66fa..0000000000000 --- a/ci/docker/debian-10-go.dockerfile +++ /dev/null @@ -1,30 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -ARG arch=amd64 -ARG go=1.17 -ARG staticcheck=v0.2.2 -FROM ${arch}/golang:${go}-buster - -# FROM collects all the args, get back the staticcheck version arg -ARG staticcheck - -RUN GO111MODULE=on go install honnef.co/go/tools/cmd/staticcheck@${staticcheck} - -# Copy the go.mod and go.sum over and pre-download all the dependencies -COPY go/ /arrow/go -RUN cd /arrow/go && go mod download diff --git a/ci/docker/debian-10-js.dockerfile b/ci/docker/debian-10-js.dockerfile deleted file mode 100644 index e0938d96cd5b7..0000000000000 --- a/ci/docker/debian-10-js.dockerfile +++ /dev/null @@ -1,33 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -ARG arch=amd64 -ARG node=16 -FROM ${arch}/node:${node} - -ENV NODE_NO_WARNINGS=1 - -# install rsync for copying the generated documentation -RUN apt-get update -y -q && \ - apt-get install -y -q --no-install-recommends rsync && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* - -# TODO(kszucs): -# 1. add the files required to install the dependencies to .dockerignore -# 2. copy these files to their appropriate path -# 3. download and compile the dependencies diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml index 60ed4f440dc06..72f7afcc05cfd 100644 --- a/dev/tasks/tasks.yml +++ b/dev/tasks/tasks.yml @@ -1122,7 +1122,7 @@ tasks: flags: -e ARROW_SKYHOOK=ON image: ubuntu-cpp -{% for debian_version in ["10", "11"] %} +{% for debian_version in ["11"] %} test-debian-{{ debian_version }}-cpp-amd64: ci: github template: docker-tests/github.linux.yml diff --git a/docker-compose.yml b/docker-compose.yml index a0db964ab0b06..bbda6e94ec5f8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -332,7 +332,7 @@ services: # docker-compose run --rm debian-cpp # Parameters: # ARCH: amd64, arm64v8, ... - # DEBIAN: 10, 11 + # DEBIAN: 11 image: ${REPO}:${ARCH}-debian-${DEBIAN}-cpp build: context: . @@ -699,7 +699,7 @@ services: # docker-compose run --rm debian-c-glib # Parameters: # ARCH: amd64, arm64v8, ... - # DEBIAN: 10, 11 + # DEBIAN: 11 image: ${REPO}:${ARCH}-debian-${DEBIAN}-c-glib build: context: . @@ -759,7 +759,7 @@ services: # docker-compose run --rm debian-ruby # Parameters: # ARCH: amd64, arm64v8, ... - # DEBIAN: 10, 11 + # DEBIAN: 11 image: ${REPO}:${ARCH}-debian-${DEBIAN}-ruby build: context: . @@ -891,7 +891,7 @@ services: # docker-compose run --rm debian-python # Parameters: # ARCH: amd64, arm64v8, ... - # DEBIAN: 10, 11 + # DEBIAN: 11 image: ${REPO}:${ARCH}-debian-${DEBIAN}-python-3 build: context: .