enable / disable considers resource dependencies
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 10.1k
- Forks
- 413
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 6
Description
Describe the Feature You Want
Andy Martin on k8s slack says that their team has multiple resources that depend on other resources, so the enable/disable resource button in the UI may be misleading.
we have some services that require more to initialize than what can currently be done via the UI, so we'd like to avoid giving users the impression that these services can be enabled from the UI alone for now
If enabling and disabling resources took resource_deps into consideration, that would solve the main issue.
Andy added:
I think there's an additional complicating factor because
resource_depsonly goes in one direction (adepends onbbut not vice versa) but it may not make sense to ever runbon its own
Current Behavior
If resource a depends on resource b:
- enabling
awill not also enableb. It will only enablea. - disabling
bwill not also disablea. It will only disableb.
Technically, you can make your own UIButtons that use the tilt enable and disable commands to enable/disable the appropriate resource dependencies. So (with the above example) you could tilt disable b && tilt disable a, but the UI doesn't display UIButtons on a disabled resource, so that workaround is moot when you need to (re)enable resources.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the UI enable/disable actions and the tilt enable and tilt disable command paths, then inspect how resource_deps is represented and used. Define behavior for enabling a resource with dependencies and disabling a dependency, including whether one-way dependencies should be operated independently. Done means the UI no longer presents misleading actions and the documented examples behave consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- devtools
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100