Terraform State Mover
Helps refactoring terraform code by offering an interactive prompt for the terraform state mv
command.
Installation
Using homebrew:
brew install mbode/tap/terraform-state-mover
Alternatively, get a pre-built binary from the latest release or build it yourself using
go get github.com/mbode/terraform-state-mover
Usage
terraform-state-mover # inside a Terraform root directory
Extra arguments after a --
are passed to the terraform plan
call. This makes the following possible:
terraform-state-mover -- -var key=value # set variables
terraform-state-mover -- -var-file=variables.tfvars # use variable files
terraform-state-mover -- -refresh=false # skip state refresh
terraform-state-mover -- -parallelism=50 # speed up plan by using more concurrent operations
Hint: If terraform-state-mover is used with the Google Cloud Platform provider and remote state, it is recommended to use --delay=2s
, otherwise API rate limits error might occur.
Key mapping
Key | Action |
⏎ | Select |
↓ | Next |
↑ | Previous |
→ | Page Down |
← | Page Up |
Demo
Terraform version compatibility
< 0.10.1 | 0.10.1…8 | 0.11.0…15 | 0.12.0…31 | 0.13.0…7 | 0.14.0…11 | 0.15.0…5 | 1.0.0…11 | 1.1.0…9 | 1.2.0…2 |
✗ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Contributing
Pull requests are welcome. Please make sure to update tests as appropriate.
License
Similar tools
- tfautomv - Generate Terraform
moved
blocks automatically for painless refactoring