tfrefactor

command module
v0.0.0-...-c64a997 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 20, 2022 License: MPL-2.0 Imports: 1 Imported by: 0

README

tfrefactor

Version Documentation Tests

Automated refactoring for Terraform.

Currently supports:

  • Rename local / var / data / resource across all files in a config
  • Move items or categories of items to new files.
  • Diff preview of changes
  • Adding moved blocks for resource renames to avoid state mv in Terraform 1.1

See refactor.tf for more refactoring recipes.

Install

Requires Go 1.17

git clone git@github.com:craftvscruft/tfrefactor.git
cd tfrefactor
make

# Ensure ~/.local/bin is in your $PATH or copy to a directory that is.
cp bin/tfrefactor ~/.local/bin
Run without installing
make

./bin/tfrefactor

Usage Examples

Display CLI help with full usage information.

tfrefactor

Rename a var from acct_id to account_id in the current directory

tfrefactor rename var.acct_id var.account_id

Move the var account_id to the file variables.tf

tfrefactor mv var.account_id variables.tf

Move all data blocks to the file data.tf

tfrefactor mv data data.tf

Run tests

make test

Author

👤 Ray Myers

🤝 Contributing

Contributions, issues and feature requests are welcome!

Feel free to check issues page. You can also take a look at the contributing guide.

Show your support

Give a ⭐️ if this project helped you!

support us

Acknowledgements

Built on hclwrite, a component of HashiCorp Configuration Language (HCL).

Inspiration and test helper code from hcledit by Masayuki Morita.

📝 License

Copyright © 2022 Ray Myers.

This project is MPL2 licensed.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL