Module Standards

Infrastructure as Code module standards

Background

The driver behind the changes are the followings:

  • The increasing complexity of the IaC modules are making updating and testing the code more and more difficult and time consuming.
  • There are need for common standards how these modules are developed, in order to make integration of these parts into each other seamless and EASY.

Goals

  • Develop small sub-modules called Bricks and build up complex deployments with Wrapper modules.
  • Develop reusable terratests, as a go module, based on Gruntworks Terratest suite
  • Develop automated README.MD generation with terraform-docs
  • Develop automated CHANGELOG.MD generation - tool under discussion.
  • Follow DevSecOps best practices as a default deployment model, so consumers having secure by default deployments, which meets the Legal Requirements and Industry Best Practices.

Module Naming

Module naming standards

Module Principles

Module principles

Module Repository Setup

Module repository setup

Last modified September 25, 2022: docsy (#3) (7787169)