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
14 changes: 14 additions & 0 deletions ci/docker/ray-extra-image-cpu.wanda.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: "ray-extra-py$PYTHON_VERSION-cpu$ARCH_SUFFIX"
disable_caching: true
froms:
- "cr.ray.io/rayproject/ray-py$PYTHON_VERSION-cpu-base-extra$ARCH_SUFFIX" # CPU base-extra image
- "cr.ray.io/rayproject/ray-wheel-py$PYTHON_VERSION$ARCH_SUFFIX" # Ray wheel
dockerfile: ci/docker/ray-image.Dockerfile
build_args:
- PYTHON_VERSION
- ARCH_SUFFIX
- IMAGE_TYPE=ray
- PLATFORM=cpu
- BASE_VARIANT=base-extra
- RAY_COMMIT=$BUILDKITE_COMMIT
- RAY_VERSION
14 changes: 14 additions & 0 deletions ci/docker/ray-extra-image-cuda.wanda.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: "ray-extra-py$PYTHON_VERSION-cu$CUDA_VERSION$ARCH_SUFFIX"
disable_caching: true
froms:
- "cr.ray.io/rayproject/ray-py$PYTHON_VERSION-cu$CUDA_VERSION-base-extra$ARCH_SUFFIX" # CUDA base-extra image
- "cr.ray.io/rayproject/ray-wheel-py$PYTHON_VERSION$ARCH_SUFFIX" # Ray wheel
dockerfile: ci/docker/ray-image.Dockerfile
build_args:
- PYTHON_VERSION
- ARCH_SUFFIX
- IMAGE_TYPE=ray
- PLATFORM=cu$CUDA_VERSION
- BASE_VARIANT=base-extra
- RAY_COMMIT=$BUILDKITE_COMMIT
- RAY_VERSION
12 changes: 12 additions & 0 deletions ci/docker/ray-image-cpu.wanda.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: "ray-py$PYTHON_VERSION-cpu$ARCH_SUFFIX"
disable_caching: true
froms:
- "cr.ray.io/rayproject/ray-py$PYTHON_VERSION-cpu-base$ARCH_SUFFIX" # CPU base image with Python + deps
- "cr.ray.io/rayproject/ray-wheel-py$PYTHON_VERSION$ARCH_SUFFIX" # Ray wheel
Copy link

Choose a reason for hiding this comment

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

Wanda froms order reversed from Dockerfile FROM statements

High Severity

The froms list order in all 6 new wanda yaml files is reversed relative to the Dockerfile's FROM statements. The Dockerfile has FROM ${RAY_WHEEL_IMAGE} AS wheel-source first and FROM ${BASE_IMAGE} second, but the wanda files list the base image first and wheel image second. If wanda replaces FROM statements positionally, the wheel-source stage would incorrectly use the base image (which has no wheels in /), causing COPY --from=wheel-source /*.whl to fail.

Additional Locations (2)

Fix in Cursor Fix in Web

dockerfile: ci/docker/ray-image.Dockerfile
build_args:
- PYTHON_VERSION
- ARCH_SUFFIX
- PLATFORM=cpu
- RAY_COMMIT=$BUILDKITE_COMMIT
- RAY_VERSION
12 changes: 12 additions & 0 deletions ci/docker/ray-image-cuda.wanda.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: "ray-py$PYTHON_VERSION-cu$CUDA_VERSION$ARCH_SUFFIX"
disable_caching: true
froms:
- "cr.ray.io/rayproject/ray-py$PYTHON_VERSION-cu$CUDA_VERSION-base$ARCH_SUFFIX" # CUDA base image
- "cr.ray.io/rayproject/ray-wheel-py$PYTHON_VERSION$ARCH_SUFFIX" # Ray wheel
dockerfile: ci/docker/ray-image.Dockerfile
build_args:
- PYTHON_VERSION
- ARCH_SUFFIX
- PLATFORM=cu$CUDA_VERSION
- RAY_COMMIT=$BUILDKITE_COMMIT
- RAY_VERSION
52 changes: 52 additions & 0 deletions ci/docker/ray-image.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# syntax=docker/dockerfile:1.3-labs
#
# Ray Image Builder
# ==============================
# Installs the Ray wheel into a base image (CPU or CUDA), includes
# pip freeze output for reproducibility.
#
ARG PYTHON_VERSION=3.10
ARG PLATFORM=cpu
ARG ARCH_SUFFIX=
ARG IMAGE_TYPE=ray
ARG BASE_VARIANT=base
ARG BASE_IMAGE=cr.ray.io/rayproject/${IMAGE_TYPE}-py${PYTHON_VERSION}-${PLATFORM}-${BASE_VARIANT}${ARCH_SUFFIX}
ARG RAY_WHEEL_IMAGE=cr.ray.io/rayproject/ray-wheel-py${PYTHON_VERSION}${ARCH_SUFFIX}

FROM ${RAY_WHEEL_IMAGE} AS wheel-source
FROM ${BASE_IMAGE}

ARG RAY_COMMIT=unknown-commit
ARG RAY_VERSION=3.0.0.dev0

LABEL io.ray.ray-commit="${RAY_COMMIT}"
LABEL io.ray.ray-version="${RAY_VERSION}"

COPY --from=wheel-source /*.whl /home/ray/

# Install Ray wheel with all extras
# Uses requirements_compiled.txt from base image (already at /home/ray/)
RUN <<EOF
#!/bin/bash
set -euo pipefail

WHEEL_FILES=(/home/ray/ray-*.whl)
if [[ ${#WHEEL_FILES[@]} -ne 1 ]]; then
echo "Error: Expected 1 ray wheel file, but found ${#WHEEL_FILES[@]} in /home/ray/." >&2
ls -l /home/ray/*.whl >&2
exit 1
fi
WHEEL_FILE="${WHEEL_FILES[0]}"

echo "Installing wheel: $WHEEL_FILE"

$HOME/anaconda3/bin/pip --no-cache-dir install \
-c /home/ray/requirements_compiled.txt \
"${WHEEL_FILE}[all]"

$HOME/anaconda3/bin/pip freeze > /home/ray/pip-freeze.txt

echo "Ray version: $($HOME/anaconda3/bin/python -c 'import ray; print(ray.__version__)')"
EOF

CMD ["/bin/bash"]
14 changes: 14 additions & 0 deletions ci/docker/ray-llm-extra-image-cuda.wanda.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: "ray-llm-extra-py$PYTHON_VERSION-cu$CUDA_VERSION$ARCH_SUFFIX"
disable_caching: true
froms:
- "cr.ray.io/rayproject/ray-llm-py$PYTHON_VERSION-cu$CUDA_VERSION-base-extra$ARCH_SUFFIX" # LLM base-extra image
- "cr.ray.io/rayproject/ray-wheel-py$PYTHON_VERSION$ARCH_SUFFIX" # Ray wheel
dockerfile: ci/docker/ray-image.Dockerfile
build_args:
- PYTHON_VERSION
- ARCH_SUFFIX
- IMAGE_TYPE=ray-llm
- PLATFORM=cu$CUDA_VERSION
- BASE_VARIANT=base-extra
- RAY_COMMIT=$BUILDKITE_COMMIT
- RAY_VERSION
13 changes: 13 additions & 0 deletions ci/docker/ray-llm-image-cuda.wanda.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: "ray-llm-py$PYTHON_VERSION-cu$CUDA_VERSION$ARCH_SUFFIX"
disable_caching: true
froms:
- "cr.ray.io/rayproject/ray-llm-py$PYTHON_VERSION-cu$CUDA_VERSION-base$ARCH_SUFFIX" # LLM base image
- "cr.ray.io/rayproject/ray-wheel-py$PYTHON_VERSION$ARCH_SUFFIX" # Ray wheel
dockerfile: ci/docker/ray-image.Dockerfile
build_args:
- PYTHON_VERSION
- ARCH_SUFFIX
- IMAGE_TYPE=ray-llm
- PLATFORM=cu$CUDA_VERSION
- RAY_COMMIT=$BUILDKITE_COMMIT
- RAY_VERSION