Skip to content

Commit cf28c60

Browse files
Merge branch 'master' into will/serve_typing_generator
2 parents 53e2dca + 32cc715 commit cf28c60

File tree

706 files changed

+58820
-13591
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

706 files changed

+58820
-13591
lines changed

.buildkite/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
load("@py_deps_buildkite//:requirements.bzl", ci_require = "requirement")
1+
load("@py_deps_py310//:requirements.bzl", ci_require = "requirement")
22
load("@rules_python//python:defs.bzl", "py_binary")
33

44
py_binary(

.buildkite/_images.rayci.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ steps:
1414
- "3.12"
1515
env:
1616
PYTHON_VERSION: "{{matrix}}"
17+
REQUIREMENTS_FILE: "ray_base_deps_py{{matrix}}.lock"
1718
ARCH_SUFFIX: ""
1819

1920
- name: raycpubaseextra
@@ -28,6 +29,7 @@ steps:
2829
PYTHON_VERSION: "{{matrix}}"
2930
IMAGE_TYPE: "ray"
3031
ARCH_SUFFIX: ""
32+
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix}}.lock"
3133
depends_on: raycpubase
3234

3335
- name: raycudabase
@@ -55,6 +57,7 @@ steps:
5557
env:
5658
PYTHON_VERSION: "{{matrix.python}}"
5759
CUDA_VERSION: "{{matrix.cuda}}"
60+
REQUIREMENTS_FILE: "ray_base_deps_py{{matrix.python}}.lock"
5861
ARCH_SUFFIX: ""
5962

6063
- name: raycudabaseextra
@@ -81,6 +84,7 @@ steps:
8184
CUDA_VERSION: "{{matrix.cuda}}"
8285
IMAGE_TYPE: "ray"
8386
ARCH_SUFFIX: ""
87+
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix.python}}.lock"
8488
depends_on: raycudabase
8589

8690
- name: ray-llmbase
@@ -114,6 +118,7 @@ steps:
114118
CUDA_VERSION: "{{matrix.cuda}}"
115119
IMAGE_TYPE: "ray-llm"
116120
ARCH_SUFFIX: ""
121+
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix.python}}.lock"
117122
depends_on: ray-llmbase
118123

119124
- name: ray-mlcpubase
@@ -141,6 +146,7 @@ steps:
141146
PYTHON_VERSION: "{{matrix}}"
142147
IMAGE_TYPE: "ray-ml"
143148
ARCH_SUFFIX: ""
149+
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix}}.lock"
144150
depends_on: ray-mlcpubase
145151

146152
- name: ray-mlcudabase
@@ -178,6 +184,7 @@ steps:
178184
CUDA_VERSION: "{{matrix.cuda}}"
179185
IMAGE_TYPE: "ray-ml"
180186
ARCH_SUFFIX: ""
187+
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix.python}}.lock"
181188
depends_on: ray-mlcudabase
182189

183190
- name: ray-slimcpubase

.buildkite/data.rayci.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@ steps:
145145
- data
146146
- skip-on-premerge
147147
- oss
148+
- disabled
148149
instance_type: medium
149150
parallelism: 2
150151
commands:
@@ -161,6 +162,7 @@ steps:
161162
- data
162163
- skip-on-premerge
163164
- oss
165+
- disabled
164166
instance_type: medium
165167
commands:
166168
- bazel run //ci/ray_ci:test_in_docker -- //python/ray/data/... //python/ray/air/... data

.buildkite/doc.rayci.yml

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ steps:
1010
matrix:
1111
- "3.9"
1212
- "3.10"
13-
- "3.12"
1413
env:
1514
PYTHON: "{{matrix}}"
1615
REQUIREMENTS_FILE: "python/deplocks/docs/docbuild_depset_py{{matrix}}.lock"
@@ -30,7 +29,7 @@ steps:
3029
commands:
3130
- bazel run //ci/ray_ci/doc:cmd_build
3231
depends_on: docbuild
33-
job_env: docbuild-py3.12
32+
job_env: docbuild-py3.10
3433
tags:
3534
- oss
3635
- doc
@@ -54,7 +53,7 @@ steps:
5453
key: doc_api_annotations
5554
instance_type: medium
5655
depends_on: docbuild
57-
job_env: docbuild-py3.12
56+
job_env: docbuild-py3.10
5857
commands:
5958
- bash ci/lint/lint.sh api_annotations
6059

@@ -76,8 +75,7 @@ steps:
7675
key: doc_api_policy_check
7776
instance_type: medium
7877
depends_on: docbuild
79-
# TODO(aslonnie): migrate to Python 3.12
80-
job_env: docbuild-py3.9
78+
job_env: docbuild-py3.10
8179
commands:
8280
- bash ci/lint/lint.sh api_policy_check
8381

@@ -87,7 +85,7 @@ steps:
8785
commands:
8886
- make -C doc/ linkcheck_all
8987
depends_on: docbuild
90-
job_env: docbuild-py3.12
88+
job_env: docbuild-py3.10
9189
tags:
9290
- oss
9391
- skip-on-premerge

.buildkite/linux_aarch64.rayci.yml

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,20 +32,19 @@ steps:
3232
- docker
3333
wanda: docker/base-deps/cpu.wanda.yaml
3434
matrix:
35-
- "3.9"
3635
- "3.10"
3736
- "3.11"
3837
- "3.12"
3938
instance_type: builder-arm64
4039
env:
4140
PYTHON_VERSION: "{{matrix}}"
4241
ARCH_SUFFIX: "-aarch64"
42+
REQUIREMENTS_FILE: "ray_base_deps_py{{matrix}}.lock"
4343

4444
- name: raycpubaseextra-aarch64
4545
label: "wanda: ray.py{{matrix}}.cpu.base-extra (aarch64)"
4646
wanda: docker/base-extra/cpu.wanda.yaml
4747
matrix:
48-
- "3.9"
4948
- "3.10"
5049
- "3.11"
5150
- "3.12"
@@ -54,6 +53,7 @@ steps:
5453
PYTHON_VERSION: "{{matrix}}"
5554
IMAGE_TYPE: "ray"
5655
ARCH_SUFFIX: "-aarch64"
56+
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix}}.lock"
5757
depends_on: raycpubase-aarch64
5858

5959
- name: raycudabase-aarch64
@@ -65,7 +65,6 @@ steps:
6565
matrix:
6666
setup:
6767
python:
68-
- "3.9"
6968
- "3.10"
7069
- "3.11"
7170
- "3.12"
@@ -83,14 +82,14 @@ steps:
8382
PYTHON_VERSION: "{{matrix.python}}"
8483
CUDA_VERSION: "{{matrix.cuda}}"
8584
ARCH_SUFFIX: "-aarch64"
85+
REQUIREMENTS_FILE: "ray_base_deps_py{{matrix.python}}.lock"
8686

8787
- name: raycudabaseextra-aarch64
8888
label: "wanda: ray.py{{matrix.python}}.cu{{matrix.cuda}}.base-extra (aarch64)"
8989
wanda: docker/base-extra/cuda.wanda.yaml
9090
matrix:
9191
setup:
9292
python:
93-
- "3.9"
9493
- "3.10"
9594
- "3.11"
9695
- "3.12"
@@ -109,6 +108,7 @@ steps:
109108
CUDA_VERSION: "{{matrix.cuda}}"
110109
IMAGE_TYPE: "ray"
111110
ARCH_SUFFIX: "-aarch64"
111+
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix.python}}.lock"
112112
depends_on: raycudabase-aarch64
113113

114114
- name: ray-core-build-aarch64
@@ -136,7 +136,6 @@ steps:
136136
commands:
137137
- bazel run //ci/ray_ci:build_in_docker -- wheel --python-version {{matrix}} --architecture aarch64 --upload
138138
matrix:
139-
- "3.9"
140139
- "3.10"
141140
- "3.11"
142141
- "3.12"
@@ -168,7 +167,6 @@ steps:
168167
- raycpubaseextra-aarch64
169168
job_env: forge-aarch64
170169
matrix:
171-
- "3.9"
172170
- "3.10"
173171
- "3.11"
174172
- "3.12"
@@ -195,7 +193,6 @@ steps:
195193
- raycpubase-aarch64
196194
job_env: forge-aarch64
197195
matrix:
198-
- "3.9"
199196
- "3.10"
200197
- "3.11"
201198
- "3.12"

.buildkite/release-automation/forge_arm64.Dockerfile

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# syntax=docker/dockerfile:1.3-labs
22

3-
FROM ubuntu:20.04
3+
FROM ubuntu:22.04
44

55
ENV DEBIAN_FRONTEND=noninteractive
66

@@ -16,17 +16,37 @@ apt-get install -y curl zip clang-12
1616
ln -s /usr/bin/clang-12 /usr/bin/clang
1717

1818
# Install miniforge3
19-
curl -sfL https://github.com/conda-forge/miniforge/releases/download/25.3.0-1/Miniforge3-25.3.0-1-Linux-aarch64.sh > /tmp/miniforge3.sh
19+
curl -fsSL https://github.com/conda-forge/miniforge/releases/download/25.3.0-1/Miniforge3-25.3.0-1-Linux-aarch64.sh > /tmp/miniforge3.sh
2020
bash /tmp/miniforge3.sh -b -u -p /usr/local/bin/miniforge3
2121
rm /tmp/miniforge3.sh
2222
/usr/local/bin/miniforge3/bin/conda init bash
2323

2424
# Install Bazelisk
25-
curl -L https://github.com/bazelbuild/bazelisk/releases/download/v1.19.0/bazelisk-linux-arm64 --output /usr/local/bin/bazelisk
25+
curl -fsSL https://github.com/bazelbuild/bazelisk/releases/download/v1.19.0/bazelisk-linux-arm64 --output /usr/local/bin/bazelisk
2626
chmod +x /usr/local/bin/bazelisk
2727

2828
ln -s /usr/local/bin/bazelisk /usr/local/bin/bazel
2929

30+
# Install uv
31+
curl -fsSL https://astral.sh/uv/install.sh | env UV_UNMANAGED_INSTALL="/usr/local/bin" sh
32+
33+
mkdir -p /usr/local/python
34+
# Install Python using uv
35+
UV_PYTHON_VERSION=3.10
36+
uv python install --install-dir /usr/local/python "$UV_PYTHON_VERSION"
37+
38+
export UV_PYTHON_INSTALL_DIR=/usr/local/python
39+
# Make Python from uv the default by creating symlinks
40+
UV_PYTHON_BIN="$(uv python find --no-project "$UV_PYTHON_VERSION")"
41+
echo "uv python binary location: $UV_PYTHON_BIN"
42+
ln -s "$UV_PYTHON_BIN" "/usr/local/bin/python${UV_PYTHON_VERSION}"
43+
ln -s "$UV_PYTHON_BIN" /usr/local/bin/python3
44+
ln -s "$UV_PYTHON_BIN" /usr/local/bin/python
45+
46+
# As a convention, we pin all python packages to a specific version. This
47+
# is to to make sure we can control version upgrades through code changes.
48+
uv pip install --system pip==25.2 cffi==1.16.0
49+
3050
EOF
3151

3252
ENV CC=clang

.buildkite/release-automation/forge_x86_64.Dockerfile

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# syntax=docker/dockerfile:1.3-labs
22

3-
FROM ubuntu:20.04
3+
FROM ubuntu:22.04
44

55
ENV DEBIAN_FRONTEND=noninteractive
66

@@ -21,17 +21,37 @@ addgroup --gid 992 docker1 # docker group on buildkite AMI as of 2025-06-07
2121
ln -s /usr/bin/clang-12 /usr/bin/clang
2222

2323
# Install miniforge3
24-
curl -sfL https://github.com/conda-forge/miniforge/releases/download/25.3.0-1/Miniforge3-25.3.0-1-Linux-x86_64.sh > /tmp/miniforge3.sh
24+
curl -fsSL https://github.com/conda-forge/miniforge/releases/download/25.3.0-1/Miniforge3-25.3.0-1-Linux-x86_64.sh > /tmp/miniforge3.sh
2525
bash /tmp/miniforge3.sh -b -u -p /usr/local/bin/miniforge3
2626
rm /tmp/miniforge3.sh
2727
/usr/local/bin/miniforge3/bin/conda init bash
2828

2929
# Install Bazelisk
30-
curl -L https://github.com/bazelbuild/bazelisk/releases/download/v1.19.0/bazelisk-linux-amd64 --output /usr/local/bin/bazelisk
30+
curl -fsSL https://github.com/bazelbuild/bazelisk/releases/download/v1.19.0/bazelisk-linux-amd64 --output /usr/local/bin/bazelisk
3131
chmod +x /usr/local/bin/bazelisk
3232

3333
ln -s /usr/local/bin/bazelisk /usr/local/bin/bazel
3434

35+
# Install uv
36+
curl -fsSL https://astral.sh/uv/install.sh | env UV_UNMANAGED_INSTALL="/usr/local/bin" sh
37+
38+
mkdir -p /usr/local/python
39+
# Install Python using uv
40+
UV_PYTHON_VERSION=3.10
41+
uv python install --install-dir /usr/local/python "$UV_PYTHON_VERSION"
42+
43+
export UV_PYTHON_INSTALL_DIR=/usr/local/python
44+
# Make Python from uv the default by creating symlinks
45+
UV_PYTHON_BIN="$(uv python find --no-project "$UV_PYTHON_VERSION")"
46+
echo "uv python binary location: $UV_PYTHON_BIN"
47+
ln -s "$UV_PYTHON_BIN" "/usr/local/bin/python${UV_PYTHON_VERSION}"
48+
ln -s "$UV_PYTHON_BIN" /usr/local/bin/python3
49+
ln -s "$UV_PYTHON_BIN" /usr/local/bin/python
50+
51+
# As a convention, we pin all python packages to a specific version. This
52+
# is to to make sure we can control version upgrades through code changes.
53+
uv pip install --system pip==25.2 cffi==1.16.0
54+
3555
# A non-root user. Use 2000, which is the same as our buildkite agent VM uses.
3656
adduser --home /home/forge --uid 2000 forge --gid 100
3757
usermod -a -G docker forge

.buildkite/release/custom-image-build-and-test-init.sh

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,36 +20,49 @@ fi
2020
export RAYCI_BUILD_ID="${BUILD_ID}"
2121
echo "RAYCI_BUILD_ID: ${RAYCI_BUILD_ID}"
2222

23-
2423
aws ecr get-login-password --region us-west-2 | \
2524
docker login --username AWS --password-stdin 029272617770.dkr.ecr.us-west-2.amazonaws.com
2625

2726
bash release/gcloud_docker_login.sh release/aws2gce_iam.json
2827
export PATH="${PWD}/google-cloud-sdk/bin:$PATH"
2928

30-
echo "Generate custom build steps"
31-
echo "Downloading Bazel"
29+
30+
echo "--- Install Bazel"
3231
curl -sSfLo /tmp/bazel https://github.com/bazelbuild/bazelisk/releases/download/v1.19.0/bazelisk-linux-amd64
33-
echo "Making Bazel executable"
3432
chmod +x /tmp/bazel
3533

34+
35+
echo "--- Install uv"
36+
37+
UV_PYTHON_VERSION=3.10
38+
curl -LsSf https://astral.sh/uv/install.sh | sh
39+
UV_BIN="${HOME}/.local/bin/uv"
40+
"${UV_BIN}" python install "${UV_PYTHON_VERSION}"
41+
UV_PYTHON_BIN="$("${UV_BIN}" python find --no-project "${UV_PYTHON_VERSION}")"
42+
43+
44+
echo "--- Generate custom build steps"
45+
3646
if [[ "${AUTOMATIC:-0}" == "1" && "${BUILDKITE_BRANCH}" == "master" ]]; then
3747
export REPORT_TO_RAY_TEST_DB=1
3848
fi
3949

4050
RUN_FLAGS=()
41-
4251
if [[ "${AUTOMATIC:-0}" == "0" || "${BUILDKITE_BRANCH}" == "releases/"* ]]; then
4352
RUN_FLAGS+=(--run-jailed-tests)
4453
fi
4554
if [[ "${BUILDKITE_BRANCH}" != "releases/"* ]]; then
4655
RUN_FLAGS+=(--run-unstable-tests)
4756
fi
4857

49-
echo "---- Build test steps"
50-
/tmp/bazel run //release:custom_image_build_and_test_init\
51-
-- "${RUN_FLAGS[@]}" \
58+
/tmp/bazel build --python_path="${UV_PYTHON_BIN}" \
59+
--build_python_zip --enable_runfiles \
60+
--incompatible_use_python_toolchains=false \
61+
//release:custom_image_build_and_test_init
62+
63+
BUILD_WORKSPACE_DIRECTORY="${PWD}" bazel-bin/release/custom_image_build_and_test_init \
64+
"${RUN_FLAGS[@]}" \
5265
--custom-build-jobs-output-file .buildkite/release/custom_build_jobs.rayci.yaml \
53-
--test-jobs-output-file .buildkite/release/release_tests.json \
66+
--test-jobs-output-file .buildkite/release/release_tests.json
5467

5568
buildkite-agent pipeline upload .buildkite/release/release_tests.json

.buildkite/serve.rayci.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ steps:
1010
label: "wanda: servebuild-py{{matrix}}"
1111
wanda: ci/docker/serve.build.wanda.yaml
1212
matrix:
13-
- "3.9"
1413
- "3.10"
1514
- "3.12"
1615
env:
@@ -30,7 +29,7 @@ steps:
3029
wanda: ci/docker/min.build.wanda.yaml
3130
matrix:
3231
setup:
33-
python: ["3.9", "3.10"]
32+
python: ["3.10"]
3433
extra: ["serve", "default"]
3534
env:
3635
PYTHON_VERSION: "{{matrix.python}}"
@@ -48,7 +47,7 @@ steps:
4847
- bazel run //ci/ray_ci:test_in_docker -- //python/ray/serve/... //python/ray/tests/... serve
4948
--except-tags post_wheel_build,gpu,ha_integration,serve_tracing
5049
--workers "$${BUILDKITE_PARALLEL_JOB_COUNT}" --worker-id "$${BUILDKITE_PARALLEL_JOB}" --parallelism-per-worker 3
51-
--build-name servebuild-py3.9 --test-env=EXPECTED_PYTHON_VERSION=3.9
50+
--build-name servebuild-py3.10 --test-env=EXPECTED_PYTHON_VERSION=3.10 --python-version 3.10
5251
depends_on: servebuild-multipy
5352

5453
- label: ":ray-serve: serve: pydantic < 2.0 tests"

.buildkite/windows.rayci.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ steps:
2424
- bash ci/ray_ci/windows/install_tools.sh
2525
- bazel run //ci/ray_ci:build_in_docker_windows -- wheel --python-version {{matrix}} --operating-system windows --upload
2626
matrix:
27-
- "3.9"
2827
- "3.10"
2928
- "3.11"
3029
- "3.12"

0 commit comments

Comments
 (0)