Terraform Rules
Public rules
- terraform_binary —
bazel runwrapper for anyterraformsubcommand. - terraform_module — declares a
.tfmodule with providers and deps. - terraform_external_module — supplies a module fetched from outside the workspace (git, private hosts) to
deps. - terraform_provider — declares a provider built in the repo. Registry providers come from a
depstag's hub instead. - terraform_test — runs Terraform's HCL native test framework, reporting each
runblock as a JUnit test case. - terraform_plan_test — runs a real
planand keeps it as a reviewable test output; needs network. - terraform_validate_test / aspect —
terraform validateas a Bazel test/aspect. - terraform_fmt_test / aspect —
terraform fmt -checkas a Bazel test/aspect. - terraform_providers_lock —
bazel runupdater that writes.terraform.lock.hclwith the toolchain engine; nothing needs installing on the host. - terraform_providers_lock_test — fails when the lock file and the
required_providersblocks disagree.
Module extensions
- extensions —
terraform:toolchainanddepstags.