Service status contains only one effective address
- Dominant language
- Go
- Stars
- 189
- Forks
- 24
- Avg merge
- 2d 16h
- Merged PRs (30d)
- 18
Description
## Problem
The `Service` object status has `EffectiveAddress` property that is supposed to advertise the network address the Service can be reached at. Problem is, depending on what kind of address the `Service` spec contains, there can be multiple resulting effective addresses that the `Service` will be listening on.
We actually listen on all the resolved network addresses, we just do not advertise them through status.
What we should do instead is have a list of effective address-port combination in the status.
## Tactics
This will be a breaking change for Aspire, one that we could do for Aspire 10 (e.g. do a staged change by introducing new address information into status and deprecating old `EffectiveAddress` and `EffecitvePort` properties, then updating Aspire, then removing the obsolete properties).
Contributor guide
Research direction
Start by locating the Service status model and the address-resolution path in the Go API server. Trace how resolved addresses are currently exposed through EffectiveAddress and EffectivePort, then identify the status and compatibility changes needed for multiple address-port combinations. Done means all resolved listening addresses are represented and the staged Aspire compatibility plan is accounted for.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100