As a user I may want to chain multiple commands, for example in CI/CD to prevent needing to add tasks/steps to pipelines rover could be called to be a one stop shop. e.g. "plan, apply, test" or "fmt, lint, plan" etc.
Currently Rover executes a single action when invoked, the one exception being TerraformApply which chains together TerraformPlan as part of it's execution. This is handled internally
This task is to design how the action grouping might look like with a mind towards implementation in the current structure (Actions, Options etc)
Reasons
Easier CI/CD
Notes / Considerations
What do we call them?
How do expose this to the user, a new top level command such as rover group or rover chain or do they appear at the top level just like custom commands do now?
How do users define chains? Perhaps $HOME/.rover/groups.yaml ?
Outcomes
Some agreed design ideas, maybe in the wiki, maybe here
As a user I may want to chain multiple commands, for example in CI/CD to prevent needing to add tasks/steps to pipelines rover could be called to be a one stop shop. e.g. "plan, apply, test" or "fmt, lint, plan" etc.
Currently Rover executes a single action when invoked, the one exception being TerraformApply which chains together TerraformPlan as part of it's execution. This is handled internally
This task is to design how the action grouping might look like with a mind towards implementation in the current structure (Actions, Options etc)
Reasons
Notes / Considerations
rover group
orrover chain
or do they appear at the top level just like custom commands do now?Outcomes