[ray]: serialize address field to flyteidl for cluster selector mode #18
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why are the changes needed?
This PR enables long-lived Ray clusters in Flyte by serializing the
addressfield fromRayJobConfigto flyteidl. Whenaddressis set, flytepropeller will useClusterSelectormode instead of creating a new ephemeral RayCluster, allowing faster iteration during development.Previously, the
addressfield inRayJobConfigwas only used forray.init()inside the task container and was not serialized to flyteidl, so flytepropeller had no way to know about it.What changes were proposed in this pull request?
addressparameter toRayJob.__init__in models.pyaddressproperty toRayJobclassaddressinto_flyte_idl()methodaddressinfrom_flyte_idl()methodaddressfromRayJobConfigtoRayJobin task.py'sget_custom()methodHow was this patch tested?
Manual review of serialization logic.
Important: This PR requires the companion PR in exa-labs/flyte that adds the
addressfield toflyteidl/plugins/ray.protoand implements the cluster selector logic in flytepropeller.Check all the applicable boxes
Related PRs
addressfield to ray.proto and implements cluster selector logic in flytepropeller)Human Review Checklist
address if self.address else "") is correct for protobuf string fieldsLink to Devin run: https://app.devin.ai/sessions/91929162dbc241d8a83ef3c18aeb9aba
Requested by: adriano@exa.ai (@jld-adriano)