Links

Moving resources between remote states

Sometimes it's useful to be able to move resources between remote states without a need to recreate infrastructure. One use case is moving resources between directories.
terraform state mv command does not directly support remote states, but -state and -state-out parameters can be used against local states. This means remote states need to fetched first.
This can be done with for example aws s3 cp or terraform state pull > local.tfstate.
After both states are local, state mv command can be used in the following manner:
terraform state mv -state=src.tfstate -state-out=dst.tfstate module.foo module.foo
After this modified local state files need to pushed to remote storage, for example with:
terraform state push /path/to/local/state

References:

  • https://github.com/hashicorp/terraform/pull/15652#issuecomment-410754814
Last modified 1yr ago