Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 16 additions & 1 deletion ci/docker/ubuntu-22.04-verify-rc.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,26 @@ FROM --platform=linux/${arch} ${base}

ENV DEBIAN_FRONTEND=noninteractive
COPY dev/release/setup-ubuntu.sh /
RUN /setup-ubuntu.sh && \
RUN INSTALL_PYTHON=0 /setup-ubuntu.sh && \
rm /setup-ubuntu.sh && \
apt-get clean && \
rm -rf /var/lib/apt/lists*

# Ubuntu 22.04 only provides Python 3.10. Install a supported Python from
# conda-forge (without activating Conda env) for non-Conda verify-rc job
ARG python=3.12
COPY ci/scripts/install_conda.sh /arrow/ci/scripts/
RUN /arrow/ci/scripts/install_conda.sh miniforge3 26.1.1-3 /opt/conda && \
/opt/conda/bin/mamba create -y -p /opt/python python=${python} && \
rm -rf \
/etc/profile.d/conda.sh \
/opt/conda \
/root/.conda \
/root/.condarc \
/root/.mamba
ENV PATH=/opt/python/bin:$PATH \
PYTHON_VERSION=${python}

ARG cmake
COPY ci/scripts/install_cmake.sh /arrow/ci/scripts/
RUN /arrow/ci/scripts/install_cmake.sh ${cmake} /usr/local/
11 changes: 8 additions & 3 deletions dev/release/setup-ubuntu.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,14 @@ version=$(. /etc/os-release && echo ${VERSION_ID})

apt-get update -y -q

# The Ubuntu 22.04 verification image supplies a supported Python separately.
if [ "${INSTALL_PYTHON:-1}" -gt 0 ]; then
apt-get install -y -q --no-install-recommends \
python3-dev \
python3-pip \
python3-venv
fi

if [ ${version} \> "22.04" ]; then
# Some tests rely on legacy timezone aliases such as "US/Pacific"
apt-get install -y -q --no-install-recommends \
Expand All @@ -49,9 +57,6 @@ apt-get install -y -q --no-install-recommends \
ninja-build \
nlohmann-json3-dev \
pkg-config \
python3-dev \
python3-venv \
python3-pip \
ruby-dev \
tzdata \
wget
7 changes: 4 additions & 3 deletions dev/release/verify-release-candidate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -362,7 +362,7 @@ install_conda() {
maybe_setup_conda() {
# Optionally setup conda environment with the passed dependencies
local env="conda-${CONDA_ENV:-source}"
local pyver=${PYTHON_VERSION:-3}
local pyver=${PYTHON_VERSION:-3.12}

if [ "${USE_CONDA}" -gt 0 ]; then
show_info "Configuring Conda environment..."
Expand All @@ -377,9 +377,10 @@ maybe_setup_conda() {
if ! conda env list | cut -d" " -f 1 | grep $env; then
mamba create -y -n $env python=${pyver}
fi
# Install dependencies
# Install dependencies. Python version pinned so an unversioned
# python dependency does not replace it
if [ $# -gt 0 ]; then
mamba install -y -n $env $@
mamba install -y -n $env python=${pyver} $@
fi
# Activate the environment
conda activate $env
Expand Down
10 changes: 3 additions & 7 deletions dev/tasks/verify-rc/github.linux.amd64.docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,11 @@ jobs:
{% if distro == 'almalinux' and target|upper == 'PYTHON' %}
-e ARROW_GANDIVA=OFF \
{% endif %}
{% if distro == "conda" and target == "integration" %}
{# JPype doesn't work with Python 3.13.
# See also:
# * https://discuss.python.org/t/api-for-python-3-13-prevents-use-of-3rd-party-gc-allocators/62709/5
# * GH-44386
# * GH-44389
{# Use a supported Python version on distributions with older
# default Python and avoid selecting free-threaded Python in
# the Conda environment.
#}
-e PYTHON_VERSION="3.12" \
{% endif %}
-e VERIFY_RC="{{ rc|default("") }}" \
-e TEST_DEFAULT=0 \
{% if target == "cpp" %}
Expand Down
Loading