Rethinking IaC Blog

Curated articles, guides and op-eds by practitioners and thought leaders covering IaC best practices, Terramate product updates and industry reports. Learn about the latest in DevOps, platform engineering and cloud from our expert authors.

Recommended Articles

Announcing Support for the Center of Internet Security (CIS) Benchmarks in Terramate Cloud
Changelog

Announcing Support for the Center of Internet Security (CIS) Benchmarks in Terramate Cloud

Today, we announce the support for the Center of Internet Security (CIS) Benchmarks in Terramate Cloud. With over 500 built-in policies covering security and compliance best practices for AWS, Azure, Google Cloud, Kubernetes and more, Terramate now helps you to detect and prevent security misconfiguration so that your developers can focus on deploying and managing production-grade cloud infrastructure more efficiently without accidentally causing critical vulnerabilities.

Sören Martius

Sören Martius

Read more

White arrow
How to structure and size Terraform Stacks Cover
Guide

How to structure and size Terraform Stacks

This article explores key considerations when architecting Stacks with Terraform and OpenTofu, provides pros and cons for different patterns, and concludes with our own opinionated recommendation.

Sören Martius

Sören Martius

Read more

White arrow
Introducing Terramate CLI 0.9.0 - GitLab, Workspaces, and Partial Evaluation
Changelog

Introducing Terramate CLI 0.9.0 - GitLab, Workspaces, and Partial Evaluation

Terramate 0.9.0 adds full support for GitLab, Terraform CLI Workspaces and Partial Evaluation.

Sören Martius

Sören Martius

Read more

White arrow
Mastering Terraform Workflows: apply-before-merge vs apply-after-merge
Guide

Mastering Terraform Workflows: apply-before-merge vs apply-after-merge

Discover the two main Terraform and OpenTofu workflows: apply-before-merge and apply-after-merge, and learn why apply-after-merge is likely the better choice.

Sören Martius

Sören Martius

Read more

White arrow
Simple HCL Code Generation
Changelog

Introduction: Simple HCL Code Generation

Introducing Ad-hoc HCL code generation, a more convenient way of generating HCL code for single stacks.

Photo of Annu Singh

Annu Singh

Read more

White arrow
Terramate v0.8.0
Changelog

Introducing Terramate v0.8.0 - OpenTofu Support & Runtime Configuration for Stacks

The latest release of Terramate CLI v0.8.0 includes significant improvements to managing configuration with environment variables, offering users more flexibility and control.

Photo of Annu Singh

Annu Singh

Read more

White arrow
Terramate Action
Guide

Introducing the Terramate GitHub Action

Integrating Terramate into your GitHub Actions workflows just got easier with the introduction of the Terramate Action on the GitHub Marketplace.

Photo of Annu Singh

Annu Singh

Read more

White arrow
How Terramate adds superpowers to Terragrunt in just 5 minutes
Guide

How Terramate adds superpowers to Terragrunt in just 5 minutes

This guide demonstrates how Terramate can supercharge Terragrunt by adding advanced capabilities in just a few minutes without changing any existing configuration.

Sören Martius

Sören Martius

Read more

White arrow
Terramate 0-6-0 Terragrunt Change Detection
Changelog

Introducing Terramate v0.6.0 - Terragrunt Change Detection

Learn more about the recent Terramate v0.6.0 release, which comes with support for Terragrunt Change Detection to help you orchestrate Terragrunt stacks that contain changes only.

Photo of Annu Singh

Annu Singh

Read more

White arrow
Create and orchestrate Terraform Stacks with Terramate
Guide

Create and orchestrate Terraform Stacks with Terramate

In this blog post, we discuss how to create and orchestrate stacks to provide a structured approach to organizing Terraform and OpenTofu into manageable units.

Photo of Annu Singh

Annu Singh

Read more

White arrow
Cover for Terramate Blog Post
Changelog

Introducing Terramate v0.5.0 - Parallel Execution for Stacks

With Terramate v0.5.0, you can now harness the power of parallel execution for your stacks. This means you can parallel run multiple independent stacks using the terramate run and terramate run script commands.

Photo of Annu Singh

Annu Singh

Read more

White arrow
Integrating Terramate with Infracost
Guide

FinOps Cloud Cost Estimation with Terramate, Terraform and Infracost

This guide explains how to integrate Infracost with Terramate to estimate the cloud cost of your Terraform Stacks in just 5 minutes.

Photo of Guest Author Matteo Depascale

Matteo Depascale

Read more

White arrow
Getting Started with Terramate in existing Terraform and OpenTofu Projects
Guide

Getting Started with Terramate in existing Terraform and OpenTofu Projects

This blog post demonstrate how we can onboard Terramate in existing Terraform and OpenTofu projects with a single command in just 1 minute.

Sören Martius

Sören Martius

Read more

White arrow
How to configure and run sequences of commands in Stacks using Terramate Scripts
Guide

How to configure and run sequences of commands in Stacks using Terramate Scripts

Terramate scripts allow you to specify a recurring sequence of commands to execute, e.g., a deployment, specifying specific options for the cloud. Scripts are especially useful for defining custom commands in Terramate that can be reused among environments and platforms without repeating expressive logic.

Sören Martius

Sören Martius

Read more

White arrow
Introducing Terramate v0.4.4 🎉
Changelog

Introducing Terramate v0.4.4 🎉

Besides stack filters and scripts, we also promoted a bunch of commands from the experimental to the stable namespace, launched a new documentation website that is now much more complete and added better debugging instructions to Terramate. As always, for a complete overview of all changes in v0.4.4, please see the CHANGELOG.

Sören Martius

Sören Martius

Read more

White arrow
Terramate VIM Plugin
Changelog

Announcing: Terramate VIM Plugin

Today we are happy to introduce another open source project: vim-terramate! The plugin utilizes the Terramate Language Server to provide code diagnostics while editing Terramate files.

Sören Martius

Sören Martius

Read more

White arrow
Terramate joins the CNCF as a Silver Member
Company News

Terramate joins the CNCF as a Silver Member

We are very proud to announce that Terramate has become a Silver member of the Cloud Native Computing Foundation® (also known as the CNCF®) and has joined the ranks of many other tech industry leaders committed to cloud-native platforms, projects, and technologies.

Sören Martius

Sören Martius

Read more

White arrow
Manage Terraform Providers Programmatically with Terramate
Guide

Manage Terraform Providers Programmatically with Terramate

Dive into Terramate's powerful feature to manage multiple providers across stacks effortlessly. Save time and reduce complexity in your DevOps workflow with our practical, DRY approach. Simplify your multi-cloud strategy with Terramate's code generation - it's efficient, automated, and smart.

Sören Martius

Sören Martius

Read more

White arrow
Generate Terraform Backend / Provider Configurations with Terramate
Guide

Generate Terraform Backend / Provider Configurations with Terramate

Discover the power of Terramate in augmenting Terraform's capabilities. In this guide, we address a common Terraform challenge: managing provider and backend configurations across multiple stacks. Learn how Terramate's Code Generation feature simplifies this process, enabling you to update configurations easily and efficiently with a DRY approach. Dive into our example repository for hands-on experience in transforming your Terraform projects. Join our community for more insights and support.

Sören Martius

Sören Martius

Read more

White arrow
Terramate v0.4.3 — Deep Cloning for Stacks
Guide

Terramate v0.4.3 — Deep Cloning for Stacks

One of the most requested features for Terramate CLI was to enable deep cloning for stacks in Terramate using the clone command. You can now use the clone command to clone nested stacks or, in other words, entire environments.

Sören Martius

Sören Martius

Read more

White arrow
Infrastructure as Code Landscape in 2023
Guide

Infrastructure as Code Landscape in 2023

The IaC landscape is rich and diverse, with Terraform leading the pack due to its extensive capabilities, and agnostic nature. As businesses continue to scale and cloud infrastructures become more complex, the demand for efficient, effective IaC tools will only grow.

Sören Martius

Sören Martius

Read more

White arrow
Why you should break down your Terraform into Stacks
Guide

Why you should break down your Terraform into Stacks

Explore effective strategies for managing large-state Terraform projects. Understand the challenges and solutions for optimizing infrastructure synchronization, collaboration, and security in large-scale Terraform environments. Ideal for DevOps professionals seeking efficient and secure practices in infrastructure management.

Sören Martius

Sören Martius

Read more

White arrow
Hidden Costs of Unoptimized Terraform Projects
Guide

Hidden Costs of Unoptimized Terraform Projects

Explore the essentials of optimizing Terraform in Infrastructure as Code (IaC). This concise guide covers the pitfalls of unoptimized Terraform setups, including increased costs, technical debt, and security risks. It emphasizes the benefits of optimized IaC for enhanced operational efficiency, cost savings, and robust security, essential for success in cloud and DevOps environments

Sören Martius

Sören Martius

Read more

White arrow
10 Biggest Pitfalls of Terraform
Guide

10 Biggest Pitfalls of Terraform

Terraform, a popular tool in Infrastructure as Code (IaC), faces challenges with managing multiple environments and scaling, leading to complex and error-prone setups. Terramate, a new CLI tool, addresses these issues by introducing stack concepts, global variables, and code generation to simplify environment management and reduce code complexity. It improves upon Terraform's limitations in versioning, backend configuration, and resource lifecycle management, offering a more streamlined and flexible approach for complex infrastructure management. Terramate's innovative features enhance efficiency and control, making it a valuable addition to the IaC toolset.

Sören Martius

Sören Martius

Read more

White arrow
What does HashiCorp’s BSL/BUSL adoption mean for Terramate
Guide

What does HashiCorp’s BSL/BUSL adoption mean for Terramate

HashiCorp's recent shift from an open-source license to the Business Source License (BSL/BUSL) for products like Terraform has stirred the tech community. This move, affecting not only Terraform but also Vault, Nomad, and others, transitions from the Mozilla Public License (MPL) v2.0 to a less open framework. This article delves into the implications of this change for Terramate CLI and Terramate Cloud, exploring how this licensing transition influences their functionalities, especially in light of Terramate's commitment to open-source principles and its ongoing development in the Terraform ecosystem.

Sören Martius

Sören Martius

Read more

White arrow
How to build a CI/CD pipeline for Terraform with Terramate on GitHub Actions
Guide

How to build a CI/CD pipeline for Terraform with Terramate on GitHub Actions

Terramate enhances Terraform projects with features like code generation, stacks, and change detection, making it a powerful tool for CI/CD pipelines. It works seamlessly with GitHub Actions. The example on GitHub shows how Terramate uses stacks for efficient Terraform modules and provides orchestration with its terramate run command. It supports stack selection based on directories or tags and incorporates change detection. The GitHub Actions example illustrates workflows for automating Terraform plan and apply processes, demonstrating Terramate's utility in streamlining CI/CD pipelines.

Sören Martius

Sören Martius

Read more

White arrow
Product Update: Terramate 0.4.0 — Road to Terramate Cloud
Changelog

Product Update: Terramate 0.4.0 — Road to Terramate Cloud

Terramate's latest update, version 0.4.0, marks a significant leap towards the anticipated launch of Terramate Cloud, enhancing the experience for teams managing Terraform projects. This update simplifies the integration process into existing Terraform projects, introduces new features like glob imports, and streamlines documentation for a better user experience. Additionally, the inclusion of experimental support for Terramate Cloud and the integration of the Terramate Language Server directly into the main repository signifies a commitment to continuous improvement and user-centric development. Looking forward, Terramate is not only focusing on enriching its feature set but also engaging with the community through the Terramate Cloud Design Partner Program, inviting users to contribute to the evolution of this promising platform.

Sören Martius

Sören Martius

Read more

White arrow
Infrastructure as Code is the Answer
Guide

Infrastructure as Code is the Answer

Explore the transformative journey of Infrastructure as Code (IaC) in this insightful article. From its early days in the late 1990s to the modern era of cloud computing, learn how IaC evolved from basic configuration management to sophisticated tools like Terraform and Ansible. Discover the rise of GitOps, a cutting-edge approach using Git for streamlined infrastructure management. This piece is a must-read for understanding how IaC is reshaping cloud infrastructure, offering automation, efficiency, and scalability.

Sören Martius

Sören Martius

Read more

White arrow
The Terramate Community is now on Discord
Company News

The Terramate Community is now on Discord

Exciting news for the Terramate community: We've launched our Discord server! This platform is a great place for everyone interested in Terramate to connect, discuss, and share.

Sören Martius

Sören Martius

Read more

White arrow
Understanding the basics of Terramate
Guide

Understanding the basics of Terramate

This tutorial showcases how Terramate can enhance your Terraform workflows by providing powerful features like code generation, stack management, orchestration, and change detection. By following this guide, you should have a good understanding of how to set up and use Terramate for efficient infrastructure management.

Sören Martius

Sören Martius

Read more

White arrow
How to keep your Terraform code DRY by using Terramate
Guide

How to keep your Terraform code DRY by using Terramate

Discover the power of Terramate in streamlining your Terraform workflows with this essential guide on keeping your Terraform code DRY (Don't Repeat Yourself). This post delves into the advanced features of Terramate, such as globals and code generation, which help in managing multiple Terraform stacks efficiently. Learn how Terramate's innovative approach to data sharing and hierarchy minimizes code duplication, making your infrastructure code more maintainable and less prone to errors. Whether you're dealing with large codebases or multiple environments, this article offers practical insights on transforming your Terraform setup into a more efficient and manageable system with Terramate. Join us to explore how Terramate simplifies and optimizes your Terraform projects, ensuring a more productive and streamlined workflow.

Sören Martius

Sören Martius

Read more

White arrow
Introducing the Terramate VSCode Extension and Language Server
Guide

Introducing the Terramate VSCode Extension and Language Server

Today we are happy to introduce two exciting new open source projects: the Terramate VSCode Extension and the Terramate Language Server.

Sören Martius

Sören Martius

Read more

White arrow
Terramate and Terragrunt
Guide

Terramate and Terragrunt

Explore the innovative orchestration and code generation capabilities of Terramate in this deep dive, contrasting it with existing tools like Terragrunt. This article delves into Terramate's design philosophy, emphasizing minimal intrusion in existing setups and its ability to handle complex Terraform environments. It also discusses the unique features of Terramate, such as enhanced orchestration, code generation using globals, and the generation of various file types, distinguishing it from Terragrunt and showcasing its versatility in managing and automating Terraform stacks. Join us to understand how Terramate enhances infrastructure as code practices, offering a flexible, powerful solution for your Terraform needs.

Sören Martius

Sören Martius

Read more

White arrow
Introducing Terramate — An Orchestrator and Code Generator for Terraform
Changelog

Introducing Terramate — An Orchestrator and Code Generator for Terraform

This post introduces Terramate, explaining its purpose, benefits, and why it's become a favorite among clients. Discover how Terramate addresses the challenges of managing Terraform at scale, including reducing code duplication and improving orchestration. Learn about its unique features like hierarchical data sharing, change detection with Git integration, and the generation of HCL code. Whether you're new to Terraform or looking to enhance your existing setup, this article offers insights into making infrastructure as code more efficient and user-friendly with Terramate.

Sören Martius

Sören Martius

Read more

White arrow