Skip to content
This repository has been archived by the owner on Nov 29, 2022. It is now read-only.

A norms and conventions validator for Terraform

License

Notifications You must be signed in to change notification settings

thazelart/terraform-validator

Repository files navigation

⚠️ This repository is not maintained anymore. Sorry for the inconvenience.

Terraform-Validator

Mentioned in Awesome Go License
Documentation Status GoDoc
Build Status CodeCov Go Report Card
Docker Cloud Build Status Docker Pulls

This tool will help you ensure that a terraform folder answer to your norms and conventions rules. This can be really useful in several cases :

  • You're a team that want to have a clean and maintainable code.
  • You're a lonely developer that develop a lot of modules and you want to have a certain consistency between them.

Features:

  • make sure that the block names match a certain pattern.
  • make sure that the code is properly dispatched. To do this you can decide what type of block can contain each file (for example output blocks must be in outputs.tf).
  • ensure that mandatory .tf files are present.
  • ensure that the terraform version has been defined.
  • ensure that the providers' version has been defined.
  • make sure that the variables and/or outputs blocks have the description argument filled in.
  • layered terraform folders (test recursively).

⚠️ Terraform 0.12+ is supported only by the versions 2.0.0 and higher.

Documentation

Please find the full documentation here (ReadTheDocs).

Authors

Thibault Hazelart
Logo by Alexis Normand

License

Apache 2.0