argoproj / argoproj/argo-workflows
Set `steps.*.ip` for `withSequence`
- Dominant language
- Go
- Stars
- 17k
- Forks
- 3.7k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 138
Description
# Summary
Presently, if a node is marked as `daemon: true`, its IP is available as `steps.*.ip` or `tasks.*.ip`. Unlike outputs, this is not set if the step is an aggregate like `withSequence`. If this were consistent, this field would be set to a JSON list of IPs.
## Use Cases
The motivating use case is where a pool of independent simulation workers are spawned at the start of the workflow, and then issued tasks by other steps in the workflow. Presently, this is possible, but requires the use of the k8s api to find the pod IP's.
---
**Message from the maintainers**:
Love this feature request? Give it a 👍. We prioritise the proposals with the most 👍.
Contributor guide
Research direction
Start by tracing how daemon node IPs are exposed through steps.*.ip and tasks.*.ip, then compare that path with how outputs from an aggregate such as withSequence are assembled. Done means an aggregate daemon step exposes its IPs as a JSON list, consistently with existing output behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100