Skip to content

Conversation

akanso
Copy link

@akanso akanso commented Feb 14, 2023

Why are these changes needed?

Today we can create/update/delete rayclusters using kubectl, helm, etc. with yaml/JSON manifests describing the raycluster.

A Python library that can programmatically manage rayclusters (using kuberay) will enable Python applications running on top of Ray and using KubeRay to add/remove/update worker-groups on the fly.

This library enables the application itself to scale the worker-groups horizontally and vertically.

Use case
Two main use cases:

1- Enable a Python application to programmatically manage rayclusters (using kuberay) without the need to deal with YAML/JSON files.

2- We can use this KubeRay Python Client Library in our tests (E2E/Integration) to manage rayclusters without having to run kubectl command from our tests that are written in Python

Related issue number

ray-project#899

Checks

This PR include its own test files with 88% test coverage.

  • I've made sure the tests are passing.
  • Testing Strategy
    • Unit tests
    • Manual tests
    • This PR is not tested :(
python -m coverage report
Name                                                                                                                  Stmts   Miss  Cover
-----------------------------------------------------------------------------------------------------------------------------------------
/home/azureuser/go-code/src/github.com/kuberay/clients/python-client/python_client/constants.py                           6      0   100%
/home/azureuser/go-code/src/github.com/kuberay/clients/python-client/python_client/utils/__init__.py                      0      0   100%
/home/azureuser/go-code/src/github.com/kuberay/clients/python-client/python_client/utils/kuberay_cluster_builder.py      72      9    88%
/home/azureuser/go-code/src/github.com/kuberay/clients/python-client/python_client/utils/kuberay_cluster_utils.py       146     28    81%
test_director.py                                                                                                         74      0   100%
test_utils.py                                                                                                            89      9    90%
-----------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                                                                                                   387     46    88%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant