You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[3/n] [Serve] expose deployment topology in serve instance details (ray-project#58355)
### Summary
This PR exposes deployment topology information in Ray Serve instance
details, allowing users to visualize and understand the dependency graph
of deployments within their applications.
### What's Changed
#### New Data Structures
Added two new schema classes to represent deployment topology:
- **`DeploymentNode`** - Represents a node in the deployment DAG
- **`DeploymentTopology`** - Represents the full dependency graph
#### Implementation
**Controller Integration**
- Updated `ServeController` to include `deployment_topology` in
`ApplicationDetails` when serving instance details
- Topology is now accessible via the `get_serve_details()` API
---
**Example Output:**
```python
{
"app_name": "my_app",
"ingress_deployment": "Ingress",
"nodes": {
"Ingress": {
"name": "Ingress",
"is_ingress": True,
"outbound_deployments": [
{"name": "ServiceA", "app_name": "my_app"}
]
},
"ServiceA": {
"name": "ServiceA",
"is_ingress": False,
"outbound_deployments": [
{"name": "Database", "app_name": "my_app"}
]
},
"Database": {
"name": "Database",
"is_ingress": False,
"outbound_deployments": []
}
}
}
```
---------
Signed-off-by: abrar <abrar@anyscale.com>
Co-authored-by: Lonnie Liu <95255098+aslonnie@users.noreply.github.com>
0 commit comments