Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
f45ae1c
[data] adapt dask on ray to the new dask task class (#54108)
aslonnie Jul 3, 2025
c3fbfeb
[core] Use `SignalActor` in `test_hybrid_policy_threshold` (#54312)
edoakes Jul 3, 2025
6e4bab6
[core] Skip generator reconstruction test (#54320)
dayshah Jul 3, 2025
ebe3a7c
[doc][kuberay] state `rayStartParams` is optional starting with KubeR…
davidxia Jul 3, 2025
9fb8cc3
[core] Fix gcs register actor callback check (#53634)
dayshah Jul 3, 2025
309f41e
Fix `test_runtime_env_container` (#54330)
zcin Jul 3, 2025
1ff2d41
update daft link & blurb
ccmao1130 Jul 3, 2025
c94d6fd
update logo
ccmao1130 Jul 3, 2025
c77bab5
update daft url
ccmao1130 Jul 3, 2025
9e52886
update daft logo
ccmao1130 Jul 3, 2025
00792af
update daft package
ccmao1130 Jul 4, 2025
a79f7cf
[core][task-manager/02] consolidate TaskManager interface (#54317)
can-anyscale Jul 3, 2025
0816988
Updated stalebot to add bounced label and exempt labels (#54318)
cszhu Jul 3, 2025
c863860
[serve] deflake test_multiplex (#54335)
zcin Jul 4, 2025
df63331
update daft ver
ccmao1130 Jul 4, 2025
13377f3
[train] Add broadcast_from_rank_zero and barrier collectives (#54066)
TimothySeah Jul 4, 2025
3c955bb
[Data] Fix flaky `test_shuffle` (#54339)
alexeykudinkin Jul 4, 2025
2f88ed9
[serve] configure http options in controller (#54331)
zcin Jul 4, 2025
e850855
[Train] Remove the subclass relationship between RunConfig and RunCon…
xinyuangui2 Jul 5, 2025
145cec0
raydepsets scaffolding (package management tool) (#54265)
elliot-barn Jul 5, 2025
1d8d8a8
[wheel] mac: upgrade arm64 wheel to macos 12 (#54323)
aslonnie Jul 5, 2025
3931550
[cpp] add explicit files for deps (#54311)
aslonnie Jul 6, 2025
2e40ccb
[core] Don't try to monitor zipped files (#53151)
dayshah Jul 7, 2025
a503373
[core][refactor] move NodeManager::KillWorker to WorkerInterface::Kil…
rueian Jul 7, 2025
acce7fc
[core][GPU Objects] Add related tests for tensordict (#54286)
Qiaolin-Yu Jul 7, 2025
92d291e
[Data] - write_parquet enable both partition by & min_rows_per_file, …
goutamvenkat-anyscale Jul 7, 2025
dbcbf02
[deps] remove time series and ludwig dependencies (#54316)
aslonnie Jul 7, 2025
617516c
[core] Get cloud provider with ray on kubernetes (#51793)
dayshah Jul 7, 2025
f136769
[serve] deflake `test_autoscaling_policy` (#54336)
zcin Jul 7, 2025
c4807e9
[data.llm] Log engine stats after each batch task is done. (#54360)
kouroshHakha Jul 7, 2025
d8b36cf
reduce number of loops over request headers from 2 to 1 (#54326)
abrarsheikh Jul 7, 2025
47bd14a
[ci] sync versions of pytest and pip-tools (#54315)
aslonnie Jul 7, 2025
f30b686
[data.llm] Decouple max_tasks_in_flight from max_concurrent_batches (…
kouroshHakha Jul 7, 2025
339e499
[train] Document ray.train.collective (#54340)
TimothySeah Jul 7, 2025
6632cda
[core] Deflake `test_actor_scheduling_not_block_with_placement_group`…
edoakes Jul 7, 2025
53596cf
[core] Deflake `test_reconstruction_suppression` (#54366)
edoakes Jul 7, 2025
8e8e6f0
[train] Force abort on SIGINT spam and do not abort finished runs (#5…
TimothySeah Jul 7, 2025
d3c94b0
[data] dask: mark all dask-on-ray tests as manual (#54371)
aslonnie Jul 7, 2025
01ef846
[core] Remove `test_get_locations_timeout` (#54367)
edoakes Jul 7, 2025
c8bd433
[core][autoscaler] make the autoscaler v2 work with the cluster launc…
rueian Jul 7, 2025
489b400
[core] Delete event_label (#54378)
dayshah Jul 7, 2025
8137bf0
[core] Add deprecation warning and remove tests for `_max_cpu_fractio…
edoakes Jul 7, 2025
c4e382c
[core] Unskip `test_placement_group_strict_spread` (#54381)
edoakes Jul 7, 2025
6cd0a1c
[Data] Revisit async UDF handling in Ray Data (#54190)
alexeykudinkin Jul 7, 2025
14ace70
[data.llm] Return a batch of rows in the udf instead of row by row (#…
kouroshHakha Jul 7, 2025
2680702
[core][GPU Objects] Disable tensordict tests in macos ci (#54375)
Qiaolin-Yu Jul 8, 2025
5fcc8f7
[release] Make KubeRay test run nightly (#54243)
khluu Jul 8, 2025
22872e2
updating raydepsets test job (#54387)
elliot-barn Jul 8, 2025
46083a9
[ci] upgrade rayci version to 0.16.0 (#54392)
aslonnie Jul 8, 2025
bdc6aa9
[Data] Fixing `sort_benchmark` to avoid offsets overflows with Pyarro…
alexeykudinkin Jul 8, 2025
58d6cb5
[data] dask: disable smoke test (#54411)
aslonnie Jul 8, 2025
438d07b
[ci] release tests: remove unused app configs (#54410)
aslonnie Jul 8, 2025
ce20e6e
migrate signature from _private to _common (#54357)
harshit-anyscale Jul 8, 2025
d08f67f
[core] Delete skip_flaky_core_test_premerge (#54382)
dayshah Jul 8, 2025
c5a7692
[Core] Use smart pointer in logging.cc (#54351)
owenowenisme Jul 8, 2025
a9bfa75
[core] Inject reorder_wait_seconds for scheduling queue test (#54404)
dayshah Jul 8, 2025
754e685
[serve] Remove usage of `ray._private.state` (#54140)
edoakes Jul 8, 2025
26d65e9
[serve] Remove usage of `internal_api.memory_summary()` (#54417)
edoakes Jul 8, 2025
039c89e
[Data] Add `pin_memory` to `iter_torch_batches` (#53792)
srinathk10 Jul 8, 2025
0dad4ab
[core] Skip `test_owner_assign_inner_object` on Windows (#54383)
edoakes Jul 8, 2025
b76585f
[Refactor]Rename NCCL-related items to comm_backend (#51061)
noemotiovon Jul 8, 2025
c37725c
[Autoscaler][V2] Use running node instances to rate-limit upscaling (…
ryanaoleary Jul 8, 2025
baa2c75
[wheel] remove pyarrow <18 restriction (#54405)
aslonnie Jul 8, 2025
48f243d
[serve] bump timeout for test_proxy (#54426)
zcin Jul 8, 2025
7fbd89e
[deps] sync ml byod deps with global lock file (#54424)
aslonnie Jul 8, 2025
aeb5dc5
[ci] add workspace status script (#54398)
aslonnie Jul 8, 2025
bb0546e
[serve] add request metadata to can_accept_request (#54429)
zcin Jul 8, 2025
b8d04ec
[data] Extract backpressure-related code from ResourceManager as a po…
raulchen Jul 8, 2025
8262586
[train][doc] ray.train.report api docs should mention optional checkp…
TimothySeah Jul 8, 2025
1f5971d
Update google tag container id (#54444)
vigneshka Jul 8, 2025
2f6b9d2
[Data] Avoid OOMs with `read_json(..., lines=True)` (#54436)
bveeramani Jul 8, 2025
c2febe8
Fix test_json CI failures (#54352)
srinathk10 Jul 8, 2025
c3b35a0
[serve] skip test_proxy_disconnect_metrics on windows (#54441)
zcin Jul 8, 2025
017a52e
[train][checkpoint] Populate checkpoint from before_init_train_contex…
TimothySeah Jul 9, 2025
84ccf8f
[deps] upgrade datasets in release tests (#54425)
aslonnie Jul 9, 2025
7b5687e
[ci] adding uv binary v0.7.19 (#54437)
elliot-barn Jul 9, 2025
916b25e
[llm] bump vllm to 0.9.2 (#54407)
lk-chen Jul 9, 2025
cfae674
Add label selector observability to placement group tables and actor …
alanwguo Jul 9, 2025
9a2da9a
[core] Delete old skipped tests (#54427)
edoakes Jul 9, 2025
8c049c4
[Core] Use std::move in cluster task manager constructor (#54413)
owenowenisme Jul 9, 2025
312ac26
migrate check_library_usage_telemetry to _common (#54355)
harshit-anyscale Jul 9, 2025
9f976b1
[core][autoscaler] fix: use RAY_UP_enable_autoscaler_v2 instead of RA…
rueian Jul 9, 2025
026dafa
[serve.llm] Adaption of the change of vllm.PoolingOutput (#54467)
DriverSong Jul 9, 2025
892b942
[Serve] Check multiple FastAPI ingress deployments in a single applic…
Ziy1-Tan Jul 9, 2025
9560391
[serve] deflake `test_autoscaling_policy_with_metr_disab` (#54458)
zcin Jul 9, 2025
4123d24
[serve] update get_application_url and tests (#54449)
landscapepainter Jul 9, 2025
d665677
requirements
ccmao1130 Jul 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .bazelrc
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Must be first. Enables build:windows, build:linux, build:macos, build:freebsd, build:openbsd
build --enable_platform_specific_config

build:linux --workspace_status_command="bash ./bazel/workspace_status.sh"

# Provides users an option to turn on strict action env.
# TODO(aslonnie): make this default; fix the python tests..
build:strict --incompatible_strict_action_env
Expand Down
13 changes: 13 additions & 0 deletions .buildkite/cicd.rayci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,19 @@ steps:
- oss-ci-base_test
- forge
tags: tools
- label: ":coral: reef: raydepsets tests"
key: raydepsets-tests
commands:
- bazel run //ci/ray_ci:test_in_docker --
//ci/raydepsets/... ci
--cache-test-results
--build-name oss-ci-base_test
--build-type skip
instance_type: small
depends_on:
- oss-ci-base_test
- forge
tags: tools
- label: ":coral: reef: privileged container tests"
commands:
- bazel run //ci/ray_ci:test_in_docker --
Expand Down
4 changes: 2 additions & 2 deletions .buildkite/core.rayci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -181,9 +181,9 @@ steps:
- bazel run //ci/ray_ci:test_in_docker --
python/ray/util/dask/... core
--install-mask all-ray-libraries
--build-name datalbuild
--build-name databuild-py3.12
depends_on:
- datalbuild
- databuild-multipy
- forge

- label: ":ray: core: modin tests"
Expand Down
8 changes: 4 additions & 4 deletions .buildkite/data.rayci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -152,9 +152,9 @@ steps:
instance_type: medium
commands:
- bazel run //ci/ray_ci:test_in_docker -- //python/ray/data/... data
--build-name datalbuild
--build-name databuild-py3.12
--only-tags dask
depends_on: datalbuild
depends_on: databuild-multipy

- label: ":database: data: TFRecords (tfx-bsl) tests"
tags:
Expand Down Expand Up @@ -193,10 +193,10 @@ steps:
instance_type: medium
commands:
- bazel run //ci/ray_ci:test_in_docker -- //doc/... data
--build-name datalbuild
--build-name databuild-py3.12
--only-tags dask
--parallelism-per-worker 2
depends_on: datalbuild
depends_on: databuild-multipy

- label: ":database: data: doc gpu tests"
tags:
Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/stale_pull_request.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,8 @@ jobs:
# Pull Requests with these labels will never be considered stale
exempt-pr-labels: >
weekly-release-blocker,
release-blocker
release-blocker,
bounced

# Set to true to ignore PRs in a milestone (defaults to false)
exempt-all-pr-milestones: true
Expand All @@ -68,4 +69,7 @@ jobs:
# Remove stale label from PRs on update (default is true)
remove-pr-stale-when-updated: true

# Add bounced label. Whenever a PR is marked as 'bounced' it will not be marked stale again.
labels-to-add-when-unstale: bounced

ascending: true
2 changes: 1 addition & 1 deletion .rayciversion
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.12.0
0.16.0
13 changes: 13 additions & 0 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,19 @@ filegroup(
urls = ["https://github.com/distribution/distribution/releases/download/v3.0.0/registry_3.0.0_linux_amd64.tar.gz"],
)

http_archive(
name = "uv_x86_64",
build_file_content = """
filegroup(
name = "file",
srcs = glob(["**"]),
visibility = ["//visibility:public"],
)
""",
sha256 = "1785537fc65a35609dc33063b5f1cc85437a08ade4c0a832071c018481afe515",
urls = ["https://github.com/astral-sh/uv/releases/download/0.7.19/uv-i686-unknown-linux-gnu.tar.gz"],
)

http_archive(
name = "com_github_storypku_bazel_iwyu",
sha256 = "aa78c331a2cb139f73f7d74eeb4d5ab29794af82023ef5d6d5194f76b7d37449",
Expand Down
13 changes: 13 additions & 0 deletions bazel/workspace_status.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/bash

set -euo pipefail

if [[ "${USER:-}" =~ "@" ]]; then
echo "ERROR: \$USER ('${USER:-}') contains invalid char '@'" >&2
exit 1
fi

if [[ "${HOME:-}" =~ "@" ]]; then
echo "ERROR: \$HOME ('${HOME:-}') contains invalid char '@'" >&2
exit 1
fi
2 changes: 1 addition & 1 deletion ci/build/test-macos-wheels.sh
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ for ((i=0; i<${#PY_MMS[@]}; ++i)); do
"$PIP_CMD" install -q "$PYTHON_WHEEL"

# Install the dependencies to run the tests.
"$PIP_CMD" install -q aiohttp numpy 'pytest==7.0.1' requests proxy.py
"$PIP_CMD" install -q aiohttp numpy 'pytest==7.4.4' requests proxy.py

# Run a simple test script to make sure that the wheel works.
# We set the python path to prefer the directory of the wheel content: https://github.com/ray-project/ray/pull/30090
Expand Down
2 changes: 1 addition & 1 deletion ci/docker/min.build.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ MINIMAL_INSTALL=1 PYTHON=${PYTHON_VERSION} ci/env/install-dependencies.sh
rm -rf python/ray/thirdparty_files

# install test requirements
python -m pip install -U pytest==7.0.1 pip-tools==7.3.0
python -m pip install -U pytest==7.4.4 pip-tools==7.4.1

# install extra dependencies
if [[ "${EXTRA_DEPENDENCY}" == "core" ]]; then
Expand Down
18 changes: 0 additions & 18 deletions ci/env/install-dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -276,24 +276,6 @@ install_pip_packages() {
requirements_files+=("${WORKSPACE_DIR}/python/requirements/ml/tune-test-requirements.txt")
fi

# Additional dependency for Ludwig.
# This cannot be included in requirements files as it has conflicting
# dependencies with Modin.
if [[ "${INSTALL_LUDWIG-}" == 1 ]]; then
# TODO: eventually pin this to master.
requirements_packages+=("ludwig[test]>=0.4")
requirements_packages+=("jsonschema>=4")
fi

# Additional dependency for time series libraries.
# This cannot be included in tune-requirements.txt as it has conflicting
# dependencies.
if [[ "${INSTALL_TIMESERIES_LIBS-}" == 1 ]]; then
requirements_packages+=("statsforecast==1.5.0")
requirements_packages+=("prophet==1.1.1")
requirements_packages+=("holidays==0.24") # holidays 0.25 causes `import prophet` to fail.
fi

# Data processing test dependencies.
if [[ "${DATA_PROCESSING_TESTING-}" == 1 || "${DOC_TESTING-}" == 1 ]]; then
requirements_files+=("${WORKSPACE_DIR}/python/requirements/ml/data-requirements.txt")
Expand Down
10 changes: 2 additions & 8 deletions ci/lint/pydoclint-baseline.txt
Original file line number Diff line number Diff line change
Expand Up @@ -390,7 +390,6 @@ python/ray/air/_internal/torch_utils.py
DOC103: Function `convert_ndarray_batch_to_torch_tensor_batch`: Docstring arguments are different from function arguments. (Or could be other formatting issues: https://jsh9.github.io/pydoclint/violation_codes.html#notes-on-doc103 ). Arguments in the function signature but not in the docstring: [dtypes: Optional[Union[torch.dtype, Dict[str, torch.dtype]]], ndarrays: Union[np.ndarray, Dict[str, np.ndarray]]]. Arguments in the docstring but not in the function signature: [dtype: , ndarray: ].
DOC201: Function `convert_ndarray_batch_to_torch_tensor_batch` does not have a return section in docstring
DOC201: Function `consume_prefix_in_state_dict_if_present_not_in_place` does not have a return section in docstring
DOC201: Function `convert_ndarray_list_to_torch_tensor_list` does not have a return section in docstring
--------------------
python/ray/air/_internal/uri_utils.py
DOC101: Method `URI.rstrip_subpath`: Docstring contains fewer arguments than in function signature.
Expand Down Expand Up @@ -1203,7 +1202,6 @@ python/ray/data/_internal/execution/streaming_executor_state.py
DOC201: Method `OpBufferQueue.has_next` does not have a return section in docstring
DOC101: Method `OpState.get_output_blocking`: Docstring contains fewer arguments than in function signature.
DOC103: Method `OpState.get_output_blocking`: Docstring arguments are different from function arguments. (Or could be other formatting issues: https://jsh9.github.io/pydoclint/violation_codes.html#notes-on-doc103 ). Arguments in the function signature but not in the docstring: [output_split_idx: Optional[int]].
DOC103: Function `process_completed_tasks`: Docstring arguments are different from function arguments. (Or could be other formatting issues: https://jsh9.github.io/pydoclint/violation_codes.html#notes-on-doc103 ). Arguments in the function signature but not in the docstring: [resource_manager: ResourceManager]. Arguments in the docstring but not in the function signature: [backpressure_policies: ].
--------------------
python/ray/data/_internal/iterator/stream_split_iterator.py
DOC101: Method `SplitCoordinator.start_epoch`: Docstring contains fewer arguments than in function signature.
Expand Down Expand Up @@ -1487,8 +1485,8 @@ python/ray/experimental/channel/shared_memory_channel.py
DOC101: Method `CompositeChannel.__init__`: Docstring contains fewer arguments than in function signature.
DOC103: Method `CompositeChannel.__init__`: Docstring arguments are different from function arguments. (Or could be other formatting issues: https://jsh9.github.io/pydoclint/violation_codes.html#notes-on-doc103 ). Arguments in the function signature but not in the docstring: [_channel_dict: Optional[Dict[ray.ActorID, ChannelInterface]], _channels: Optional[Set[ChannelInterface]], _reader_registered: bool, _writer_registered: bool].
--------------------
python/ray/experimental/channel/torch_tensor_nccl_channel.py
DOC201: Method `TorchTensorNcclChannel._recv_cpu_and_gpu_data` does not have a return section in docstring
python/ray/experimental/channel/torch_tensor_accelerator_channel.py
DOC201: Method `TorchTensorAcceleratorChannel._recv_cpu_and_gpu_data` does not have a return section in docstring
DOC201: Function `_get_ranks` does not have a return section in docstring
DOC201: Function `_init_communicator` does not have a return section in docstring
--------------------
Expand Down Expand Up @@ -2128,10 +2126,6 @@ python/ray/train/v2/api/context.py
DOC201: Method `TrainContext.get_local_world_size` does not have a return section in docstring
DOC201: Method `TrainContext.get_node_rank` does not have a return section in docstring
--------------------
python/ray/train/v2/api/train_fn_utils.py
DOC101: Function `report`: Docstring contains fewer arguments than in function signature.
DOC103: Function `report`: Docstring arguments are different from function arguments. (Or could be other formatting issues: https://jsh9.github.io/pydoclint/violation_codes.html#notes-on-doc103 ). Arguments in the function signature but not in the docstring: [checkpoint_dir_name: Optional[str]].
--------------------
python/ray/train/v2/lightgbm/lightgbm_trainer.py
DOC101: Method `LightGBMTrainer.__init__`: Docstring contains fewer arguments than in function signature.
DOC103: Method `LightGBMTrainer.__init__`: Docstring arguments are different from function arguments. (Or could be other formatting issues: https://jsh9.github.io/pydoclint/violation_codes.html#notes-on-doc103 ). Arguments in the function signature but not in the docstring: [label_column: Optional[str], num_boost_round: Optional[int], params: Optional[Dict[str, Any]]].
Expand Down
2 changes: 1 addition & 1 deletion ci/ray_ci/automation/ray_wheels_lib.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"manylinux2014_x86_64",
"manylinux2014_aarch64",
"macosx_12_0_x86_64",
"macosx_11_0_arm64",
"macosx_12_0_arm64",
"win_amd64",
]
RAY_TYPES = ["ray", "ray_cpp"]
Expand Down
12 changes: 6 additions & 6 deletions ci/ray_ci/automation/test_pypi_lib.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ def test_get_pypi_token_fail(mock_boto3_client):
def test_upload_wheels_to_pypi(mock_subprocess, mock_get_pypi_url, mock_get_pypi_token):
pypi_env = "test"
wheels = [
"ray_cpp-2.9.3-cp310-cp310-macosx_11_0_arm64.whl",
"ray_cpp-2.9.3-cp311-cp311-macosx_11_0_arm64.whl",
"ray_cpp-2.9.3-cp310-cp310-macosx_12_0_arm64.whl",
"ray_cpp-2.9.3-cp311-cp311-macosx_12_0_arm64.whl",
]
mock_get_pypi_token.return_value = "test_token"
mock_get_pypi_url.return_value = "test_pypi_url"
Expand Down Expand Up @@ -97,8 +97,8 @@ def test_upload_wheels_to_pypi_fail_twine_upload(
):
pypi_env = "test"
wheels = [
"ray_cpp-2.9.3-cp310-cp310-macosx_11_0_arm64.whl",
"ray_cpp-2.9.3-cp311-cp311-macosx_11_0_arm64.whl",
"ray_cpp-2.9.3-cp310-cp310-macosx_12_0_arm64.whl",
"ray_cpp-2.9.3-cp311-cp311-macosx_12_0_arm64.whl",
]
mock_get_pypi_token.return_value = "test_token"
mock_get_pypi_url.return_value = "test_pypi_url"
Expand All @@ -117,8 +117,8 @@ def test_upload_wheels_to_pypi_fail_twine_upload(
def test_upload_wheels_to_pypi_fail_get_pypi(mock_get_pypi_url, mock_get_pypi_token):
pypi_env = "test"
wheels = [
"ray_cpp-2.9.3-cp310-cp310-macosx_11_0_arm64.whl",
"ray_cpp-2.9.3-cp311-cp311-macosx_11_0_arm64.whl",
"ray_cpp-2.9.3-cp310-cp310-macosx_12_0_arm64.whl",
"ray_cpp-2.9.3-cp311-cp311-macosx_12_0_arm64.whl",
]
mock_get_pypi_token.side_effect = ValueError("Invalid pypi_env: test")
mock_get_pypi_url.side_effect = ValueError("Invalid pypi_env: test")
Expand Down
8 changes: 4 additions & 4 deletions ci/ray_ci/automation/test_ray_wheels_lib.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"ray-1.0.0-cp39-cp39-manylinux2014_x86_64",
"ray-1.0.0-cp39-cp39-manylinux2014_aarch64",
"ray-1.0.0-cp39-cp39-macosx_12_0_x86_64",
"ray-1.0.0-cp39-cp39-macosx_11_0_arm64",
"ray-1.0.0-cp39-cp39-macosx_12_0_arm64",
"ray-1.0.0-cp39-cp39-win_amd64",
]

Expand Down Expand Up @@ -58,7 +58,7 @@ def test_check_downloaded_wheels():
"ray-1.0.0-cp39-cp39-manylinux2014_x86_64",
"ray-1.0.0-cp39-cp39-manylinux2014_aarch64",
"ray-1.0.0-cp39-cp39-macosx_12_0_x86_64",
"ray-1.0.0-cp39-cp39-macosx_11_0_arm64",
"ray-1.0.0-cp39-cp39-macosx_12_0_arm64",
"ray-1.0.0-cp39-cp39-win_amd64",
]

Expand All @@ -75,7 +75,7 @@ def test_check_downloaded_wheels_fail():
"ray-1.0.0-cp39-cp39-manylinux2014_x86_64",
"ray-1.0.0-cp39-cp39-manylinux2014_aarch64",
"ray-1.0.0-cp39-cp39-macosx_12_0_x86_64",
"ray-1.0.0-cp39-cp39-macosx_11_0_arm64",
"ray-1.0.0-cp39-cp39-macosx_12_0_arm64",
"ray-1.0.0-cp39-cp39-win_amd64",
]

Expand All @@ -94,7 +94,7 @@ def test_download_wheel_from_s3(mock_boto3_client):
"releases/1.0.0/1234567/ray-1.0.0-cp39-cp39-manylinux2014_x86_64.whl",
"releases/1.0.0/1234567/ray-1.0.0-cp39-cp39-manylinux2014_aarch64.whl",
"releases/1.0.0/1234567/ray-1.0.0-cp39-cp39-macosx_12_0_x86_64.whl",
"releases/1.0.0/1234567/ray-1.0.0-cp39-cp39-macosx_11_0_arm64.whl",
"releases/1.0.0/1234567/ray-1.0.0-cp39-cp39-macosx_12_0_arm64.whl",
"releases/1.0.0/1234567/ray-1.0.0-cp39-cp39-win_amd64.whl",
]
for key in keys:
Expand Down
32 changes: 32 additions & 0 deletions ci/raydepsets/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
load("@py_deps_buildkite//:requirements.bzl", ci_require = "requirement")

py_library(
name = "raydepsets_lib",
srcs = [
"cli.py",
],
deps = [
ci_require("click"),
],
)

py_binary(
name = "raydepsets",
srcs = ["raydepsets.py"],
deps = [":raydepsets_lib"],
exec_compatible_with = ["//:hermetic_python"],
)

py_test(
name = "test_cli",
srcs = ["tests/test_cli.py"],
exec_compatible_with = ["//:hermetic_python"],
deps = [
ci_require("pytest"),
":raydepsets_lib",
],
tags = [
"ci_unit",
"team:ci",
],
)
8 changes: 8 additions & 0 deletions ci/raydepsets/cli.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import click


@click.group(name="depsets")
@click.pass_context
def cli(ctx):
"""Manage Python dependency sets."""
pass
5 changes: 5 additions & 0 deletions ci/raydepsets/raydepsets.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/usr/bin/env python3
from cli import cli

if __name__ == "__main__":
cli()
10 changes: 10 additions & 0 deletions ci/raydepsets/tests/test_cli.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import pytest
import sys


def test_cli():
pass


if __name__ == "__main__":
sys.exit(pytest.main(["-v", __file__]))
Loading