Skip to content

Conversation

@elliot-barn
Copy link
Contributor

adding --all-configs option to raydepsets to build all configs.

Added cli and workspace unit tests

Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
@elliot-barn elliot-barn requested a review from aslonnie October 23, 2025 22:54
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces an --all-configs option to build all dependency sets at once. The implementation correctly adds the CLI flag and modifies the DependencySetManager to handle building from multiple configuration files by skipping the graph-subsetting logic when the flag is present. The changes also include new unit tests for the added functionality.

My review focuses on a potential issue with the new default configuration path, which could lead to unexpected behavior, and a minor typing improvement in the test suite. Overall, the changes are in the right direction.


@cli.command()
@click.argument("config_path", default="ci/raydepsets/configs/ray.depsets.yaml")
@click.argument("config_path", default="ci/raydepsets/configs/*.depsets.yaml")
Copy link
Contributor

Choose a reason for hiding this comment

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

high

Changing the default config_path to a wildcard ci/raydepsets/configs/*.depsets.yaml introduces an issue with the default behavior. When raydepsets build is run without arguments, config_path will be the wildcard, but the --all-configs flag will be False. This leads to subgraph_config_nodes() being called with self.config_name as '*.depsets.yaml', which doesn't match any specific config file names (e.g., 'ray.depsets.yaml'). As a result, the build graph will be empty, and no dependency sets will be built, which is likely not the intended default behavior.

To ensure a sensible default and make the behavior more explicit, I recommend reverting the default path to a single, specific configuration file. Users can then explicitly provide a wildcard path along with the --all-configs flag to build all configurations.

Suggested change
@click.argument("config_path", default="ci/raydepsets/configs/*.depsets.yaml")
@click.argument("config_path", default="ci/raydepsets/configs/ray.depsets.yaml")

def _create_test_manager(
tmpdir: str, config_path: Optional[str] = None, check: bool = False
tmpdir: str,
config_path: Optional[str] = "test.depsets.yaml",
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

The type hint for config_path is Optional[str], which implies it can be None. However, None is not a valid value for this parameter, as it would cause a TypeError in DependencySetManager which expects a str. To accurately reflect that config_path is a required string, please change the type hint to str.

Suggested change
config_path: Optional[str] = "test.depsets.yaml",
config_path: str = "test.depsets.yaml",

cursor[bot]

This comment was marked as outdated.

Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
cursor[bot]

This comment was marked as outdated.

Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
@ray-gardener ray-gardener bot added the devprod label Oct 24, 2025
@aslonnie aslonnie self-requested a review October 24, 2025 21:11
Copy link
Collaborator

@aslonnie aslonnie left a comment

Choose a reason for hiding this comment

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

has conflict now?

@aslonnie aslonnie added the go add ONLY when ready to merge, run all tests label Oct 24, 2025
Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
@elliot-barn elliot-barn requested a review from aslonnie October 25, 2025 18:34
@aslonnie aslonnie merged commit 62004a2 into master Oct 27, 2025
6 checks passed
@aslonnie aslonnie deleted the elliot-barn/raydepsets-build-all-depsets-option branch October 27, 2025 21:34
landscapepainter pushed a commit to landscapepainter/ray that referenced this pull request Nov 17, 2025
adding --all-configs option to raydepsets to build all configs.

Added cli and workspace unit tests

---------

Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
Aydin-ab pushed a commit to Aydin-ab/ray-aydin that referenced this pull request Nov 19, 2025
adding --all-configs option to raydepsets to build all configs.

Added cli and workspace unit tests

---------

Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
Signed-off-by: Aydin Abiar <aydin@anyscale.com>
Future-Outlier pushed a commit to Future-Outlier/ray that referenced this pull request Dec 7, 2025
adding --all-configs option to raydepsets to build all configs.

Added cli and workspace unit tests

---------

Signed-off-by: elliot-barn <elliot.barnwell@anyscale.com>
Signed-off-by: Future-Outlier <eric901201@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

devprod go add ONLY when ready to merge, run all tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants