Skip to content

Fix CI image build failure for Python 3.14 on ARM64 by adding aarch64 ray wheel#64017

Open
nailo2c wants to merge 2 commits intoapache:mainfrom
nailo2c:fix/ray-arm64-python314-wheel
Open

Fix CI image build failure for Python 3.14 on ARM64 by adding aarch64 ray wheel#64017
nailo2c wants to merge 2 commits intoapache:mainfrom
nailo2c:fix/ray-arm64-python314-wheel

Conversation

@nailo2c
Copy link
Contributor

@nailo2c nailo2c commented Mar 20, 2026

Related to this canary run CI failure: https://github.com/apache/airflow/actions/runs/23363649221/job/67972753880

Before I added it, running this command on my local device could reproduce the failure:
breeze ci-image build --python 3.14 --platform linux/arm64

...
 => [main 15/25] COPY --from=scripts install_airflow_when_building_images.sh /scripts/docker/                                        0.0s
 => [internal] load build context                                                                                                    1.6s
 => => transferring context: 1.11MB                                                                                                  1.5s
 => [main 16/25] COPY . /opt/airflow/                                                                                               13.0s
 => ERROR [main 17/25] RUN --mount=type=cache,id=ci-arm64-2,target=/root/.cache/ bash /scripts/docker/install_airflow_when_buildi  184.5s
------
 > importing cache manifest from ghcr.io/apache/airflow/main/ci/python3.14:cache-linux-arm64:
------
------
 > [main 17/25] RUN --mount=type=cache,id=ci-arm64-2,target=/root/.cache/ bash /scripts/docker/install_airflow_when_building_images.sh:
1.336 
1.336 Using 'uv' to install Airflow
1.336 
1.446 
1.446 Downloading constraints from https://raw.githubusercontent.com/apache/airflow/constraints-main/constraints-source-providers-3.14.txt to /root/constraints.txt 
1.446 
1.885 PATH=/usr/python/bin:/root/.local/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
3.100 Installed pip: pip 26.0.1 from /usr/python/lib/python3.14/site-packages/pip (python 3.14): /usr/python/bin/pip
3.102 Using 'uv' to install Airflow
3.188 Installed uv: uv 0.10.12 (aarch64-unknown-linux-gnu): /usr/python/bin/uv
3.191 
3.191 Attempting to upgrade all packages to highest versions.
3.192 
3.192 + uv sync --all-packages --resolution highest --group dev --group docs --group docs-gen --group leveldb --no-binary-package lxml --no-binary-package xmlsec --no-python-downloads --no-managed-python
183.4 Resolved 901 packages in 2m 59s
183.8 error: Distribution `ray==3.0.0.dev0 @ direct+https://s3-us-west-2.amazonaws.com/ray-wheels/master/671390966dc4081d68c4cd5cdb359b0b5773cb56/ray-3.0.0.dev0-cp314-cp314-manylinux2014_x86_64.whl` can't be installed because the binary distribution is incompatible with the current platform
183.8 
183.8 hint: You're on Linux (`manylinux_2_36_aarch64`), but `ray` (v3.0.0.dev0) only has wheels for the following platform: `manylinux2014_x86_64`; consider adding "sys_platform == 'linux' and platform_machine == 'aarch64'" to `tool.uv.required-environments` to ensure uv resolves to a version with compatible wheels
------
ERROR: failed to solve: process "/bin/bash -o pipefail -o errexit -o nounset -o nolog -c bash /scripts/docker/install_airflow_when_building_images.sh" did not complete successfully: exit code: 2
Error when building image! Image build: 3.14:linux/arm64

Was generative AI tooling used to co-author this PR?
  • Yes (please specify the tool below)

Generated-by: [Claude Opus 4.6] following the guidelines


  • Read the Pull Request Guidelines for more information. Note: commit author/co-author name and email in commits become permanently public when merged.
  • For fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
  • When adding dependency, check compliance with the ASF 3rd Party License Policy.
  • For significant user-facing changes create newsfragment: {pr_number}.significant.rst, in airflow-core/newsfragments. You can add this file in a follow-up commit after the PR is created so you know the PR number.

@nailo2c nailo2c marked this pull request as ready for review March 20, 2026 23:24
@potiuk
Copy link
Member

potiuk commented Mar 21, 2026

No - we should rather disable Ray on 3.14.

@potiuk potiuk closed this Mar 21, 2026
@potiuk potiuk reopened this Mar 21, 2026
@nailo2c
Copy link
Contributor Author

nailo2c commented Mar 21, 2026

Okay I read #63520 - currently we use a nightly build of Ray to support Python 3.14. It makes more sense to disable it until a stable version is available. Let me update the PR.

@nailo2c nailo2c requested a review from shahar1 as a code owner March 21, 2026 01:56
@nailo2c nailo2c force-pushed the fix/ray-arm64-python314-wheel branch from f392435 to ae25bac Compare March 21, 2026 05:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants