/terramate

Terramate adds powerful capabilities such as code generation, stacks, orchestration, change detection, data sharing and more to Terraform.

Primary LanguageGoMozilla Public License 2.0MPL-2.0

Terramate

Terramate

https://terramate.io
Terramate helps implement and maintain highly scalable Terraform projects by adding powerful capabilities such as code generation, stacks, orchestration, change detection, data sharing and more.


Latest Release Go Docs Go Report Card Code Coverage Terramate CI Status Stars Discord Server

📖 Documentation | 🚀 Getting Started | 💻 Playground | 🙌 Join Us



Understanding Terramate

Developers waste too much time writing and maintaining infrastructure code. That's why we invented Terramate, an open-source code generator and orchestrator that adds powerful capabilities such as code generation, stacks, orchestration, change detection, data sharing and more to Terraform.

Compared to other tooling, Terramate is not a wrapper for Terraform. Terramate can orchestrate and execute any tool such as Terraform, Infracost, Kubernetes, Checkov and others.

Our philosophy is to integrate with existing tooling in a non-intrusive way without major lock-ins and for a broader audience. If you like Terramate please give the project a ⭐ and join our Discord Community.

Use Cases

Split up large Terraform environments into smaller and isolated stacks

Increase the change frequency, reduce the blast radius and provide a clear separation of ownership.

🔗 Build custom delivery workflows

Build custom CI/CD workflows on top of a powerful orchestration and execution engine.

🏎 Speed up execution run times

Change detection allows you to only execute commands in stacks that have been changed in the current branch or since the last merge.

🧠 Provide powerful templates and abstraction layers

Enable developers to use templates to deploy complex infrastructure without knowing the complexity of Terraform.

💫 Keep your code DRY

Avoid code duplication by easily sharing data across your stacks.

⚒️ Reduce the maintenance overhead to a bare minimum

Automatically generating and updating Terraform configuration, provider definitions, backend configuration and more.

🫶 Overcome the shortcomings of Terraform

Remove the need for hard-coded configurations and allow interpolation in code sections where Terraform does not support dynamic configurations.

Getting Started

The fastest way to get started with Terramate is our getting started guide.

Join the Community

Additional Resources

Reporting bugs and contributing code

  • Want to report a bug or request a feature? Open an issue