Skip to content
Merged
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
5 changes: 5 additions & 0 deletions .buildkite/_images.rayci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ steps:
PYTHON_VERSION: "{{matrix}}"
IMAGE_TYPE: "ray"
ARCH_SUFFIX: ""
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix}}.lock"
depends_on: raycpubase

- name: raycudabase
Expand Down Expand Up @@ -81,6 +82,7 @@ steps:
CUDA_VERSION: "{{matrix.cuda}}"
IMAGE_TYPE: "ray"
ARCH_SUFFIX: ""
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix.python}}.lock"
depends_on: raycudabase

- name: ray-llmbase
Expand Down Expand Up @@ -114,6 +116,7 @@ steps:
CUDA_VERSION: "{{matrix.cuda}}"
IMAGE_TYPE: "ray-llm"
ARCH_SUFFIX: ""
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix.python}}.lock"
depends_on: ray-llmbase

- name: ray-mlcpubase
Expand Down Expand Up @@ -141,6 +144,7 @@ steps:
PYTHON_VERSION: "{{matrix}}"
IMAGE_TYPE: "ray-ml"
ARCH_SUFFIX: ""
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix}}.lock"
depends_on: ray-mlcpubase

- name: ray-mlcudabase
Expand Down Expand Up @@ -178,6 +182,7 @@ steps:
CUDA_VERSION: "{{matrix.cuda}}"
IMAGE_TYPE: "ray-ml"
ARCH_SUFFIX: ""
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix.python}}.lock"
depends_on: ray-mlcudabase

- name: ray-slimcpubase
Expand Down
2 changes: 2 additions & 0 deletions .buildkite/linux_aarch64.rayci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ steps:
PYTHON_VERSION: "{{matrix}}"
IMAGE_TYPE: "ray"
ARCH_SUFFIX: "-aarch64"
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix}}.lock"
depends_on: raycpubase-aarch64

- name: raycudabase-aarch64
Expand Down Expand Up @@ -109,6 +110,7 @@ steps:
CUDA_VERSION: "{{matrix.cuda}}"
IMAGE_TYPE: "ray"
ARCH_SUFFIX: "-aarch64"
REQUIREMENTS_FILE: "ray_base_extra_py{{matrix.python}}.lock"
depends_on: raycudabase-aarch64

- name: ray-core-build-aarch64
Expand Down
19 changes: 19 additions & 0 deletions ci/raydepsets/configs/rayimg.depsets.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -115,3 +115,22 @@ depsets:
build_arg_sets:
- py39
- py310

# Second layer of the ray release images. Contains anyscale cli deps (and others)
# and is a subset of the base extra test deps defined above (release image depset)
- name: ray_base_extra_${PYTHON_SHORT}
operation: subset
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you add some comment that explains why this is a subset?

source_depset: ray_base_extra_testdeps_${PYTHON_SHORT}
requirements:
- docker/base-deps/requirements.in
- docker/base-extra/requirements.in
output: python/deplocks/base_extra/ray_base_extra_py${PYTHON_VERSION}.lock
append_flags:
- --unsafe-package ray
- --python-version=${PYTHON_VERSION}
- --python-platform=linux
build_arg_sets:
- py39
- py310
- py311
- py312
27 changes: 6 additions & 21 deletions docker/base-extra/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ ENV TERM=xterm

ARG SSH_PORT=5020

ARG PYTHON_DEPSET

COPY "$PYTHON_DEPSET" /home/ray/python_depset.lock

RUN <<EOF
#!/bin/bash

Expand Down Expand Up @@ -88,29 +92,10 @@ if [[ "$ARCH" == "x86_64" ]]; then
rm -rf "${DYNOLOG_TMP}"
fi

# Python dependencies to install. To specify a version, please make the change
# in OSS ray repository, but not here.
PYTHON_REQUIREMENTS=(
azure-identity
jupyterlab
ipywidgets
grpcio
grpcio-tools

# Pinning jupyter_server_terminals==0.4.4 , the higher version will break the
# webterminal when using an older version of terminado.
jupyter_server_terminals==0.4.4

# [backend] is for installing anyscale CLI for use in the anyscale cloud.
"anyscale[backend]"
)


PYTHON_VERSION="$(python -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')"

uv pip install --system --no-cache-dir --index-strategy unsafe-best-match \
-c /home/ray/requirements_compiled.txt \
"${PYTHON_REQUIREMENTS[@]}"
uv pip install --system --no-cache-dir --no-deps --index-strategy unsafe-best-match \
-r $HOME/python_depset.lock
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

since we are using a lock file, we can just remove the requirements_compiled.txt constraint file now?


# Install awscli v2
AWSCLI_TMP="$(mktemp -d)"
Expand Down
3 changes: 3 additions & 0 deletions docker/base-extra/cpu.wanda.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
name: "$IMAGE_TYPE-py$PYTHON_VERSION-cpu-base-extra$ARCH_SUFFIX"
froms: ["cr.ray.io/rayproject/$IMAGE_TYPE-py$PYTHON_VERSION-cpu-base$ARCH_SUFFIX"]
dockerfile: docker/base-extra/Dockerfile
srcs:
- python/deplocks/base_extra/$REQUIREMENTS_FILE
build_args:
- BASE_IMAGE=cr.ray.io/rayproject/$IMAGE_TYPE-py$PYTHON_VERSION-cpu-base$ARCH_SUFFIX
- PYTHON_DEPSET=python/deplocks/base_extra/$REQUIREMENTS_FILE
tags:
- cr.ray.io/rayproject/$IMAGE_TYPE-py$PYTHON_VERSION-cpu-base-extra$ARCH_SUFFIX
3 changes: 3 additions & 0 deletions docker/base-extra/cuda.wanda.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
name: "$IMAGE_TYPE-py$PYTHON_VERSION-cu$CUDA_VERSION-base-extra$ARCH_SUFFIX"
froms: ["cr.ray.io/rayproject/$IMAGE_TYPE-py$PYTHON_VERSION-cu$CUDA_VERSION-base$ARCH_SUFFIX"]
dockerfile: docker/base-extra/Dockerfile
srcs:
- python/deplocks/base_extra/$REQUIREMENTS_FILE
build_args:
- BASE_IMAGE=cr.ray.io/rayproject/$IMAGE_TYPE-py$PYTHON_VERSION-cu$CUDA_VERSION-base$ARCH_SUFFIX
- PYTHON_DEPSET=python/deplocks/base_extra/$REQUIREMENTS_FILE
tags:
- cr.ray.io/rayproject/$IMAGE_TYPE-py$PYTHON_VERSION-cu$CUDA_VERSION-base-extra$ARCH_SUFFIX
Loading