-
-
Notifications
You must be signed in to change notification settings - Fork 146
Description
Describe the Feature
Improve the console DX of terraform operations by presenting the user with a friendly UI to show terrafom progress.
https://github.com/magodo/pipeform
Expected Behavior
Running atmos terraform plan and atmos terraform apply will launch the pipeform UI. Note, this does not require pipeform to be installed, as it will be used as a native Go module.
Use Case
On the command line, the output from terraform is overwhelming and doesn't convey the overall progress of the operation. Terraform will feel much friendlier if we present the user with a progress indicator.
Describe Ideal Solution
The UI would be enabled by default, but can be disabled via the atmos.yaml configuration.
# atmos.yaml
terraform:
ui:
enable: [plan, apply]pipeform.mp4
Requirements:
- If no TTY is attached, the UI should be automatically disabled
- If the
CI=trueenvironment variable is set, then UI should be automatically disabled - If the
--no-uiflag is explicitly passed, then the UI should be disabled.
Alternatives Considered
No response
Additional Context
The pipeform library is licensed MPL2 and is not currently implemented as a Go module. We've contacted the @magodo (author) and he said he would accept a PR converting it to a library. As part of this implementation, we will need to first open a PR for that work.