terramate-io / terramate

Terramate CLI is an open-source Infrastructure as Code (IaC) Orchestration and Code Generation tool for Terraform, OpenTofu and Terragrunt.
https://terramate.io
Mozilla Public License 2.0
3.26k stars 91 forks source link

[FEATURE] Cannonical Example Repo #968

Closed donovanrost closed 6 months ago

donovanrost commented 1 year ago

Is your feature request related to a problem? Please describe. I have taken over a project using Terramate. I don't believe the previous engineer did it well since the blast radius is huge. I'm still trying to wrap my head around the tool while trying to refactor into smaller modules

Describe the solution you'd like I would like a well designed sample repository that illustrates Terramates opinion on stack design

Describe alternatives you've considered Moving off terramate and going to Terragrunt

soerenmartius commented 1 year ago

Hi @donovanrost,

Thanks for reaching out. We're about to publish a series of new guides explaining the usage and sizing of stacks for reference architectures in AWS and Google Cloud. In general, stacks should be sized as small as possible. We would also recommend that you group infrastructure resources by business domains. Let's assume you want to deploy a network, a Kubernetes cluster and a database. Those would all belong in separate stacks, whereas the node groups of the cluster could be managed in a child stack within the Kubernetes stack. You can find an example for Google Cloud in https://github.com/terramate-io/terramate-example-code-generation

I will update this Issue once we release the new guides. BTW, you would still need to wrap your head around stack sizing and make similar decisions if you migrate to Terragrunt.

In the meantime, please feel free to join our Discord to get in touch with our team to help you directly.

soerenmartius commented 1 year ago

Hey @donovanrost,

Just wanted to follow up and let you know that I started working on some a reference architecture in https://github.com/terramate-io/terramate-examples/tree/main/01-keep-terraform-dry. I'll complete that example and publish a guide late next week.

Have a good weekend, Soren

soerenmartius commented 6 months ago

Hi @donovanrost good things sometimes take a while! You can now find the reference architecture at https://github.com/terramate-io/terramate-quickstart-aws

soerenmartius commented 6 months ago

I am gonna close the issue for now, let me know if anything else is needed!