This repository contains a collection of terraform module abstractions for various use-cases when working with Google Cloud Platform.
Warning
This repository is a work in progress. Expect breaking changes until the first stable release is published.
Presently, all modules try to stay up-to-date with the latest Terraform and Google Provider versions, however, versioning compatibility might be adjusted in the future to ensure backwards-compatible updates of modules.
- terraform ~> 1.9
- google provider ~> 6.0
Installation and usage instructions are provided in each component's README.
Examples for each module are provided in the respective module's README, and can also be found in the examples directory.
Note
A few words on code quality.
- First ensure you have the necessary requirements installed, particularly code-quality tools like
tflintandtrivy. - Then execute
tflint --initto install tflint plugins from the tflint config file. Refer to tflint documentation for more usage details.
Tflint supports disabling rules on specific lines via annotation comments. We try avoid using these as much as possible.
Trivy has support for suppressing rules via inline comments as well, which we also try to avoid, unless there are good reasons not to.