mirror of
https://github.com/vale981/ray
synced 2025-03-06 02:21:39 -05:00
![]() Tests the following failure scenarios: - Fail to upload data in `ray.init()` (`working_dir`, `py_modules`) - Eager install fails in `ray.init()` for some other reason (bad `pip` package) - Fail to download data from GCS (`working_dir`) Improves the following error message cases: - Return RuntimeEnvSetupError on failure to upload working_dir or py_modules - Return RuntimeEnvSetupError on failure to download files from GCS during runtime env setup Not covered in this PR: - RPC to agent fails (This is extremely rare because the Raylet and agent are on the same node.) - Agent is not started or dead (We don't need to worry about this because the Raylet fate shares with the agent.) The approach is to use environment variables to induce failures in various places. The alternative would be to refactor the packaging code to use dependency injection for the Internal KV client so that we can pass in a fake. I'm not sure how much of an improvement this would be. I think we'd still have to set an environment variable to pass in the fake client, because these are essentially e2e tests of `ray.init()` and we don't have an API to pass it in. |
||
---|---|---|
.. | ||
tests | ||
__init__.py | ||
cli.py | ||
common.py | ||
job_head.py | ||
job_manager.py | ||
pydantic_models.py | ||
sdk.py | ||
utils.py |