Files
vim-ale/terramate
AJ ONeal 23100394ac ref(installerconf): rename config keys and add full URL support
Renames:
- github_repo → github_releases (back-compat kept)
- github_source → github_sources (back-compat kept)
- gitea_repo → gitea_releases (back-compat kept)

New keys:
- gitea_sources, gitlab_releases, gitlab_sources

All keys now accept either owner/repo shorthand or full URLs:
- github_releases = sharkdp/bat
- github_releases = https://github.com/sharkdp/bat
- gitea_releases = https://git.rootprojects.org/root/pathman

Defaults: github → github.com, gitlab → gitlab.com.
Gitea has no default (self-hosted only).

Updated all 73 releases.conf files from github_repo to github_releases.
2026-03-11 11:51:43 -06:00
..
2026-03-08 19:38:49 -06:00
2024-12-18 22:08:19 +00:00

title, homepage, tagline
title homepage tagline
Terramate https://github.com/terramate-io/terramate Terramate simplifies managing large-scale Terraform codebases

To update or switch versions, run webi terramate@stable (or @v0.11.4, @beta, etc).

Cheat Sheet

Terramate enables scalable automation for Terraform by providing a robust framework for managing multiple stacks, generating code, and executing targeted workflows.

1. Create a New Project

git init -b 'main' ./terramate-quickstart
cd ./terramate-quickstart
git commit --allow-empty -m "Initial empty commit"

2. Create a Stack

terramate create \
  --name "StackName" \
  --description "Description of the stack" \
  ./stacks/stackname/

git add ./stacks/stackname/stack.tm.hcl
git commit -m "Create a stack"

3. List Stacks

terramate list

4. Detect Changes

terramate list --changed

5. Generate Code

  1. Create a .tm.hcl file for code generation:

    cat <<EOF > ./stacks/backend.tm.hcl
    generate_hcl "backend.tf" {
      content {
        terraform {
          backend "local" {}
        }
      }
    }
    EOF
    
  2. Run the generation command:

    terramate generate
    

6. Run Terraform Commands

  • Initialize stacks:

    terramate run terraform init
    
  • Plan changes:

    terramate run terraform plan
    
  • Apply changes:

    terramate run terraform apply -auto-approve
    
  • Run commands only on changed stacks:

    terramate run --changed terraform init
    terramate run --changed terraform plan
    terramate run --changed terraform apply -auto-approve