pre-commit git hooks to take care of OpenTofu configurations
  • Shell 86.3%
  • Dockerfile 10.8%
  • Python 2.9%
Find a file
Anton Babenko 2b71d4b3bb
Merge pull request #25 from getcloudnative/feat-pass-terraform-docs-opts
Add feature to pass options to terraform-docs.
2018-12-11 20:21:40 +01:00
.pre-commit-config.yaml Allow to have spaces in directories (#11) 2018-04-21 11:22:47 +02:00
.pre-commit-hooks.yaml Updated README 2018-05-24 22:12:04 +02:00
hooks.yaml Updated README 2018-05-24 22:12:04 +02:00
LICENSE Added license file (fixed #21) 2018-07-10 11:28:43 +02:00
README.md Updated README 2018-05-24 22:12:04 +02:00
terraform_docs.sh Add feature to pass options to terraform-docs. 2018-11-13 12:30:06 +01:00
terraform_fmt.sh Allow to have spaces in directories (#11) 2018-04-21 11:22:47 +02:00
terraform_validate_no_variables.sh Only run validate if .tf files exist in the directory. (#20) 2018-05-24 22:10:49 +02:00
terraform_validate_with_variables.sh Only run validate if .tf files exist in the directory. (#20) 2018-05-24 22:10:49 +02:00

pre-commit-terraform hook

Github tag Help Contribute to Open Source

Several pre-commit hooks to keep Terraform configurations (both *.tf and *.tfvars) in a good shape:

  • terraform_fmt - Rewrites all Terraform configuration files to a canonical format.
  • terraform_validate_no_variables - Validates all Terraform configuration files without checking whether all required variables were set.
  • terraform_validate_with_variables - Validates all Terraform configuration files and checks whether all required variables were specified.
  • terraform_docs - Inserts input and output documentation into README.md.

Notes about hooks

  1. terraform_validate_no_variables and terraform_validate_with_variables will not work if variables are being set dynamically (eg, when using Terragrunt). Use terragrunt validate command instead.

  2. terraform_docs will insert/update documentation generated by terraform-docs between markers - <!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK --> and <!-- END OF PRE-COMMIT-TERRAFORM DOCS HOOK --> if they are present in README.md. Make sure that terraform-docs is installed.

Example

.pre-commit-config.yaml:

- repo: git://github.com/antonbabenko/pre-commit-terraform
  rev: v1.7.3
  hooks:
    - id: terraform_fmt
    - id: terraform_docs

Enjoy the clean and documented code!