diff --git a/.github/workflows/python-ci.yml b/.github/workflows/python-ci.yml index b7c44f922d..2b3682cca7 100644 --- a/.github/workflows/python-ci.yml +++ b/.github/workflows/python-ci.yml @@ -78,6 +78,8 @@ jobs: - uses: actions/setup-python@v6 with: python-version: ${{ matrix.python }} + - name: Install UV + uses: astral-sh/setup-uv@v7 - name: Install system dependencies run: sudo apt-get update && sudo apt-get install -y libkrb5-dev # for kerberos - name: Install diff --git a/dev/spark/Dockerfile b/dev/spark/Dockerfile index cd35671c4b..342b4f89a4 100644 --- a/dev/spark/Dockerfile +++ b/dev/spark/Dockerfile @@ -18,13 +18,14 @@ ARG BASE_IMAGE_SPARK_VERSION=4.0.1 FROM apache/spark:${BASE_IMAGE_SPARK_VERSION} # Dependency versions - keep these compatible -ARG ICEBERG_VERSION=1.10.0 +ARG ICEBERG_VERSION=1.10.1 ARG ICEBERG_SPARK_RUNTIME_VERSION=4.0_2.13 ARG SPARK_VERSION=4.0.1 ARG HADOOP_VERSION=3.4.1 ARG SCALA_VERSION=2.13 ARG AWS_SDK_VERSION=2.24.6 ARG MAVEN_MIRROR=https://repo.maven.apache.org/maven2 +ARG ICEBERG_RC_MIRROR=https://repository.apache.org/content/repositories/orgapacheiceberg-1276 USER root WORKDIR ${SPARK_HOME} @@ -55,9 +56,14 @@ RUN set -e && \ for jar_path in ${JARS_TO_DOWNLOAD}; do \ jar_name=$(basename "${jar_path}") && \ echo "Downloading ${jar_name}..." && \ + if echo "${jar_path}" | grep -q "^org/apache/iceberg/"; then \ + mirror="${ICEBERG_RC_MIRROR}"; \ + else \ + mirror="${MAVEN_MIRROR}"; \ + fi && \ curl -fsSL --retry 3 --retry-delay 5 \ -o "${jar_name}" \ - "${MAVEN_MIRROR}/${jar_path}" && \ + "${mirror}/${jar_path}" && \ echo "✓ Downloaded ${jar_name}"; \ done && \ chown -R spark:spark "${SPARK_HOME}/jars"