I’ve written a blog post on Spacelift.io about Terraform Monorepo: Structure, Benefits & Best Practices!
Terraform source code should live in a repository. This is close to a universal truth for source code development in general. The most common kind of repository is a git repository, but other similar technologies exist.
There are two common strategies for organizing Terraform code into repositories:provisioning.
- Use a one-to-one mapping between Terraform configuration (or root module) and git repository.
- Use a single repository for most (or all) Terraform configurations. This is known as a monorepo.
In this blog post, we will explain a monorepo and how it differs from using multiple repositories in Terraform. We will also discuss how to manage Terraform in a monorepo environment.
Read more at spacelift.io/blog/terraform-monorepo