365 lines
8.1 KiB
Plaintext
365 lines
8.1 KiB
Plaintext
# Ray CI conditional testing rules definition files
|
|
#
|
|
# Comment content, after '#', will be ignored.
|
|
# Empty lines will be ignored too.
|
|
#
|
|
# ! tag1 tag2 tag3 # Declares a tag. A tag must be declared first to be used.
|
|
# # Tags must be declared at the beginning.
|
|
#
|
|
# dir/ # Directory to match
|
|
# file # File to match
|
|
# dir/*.py # Pattern to match, using fnmatch, matches dir/a.py dir/dir/b.py or dir/.py
|
|
# @ tag1 tag2 tag3 # Tags to emit for a rule. A rule without tags is a skipping rule.
|
|
#
|
|
# ; # Semicolon to separate rules
|
|
|
|
! always lint
|
|
! core_python cpp core_cpp java workflow cgraphs_direct_transport dashboard
|
|
! ray_client runtime_env_container
|
|
! data dask serve ml tune train train_gpu llm rllib rllib_gpu rllib_directly
|
|
! linux_wheels macos_wheels docker doc python_dependencies min_build tools windows
|
|
! release_tests spark_on_ray rocksdb_tests redis_tests
|
|
|
|
# Documentation prose (.md and .rst) does not block premerge. A content-only
|
|
# change to narrative docs triggers no library test steps: prose can't change
|
|
# tested code, and the post-merge documentation build is the coverage for these
|
|
# changes. Executable doc assets such as .py and .ipynb are matched by the rules
|
|
# below and still run tests.
|
|
doc/*.md
|
|
doc/*.rst
|
|
# pass
|
|
;
|
|
|
|
python/ray/air/
|
|
@ ml train train_gpu tune data linux_wheels
|
|
;
|
|
|
|
python/deplocks/llm/*.lock
|
|
@ llm python_dependencies
|
|
;
|
|
|
|
python/ray/llm/
|
|
doc/source/llm/
|
|
doc/source/data/doc_code/working-with-llms/
|
|
ci/docker/llm.build.Dockerfile
|
|
@ llm
|
|
;
|
|
|
|
python/ray/data/
|
|
ci/docker/data.build.Dockerfile
|
|
ci/docker/data.build.wanda.yaml
|
|
ci/docker/datan.build.wanda.yaml
|
|
ci/docker/data9.build.wanda.yaml
|
|
ci/docker/datal.build.wanda.yaml
|
|
@ data
|
|
;
|
|
|
|
python/ray/workflow/
|
|
@ workflow
|
|
;
|
|
|
|
python/ray/tune/
|
|
@ ml train tune linux_wheels
|
|
;
|
|
|
|
python/ray/train/
|
|
@ ml train train_gpu linux_wheels
|
|
;
|
|
|
|
ci/docker/ml.build.wanda.yaml
|
|
ci/docker/mllightning2gpu.build.wanda.yaml
|
|
ci/docker/ml.build.Dockerfile
|
|
ci/ray_ci/ml.tests.yml
|
|
@ ml train train_gpu tune
|
|
;
|
|
|
|
ci/docker/min.build.Dockerfile
|
|
ci/docker/min.build.wanda.yaml
|
|
@ min_build
|
|
;
|
|
|
|
rllib/
|
|
python/ray/rllib/
|
|
ci/ray_ci/rllib.tests.yml
|
|
@ rllib rllib_gpu rllib_directly
|
|
;
|
|
|
|
python/ray/serve/
|
|
ci/docker/serve.build.Dockerfile
|
|
@ serve linux_wheels java
|
|
;
|
|
|
|
python/ray/dashboard/
|
|
@ dashboard linux_wheels core_python
|
|
;
|
|
|
|
# The macOS smoke test installs this specific lock file
|
|
# (ci/ray_ci/macos/macos_ci.sh), so changes here must still trigger
|
|
# macos_wheels. Must precede the general python/deplocks/ rule below.
|
|
# Also emits python_dependencies so lock file changes still run the
|
|
# raydepsets --check verification in dependencies.rayci.yml.
|
|
python/deplocks/ci/macos_depset_py*
|
|
@ macos_wheels python_dependencies
|
|
;
|
|
|
|
# Short-circuit deps handling for docs-specific.
|
|
python/deplocks/docs/*.lock
|
|
ci/raydepsets/configs/docs.depsets.yaml
|
|
@ doc python_dependencies
|
|
;
|
|
|
|
# Raydepsets-generated lock files and raydepsets configs that drive
|
|
# their generation. These do NOT affect the macOS smoke test (which
|
|
# only consumes macos_depset_py*, handled above), so we deliberately
|
|
# omit macos_wheels here to avoid running mac tests on unrelated lock
|
|
# updates. Otherwise mirrors the python/setup.py rule's tag set so
|
|
# general dependency changes still fan out across CI.
|
|
python/deplocks/
|
|
ci/raydepsets/configs/
|
|
@ ml tune train serve workflow data min_build
|
|
@ core_python dashboard linux_wheels java
|
|
@ python_dependencies
|
|
;
|
|
|
|
python/setup.py
|
|
python/requirements.txt
|
|
python/requirements_compiled.txt
|
|
python/requirements_compiled_py*
|
|
python/requirements/
|
|
@ ml tune train serve workflow data min_build
|
|
@ core_python dashboard linux_wheels macos_wheels java
|
|
@ python_dependencies
|
|
;
|
|
|
|
# Things that need to execute on GPU's
|
|
python/ray/dag/
|
|
python/ray/experimental/channel/
|
|
python/ray/experimental/rdt/
|
|
python/ray/experimental/collective/
|
|
python/ray/tests/rdt/
|
|
python/ray/dashboard/modules/reporter/gpu_providers.py
|
|
python/ray/tests/test_gpu_provider_on_gpu.py
|
|
@ core_python cgraphs_direct_transport
|
|
;
|
|
|
|
python/ray/util/client/
|
|
@ core_python ray_client
|
|
;
|
|
|
|
python/ray/util/dask/
|
|
@ core_python dask
|
|
;
|
|
|
|
python/ray/util/spark/
|
|
@ core_python spark_on_ray
|
|
;
|
|
|
|
python/ray/runtime_env/
|
|
@ core_python runtime_env_container
|
|
;
|
|
|
|
python/
|
|
# Run library tests on core Python code change.
|
|
@ core_python llm ml tune train data serve
|
|
# Python changes might impact cross language stack in Java.
|
|
# Java also depends on Python CLI to manage processes.
|
|
@ core_python dashboard linux_wheels macos_wheels java
|
|
;
|
|
|
|
.buildkite/core.rayci.yml
|
|
@ core_python core_cpp
|
|
;
|
|
|
|
java/
|
|
@ java
|
|
;
|
|
|
|
cpp/
|
|
@ cpp
|
|
;
|
|
|
|
docker/
|
|
.buildkite/pipeline.build_cpp.yml
|
|
.buildkite/_images.rayci.yml
|
|
.buildkite/release/_images.rayci.yml
|
|
@ docker linux_wheels
|
|
;
|
|
|
|
.readthedocs.yaml
|
|
@ doc
|
|
;
|
|
|
|
doc/*.py
|
|
doc/*.ipynb
|
|
doc/BUILD
|
|
doc/*/BUILD
|
|
doc/*.rst
|
|
doc/requirements-doc.txt
|
|
.vale.ini
|
|
.vale/
|
|
.buildkite/doc.rayci.yml
|
|
@ doc
|
|
;
|
|
|
|
ci/docker/doctest.build.Dockerfile
|
|
ci/docker/doctest.build.wanda.yaml
|
|
# pass
|
|
;
|
|
|
|
release/ray_release/
|
|
release/requirements_*
|
|
release/*.md
|
|
release/*.yaml
|
|
@ tools
|
|
;
|
|
|
|
release/
|
|
@ release_tests
|
|
;
|
|
|
|
doc/
|
|
examples/
|
|
dev/
|
|
kubernetes/
|
|
site/
|
|
# pass
|
|
;
|
|
|
|
ci/lint/
|
|
.buildkite/cicd.rayci.yml
|
|
.buildkite/lint.rayci.yml
|
|
.buildkite/bisect/
|
|
ci/fossa/
|
|
ci/docker/fossa.Dockerfile
|
|
ci/docker/fossa.wanda.yaml
|
|
bazel/tests/
|
|
@ tools
|
|
;
|
|
|
|
# Raydepsets tool code. Changes here can alter what gets compiled into
|
|
# lock files, so emit python_dependencies to re-run the compile/check.
|
|
# The configs/ subdir is handled earlier with the deplock rule block.
|
|
ci/raydepsets/
|
|
@ tools python_dependencies
|
|
;
|
|
|
|
.buildkite/macos.rayci.yml
|
|
.buildkite/pipeline.macos.yml
|
|
ci/ray_ci/macos/macos_ci.sh
|
|
ci/ray_ci/macos/macos_ci_build.sh
|
|
@ macos_wheels
|
|
;
|
|
|
|
# Windows CI driver scripts (base image build, tool install, cleanup) feed the
|
|
# windowsbuild image that every Windows test consumes. Emit 'windows' so the
|
|
# Windows test steps (tagged 'windows') run, not just the image rebuild. Must
|
|
# precede the general ci/ray_ci/ rule below, which would otherwise swallow
|
|
# these into 'tools' only.
|
|
ci/ray_ci/windows/
|
|
@ windows tools
|
|
;
|
|
|
|
ci/pipeline/
|
|
ci/build/
|
|
ci/ray_ci/
|
|
.buildkite/_forge.rayci.yml
|
|
.buildkite/_forge.aarch64.rayci.yml
|
|
ci/docker/forge.wanda.yaml
|
|
ci/docker/forge.aarch64.wanda.yaml
|
|
.buildkite/pipeline.build.yml
|
|
.buildkite/hooks/post-command
|
|
.buildkite/release/
|
|
.buildkite/release-automation/
|
|
build-wheel.sh
|
|
build-image.sh
|
|
@ tools
|
|
;
|
|
|
|
.buildkite/base.rayci.yml
|
|
.buildkite/build.rayci.yml
|
|
.buildkite/pipeline.arm64.yml
|
|
ci/docker/manylinux.Dockerfile
|
|
ci/docker/manylinux.wanda.yaml
|
|
ci/docker/manylinux.aarch64.wanda.yaml
|
|
ci/docker/windows.build.Dockerfile
|
|
ci/docker/windows.build.wanda.yaml
|
|
build-docker.sh
|
|
@ docker linux_wheels tools
|
|
;
|
|
|
|
ci/run/
|
|
ci/ci.sh
|
|
.buildkite/*.rules.test.txt
|
|
.buildkite/*.rules.txt
|
|
@ tools
|
|
;
|
|
|
|
# Per-library pipeline definition files trigger only that library's suite,
|
|
# instead of falling through to the wildcard '*' below (which would fan out to
|
|
# the full library suite). These must stay after the specific '.buildkite/...'
|
|
# rules above (core/doc/lint/macos/base/*.rules.txt) and before the final '*';
|
|
# the generic '.buildkite/*.rayci.yml' fallback must come last so the
|
|
# per-library rules win.
|
|
.buildkite/data.rayci.yml
|
|
@ data
|
|
;
|
|
|
|
.buildkite/serve.rayci.yml
|
|
@ serve linux_wheels java
|
|
;
|
|
|
|
.buildkite/ml.rayci.yml
|
|
@ ml train train_gpu tune
|
|
;
|
|
|
|
.buildkite/llm.rayci.yml
|
|
@ llm
|
|
;
|
|
|
|
.buildkite/*.rayci.yml
|
|
@ java
|
|
;
|
|
|
|
src/ray/core_worker/experimental*.h
|
|
src/ray/core_worker/experimental*.cc
|
|
@ cgraphs_direct_transport
|
|
;
|
|
|
|
# REP-64: changes to the GCS store_client API or backend implementations
|
|
# (rocksdb, redis, in-memory) must re-run the GCS FT premerge suites for
|
|
# both backends. Also covers rocksdb build-flag changes. The broader
|
|
# `core_cpp ...` tags below mirror the catch-all `src/` rule so this
|
|
# path keeps its normal build coverage on top of the FT suites.
|
|
src/ray/gcs/store_client/
|
|
bazel/rocksdb.BUILD
|
|
@ rocksdb_tests redis_tests
|
|
@ core_cpp cpp java core_python linux_wheels macos_wheels dashboard release_tests
|
|
;
|
|
|
|
src/
|
|
@ core_cpp cpp
|
|
@ java core_python linux_wheels macos_wheels
|
|
@ dashboard release_tests
|
|
;
|
|
|
|
.github/
|
|
README.rst
|
|
SECURITY.md
|
|
CONTRIBUTING.rst
|
|
LICENSE
|
|
pylintrc
|
|
semgrep.yml
|
|
setup_hooks.sh
|
|
.pre-commit-config.yaml
|
|
.isort.cfg
|
|
.prettierrc.toml
|
|
.fossa.yml
|
|
# pass
|
|
;
|
|
|
|
*
|
|
@ ml tune train data serve
|
|
@ core_cpp cpp java core_python doc
|
|
@ linux_wheels macos_wheels dashboard tools release_tests
|
|
;
|