awesome-tf

Infrastructure management guide

A curated collection of resources and guides for learning and using Terraform to manage infrastructure as code

Curated list of resources on HashiCorp's Terraform and OpenTofu

GitHub

6k stars
188 watching
870 forks
last commit: 16 days ago
Linked from 3 awesome lists

awesomeawesome-listdevopshashicorp-terraforminfrastructure-as-codeopentofuterraformterraform-modules

Awesome Terraform / Official Resources

Hashicorp Terraform Blog
Introduction to Terraform
Terraform Documentation
Terraform learn

Awesome Terraform / Community

weekly.tf - Terraform Weekly Newsletter Various news in the Terraform world (projects, announcements, discussions)
Complete Terraform documentation as PDF files (Updated nightly) 201 over 2 years ago
Terraform AWS Modules +
Terraform Bug Tracker 42,772 4 days ago
Terraform Community Modules
Terraform Twitter Community
Terraform Discuss
Terraform Provider/Module Registry
Terraform PDF Doc 62 over 4 years ago
Terraform Roadmap
Terragrunt Reference Architecture 376 almost 3 years ago

Awesome Terraform / Community / Language-specific communities:

Telegram (Ukrainian speak community)

Awesome Terraform / Books

Big Little Book On Terraform
Bootstrapping Microservices with Docker, Kubernetes, and Terraform, Second Editon
Deep-Dive Terraform on Azure
Getting Started with Terraform, 2nd ed.
HashiCorp Infrastructure Automation Certification Guide
IaC starting with Terraform (Korean)
Infrastructure as Code
Patterns and Practices for Infrastructure as Code: With examples in Python and Terraform
Terraform Best Practices -
Terraform Cookbook
Terraform for Ops e-book
Terraform in Action
Terraform in Depth
Terraform: Up & Running, 3rd ed.
The Terraform Book

Awesome Terraform / Tutorials and Blog Posts / Beginner Guides

A Comprehensive Guide to Terraform Series of blog posts from the author of "Terraform: Up & Running" that guide the reader from beginning with Terraform to using it in the real world
Using Terraform for Cloud Deployments - Part 1 Provisioning an EC2 instance
Hello, world: The Fargate/Terraform tutorial I wish I had Blog post describing setting up an ECS Fargate cluster from scratch
Terraform Security Guide Blog post describing security best practices when working with Terraform
Building a SaaS API? Don't Forget Your Terraform Provider Why you should write a terraform provider

Awesome Terraform / Tutorials and Blog Posts / Writing Custom Providers

Creating custom terraform providers Guide for creating custom providers
Writing a Terraform provider Guide for creating custom providers
Writing Custom Providers Official documentation for creating custom providers
Terraform Provider Code generation Guide to generating a terraform provider from an OpenAPI specification (Vendor Supported)

Awesome Terraform / Tutorials and Blog Posts / How-To

How To Write OPA for Terraform How to use Open Policy Agent to evaluate and enforce policy on your Terraform plans
Deploying Discourse with Terraform Shows how Terraform can create a running instance of Discourse on DigitalOcean in one command
Deploying Django to AWS ECS with Terraform Looks at how to use Terraform to spin up the required AWS infrastructure for running a Django app on ECS
Easily Deploy A Seneca Microservice to ECS with Wercker and Terraform: Part I , & - Illustrates how Terraform can be incorporated into a microservice deployment pipeline
Terraform for a Highly Available VPN between AWS and Azure Terraform code to deploy a highly available VPN between AWS and Azure
Terraforming 1Password How 1Password migrated from CloudFormation to Terraform
Tutorial: How to Use Terraform to Deploy OpenStack Workloads Illustrates how easy it is to use the OpenStack Terraform provider to deploy a web server
Zero Downtime Updates with HashiCorp Terraform Ensuring zero downtime of your infrastructure
Google Cloud Platform for 10$ a month using terraform 46 over 3 years ago Shows how to use terraform to create a secure Google Kubernetes Cluster, Google Cloud Run Services and other infrastructure elements for less than a month
Infracost + Terraform + GitHub Actions = Automate Cloud Cost Management How to use Infracost as the guardrail to manage cloud cost during Terraform development
How To Wrap Your Terraform Provider for Pulumi Making your terraform provider pulumi-ready

Awesome Terraform / Tutorials and Blog Posts / Multi-Environment Configuration

Terraform Design Patterns: the Terrafile Managing Terraform modules and their versions within Terraform projects with Terrafile
Terraform, VPC, and why you want a tfstate file per env Some gotchas surrounding using Terraform in large projects with multiple environments and how to avoid them
Using Pipelines to Manage Environments with Infrastructure as Code Explains different approaches for building a pipeline to handle infrastructure changes moving from one environment to the next

Awesome Terraform / Tutorials and Blog Posts / Azure

Learning HashiCorp Terraform Guide for Azure
New Terraform Azure Automation Resources Azure Automation
Terraforming Azure PaaS Deploy PaaS Resources on Azure

Awesome Terraform / Tutorials and Blog Posts / AWS

AWS Lambda the Terraform Way 1,256 over 3 years ago Understand AWS Lambda in-depth, beyond executing functions, using Terraform. Also includes guides for integration with S3, API Gateway, DynamoDB, Kinesis, SQS
Managing AWS Lambda Functions with Terraform What is AWS Lambda used for and how to use Terraform to manage AWS Lambda functions?

Awesome Terraform / Tutorials and Blog Posts / Google Cloud

Managing infrastructure as code with Terraform, Cloud Build, and GitOps Setup and manage infrastructure as code with Terraform, Cloud Build, and GitOps
Getting started with Terraform on Google Cloud Using Terraform to create a VM in Google Cloud and Starting a basic Python Flask server
Managing Cloud Infrastructure with Terraform Deploy Kubernetes Load Balancer Service with Terraform, HTTPS Content-Based Load Balancer with Terraform, Modular Load Balancing with Terraform - Regional Load Balancer, Custom Providers with Terraform, Cloud SQL with Terraform, Building a VPN Between Google Cloud and AWS with Terraform
Hashicorp Terraform Tutorials for Google Cloud Get started with Terraform on Google Cloud

Awesome Terraform / Tutorials and Blog Posts / Miscellaneous

Sharing data between Terraform configurations Illustrates how to use remote state to share data between Terraform configurations
The Segment AWS Stack Shows the behind the scenes of the infrastructure powered by Terraform that solved at
Top 3 Terraform Testing Strategies for Ultra-Reliable Infrastructure-as-Code
Two Weeks with Terraform Some hard-earned experience from using Terraform in the wild, and some operational wisdom
Terraform: Beyond the Basics with AWS Explanation of a demo using Terraform to provision a sample AWS architecture
Terraform cost estimation 690 over 1 year ago Anonymized, secure, and free Terraform cost estimation based on Terraform plan (0.12+) or Terraform state (any version)
How to Debug Terraform Projects: Tutorial

Awesome Terraform / Community Modules

rancher-terraform-digitalocean 23 over 7 years ago Rancher server on digitalocean
segmentio/stack 2,104 over 1 year ago Configures production infrastructure with AWS, Docker, and ECS
terraform-aws-account-lookup 3 10 months ago This Terraform module allows querying AWS accounts and outputs the accounts in various mappings or as a complete list, with the ability to apply a search filter to the account list and group the accounts by existing tags using a submodule
terraform-aws-alb 440 27 days ago Creates Application load-balancer on AWS (verified module)
terraform-aws-appconfig 27 about 1 month ago Creates AWS AppConfig resources on AWS
terraform-aws-atlantis 521 about 1 month ago Creates Terraform configurations for running on AWS Fargate. Github, Gitlab, and BitBucket are supported
terraform-aws-autoscaling 294 about 1 month ago Creates Auto-Scaling Groups and Launch Configurations (verified module)
terraform-aws-customer-gateway 17 about 1 month ago Creates Customer Gateway on AWS
terraform-aws-datadog-forwarders 56 10 days ago Creates resources on AWS to forward logs/metrics to Datadog
terraform-aws-dms 64 3 days ago Creates AWS DMS (Database Migration Service) resources on AWS
terraform-aws-dynamodb-table 106 about 1 month ago Creates DynamoDB table on AWS
terraform-aws-ec2-instance 758 19 days ago Creates EC2 instances on AWS
terraform-aws-ecr 186 about 1 month ago Manages Docker container registries on AWS ECR
terraform-aws-ecs 572 28 days ago Creates AWS ECS resources on AWS
terraform-aws-efs 88 about 1 month ago Defines an EFS Filesystem
terraform-aws-eks 4,471 13 days ago Creates Elastic Kubernetes Service on AWS (very popular module)
terraform-aws-elb 146 about 1 month ago Creates Elastic load-balancer on AWS (verified module)
terraform-aws-eventbridge 144 26 days ago Creates EventBridge resources on AWS
terraform-aws-jenkins-ha-agents 8 9 months ago EC2 Based Jenkins deployment with HA (spot) agents. Runs on EFS for immutability. Fully customizable, with sensible defaults
terraform-aws-jenkins 256 about 1 year ago Build a Docker image with Jenkins, saves it to an ECR repo, and deploys it to Elastic Beanstalk running a Docker stack
terraform-aws-key-pair 152 about 1 month ago Automatically Generate SSH Key Pairs (Public/Private Keys)
terraform-aws-lambda-auto-package 27 almost 2 years ago A terraform module to define a lambda function which source files are automatically built and packaged for lambda deployment
terraform-aws-lambda 928 about 1 month ago Terraform module, which builds dependencies and packages, and also creates AWS Lambda resources in countless combinations
terraform-aws-managed-service-prometheus 27 about 1 month ago Creates AWS Managed Service for Prometheus (AMP) resources on AWS
terraform-aws-modules Collection of Terraform AWS modules supported by the community (includes official AWS modules)
terraform-aws-msk-kafka-cluster 55 about 1 month ago Creates AWS MSK (Managed Streaming for Kafka) resources on AWS
terraform-aws-notify-slack 470 about 1 month ago Creates SNS topic and Lambda function, which sends notifications to Slack
terraform-aws-postgresql-rds 85 over 1 year ago Creates PostgreSQL on RDS
terraform-aws-rds-aurora 386 about 1 month ago Creates RDS Aurora cluster resources on AWS (verified module)
terraform-aws-rds-proxy 56 about 1 month ago Creates AWS RDS Proxy resources on AWS
terraform-aws-rds 886 about 1 month ago Creates RDS resources on AWS (verified module)
terraform-aws-redshift 82 about 1 month ago Creates Redshift resources on AWS
terraform-aws-route53 126 about 1 month ago Creates Route53 resources on AWS
terraform-aws-s3-bucket 526 14 days ago Creates S3 bucket resources on AWS
terraform-aws-secure-baseline 1,143 5 months ago Set up your AWS account with the secure baseline configuration based on CIS Amazon Web Services Foundations
terraform-aws-security-group 563 about 1 month ago Creates EC2-VPC security groups on AWS (verified module)
terraform-aws-ssh-bastion-service 207 2 months ago Terraform plan to deploy ssh bastion as a stateless service on AWS
terraform-aws-transit-gateway 144 about 1 month ago Creates Transit Gateway resources on AWS
terraform-aws-vpc 2,991 3 days ago Creates VPC resources on AWS (verified and very popular module)
terraform-aws-vpn-gateway 111 about 1 month ago Creates VPN gateway resources on AWS
terraform-azurerm-aks 0 about 6 years ago Create AKS resources on Azure
terraform-azurerm-iis 6 almost 6 years ago Install IIS Server on Azure VM instance
terraform-azurerm-mysql 2 about 5 years ago Create MySql Database on Azure
terraform-azurerm-redis 1 over 6 years ago Create Redis on Azure
terraform-azurerm-sqlserver 8 about 1 year ago Create SQl Server Database on Azure
terraform-cloudflare-maintenance 128 11 months ago Module to create a Maintenance Page using Cloudflare Workers
terraform-digitalocean-droplet Terraform module for managing DigitalOcean Droplets and related resources
terraform-ecs-jenkins 105 about 7 years ago Provisions Jenkins on AWS ECS using Terraform
terraform-gce-atlantis 32 10 days ago Creates Terraform configurations for running on Google Compute Engine
terraform-google-project-factory 840 3 days ago Opinionated Google Cloud Platform project creation and configuration with Shared VPC, IAM, APIs, etc
terraform-kubestack 652 4 months ago Kubestack is a framework for Kubernetes platform engineering teams to define the entire cloud native stack in one Terraform code base and continuously evolve the platform safely through GitOps
terraform-linode-k8s Installs Kubernetes on Linode Instances
terraform-nixos 342 4 months ago A set of Terraform modules that are designed to deploy NixOS
terraform-static-website-s3-cloudfront 38 about 8 years ago Creates static websites on AWS S3 & Cloudfront based on variables
tf_aws_bastion_s3_keys 191 over 1 year ago Creates bastion hosts on AWS EC2
typhoon 1,947 7 days ago Minimal and free Kubernetes distribution with Terraform

Awesome Terraform / Self-Hosted Registries

anthology 132 almost 3 years ago Private Terraform registry implementation as an alternative to the official registry
boring-registry 177 14 days ago Private Terraform Module/Provider Registry with API key authentication and blob storage support
citizen 625 about 1 month ago Private Terraform Module/Provider Registry
nrkno/terraform-registry 90 7 days ago A private Terraform registry with modular store backends
petra 42 6 months ago Private Terraform Registry Manager
philips-labs/terraform-registry 89 3 months ago Terraform registry to serve arbitrary Terraform provider releases hosted on Github
tapir 206 3 days ago Private Terraform Registry
terraform-simple-registry 65 over 2 years ago Simple implementation of the Terraform registry protocols
Terrareg 274 3 days ago Terraform module registry
terustry 65 3 months ago Open Source terraform provider registry acting as a proxy for gitlab or github releases
terralist 328 3 days ago Terraform Private Registry for modules and providers manageable from a REST API

Awesome Terraform / Managed Registries

cloudsmith Managed package hoster for internal and external clients

Awesome Terraform / Providers / Hashicorp supported providers

terraform-provider-aws 9,842 6 days ago Provider for Amazon Web Services
terraform-provider-azurerm 4,603 6 days ago Provider for Azure
terraform-provider-docker 132 almost 4 years ago Provider for Docker
terraform-provider-google 2,351 4 days ago Provider for Google Cloud Platform
terraform-provider-helm 1,003 4 days ago Provider for Helm
terraform-provider-kubernetes 1,598 5 days ago Provider for Kubernetes
terraform-provider-vsphere 621 6 days ago Provider for VMware vSphere

Awesome Terraform / Providers / Vendor supported providers

terraform-provider-alicloud 591 6 days ago Provider for Alibaba Cloud
terraform-provider-artifactory 276 6 days ago Provider for
terraform-provider-atlas 55 14 days ago Provider for
terraform-provider-azapi 193 7 days ago Provider for Azure Resource Manager Rest API
terraform-provider-azuredevops 386 7 days ago Provider for Azure DevOps (VSTS)
terraform-provider-buildkite 56 6 days ago Provider for Buildkite
terraform-provider-checkly 44 3 months ago Manage resources for API & E2E monitoring
terraform-provider-coder 31 6 days ago Provider for
terraform-provider-confluent 31 6 days ago Provider for Confluent
terraform-provider-datadog 403 6 days ago Provider for Datadog
terraform-provider-digitalocean 509 6 days ago Provider for DigitalOcean
terraform-provider-dominos 1,125 6 months ago Provider for Dominos Pizza
terraform-provider-elasticstack 171 5 days ago Provider for Elasticsearch and Kibana
terraform-provider-env0 39 4 days ago Provider for
terraform-provider-github 907 10 days ago Provider for GitHub
terraform-provider-gitlab 395 about 1 month ago Provider for GitLab
terraform-provider-graphql 53 2 months ago Provider for GraphQL queries and mutations
terraform-provider-hcloud 513 6 days ago Provider for Hetzner Cloud
terraform-provider-healthchecksio 50 9 months ago Provider to manage healthchecks.io resources
terraform-provider-heroku 100 3 months ago Provider for Heroku
terraform-provider-ibm 341 6 days ago Provider for IBM Cloud
terraform-provider-iterative 290 2 months ago Terraform plugin built with machine learning in mind
terraform-provider-k8s 135 about 2 years ago Simple Kubernetes Provider, works with any manifest
terraform-provider-keycloak 644 6 days ago Provider to manage the settings of your identity provider server
terraform-provider-linode 71 over 5 years ago Provider for Linode
terraform-provider-openstack 386 6 days ago Plugin for OpenStack
terraform-provider-panos 89 2 months ago Provider for
terraform-provider-pingdom 120 almost 2 years ago Provider to manage Pingdom resources
terraform-provider-rancher2 263 6 days ago Provider for Rancher v2
terraform-provider-scalr 19 3 days ago Provider for
terraform-provider-secrethub 49 over 3 years ago Provider for SecretHub
terraform-provider-sigsci 26 8 days ago Provider for Signal Sciences
terraform-provider-snowflake 551 3 days ago Provider for Snowflake data warehouse
terraform-provider-spinnaker 143 8 months ago Provider for
terraform-provider-spotinst 63 3 days ago Provider for spotinst
terraform-provider-stripe 242 over 1 year ago Provider for Stripe
terraform-provider-ucloud 68 7 months ago Provider to manage UCloud resources
terraform-provider-uptimerobot 123 over 1 year ago Provider to manage uptimerobot resources
terraform-provider-vaulted 38 over 1 year ago Encrypted HashiCorp Vault secrets via Terraform that can be stored in SCM such as Git

Awesome Terraform / Providers / Community providers

terraform-provider-docker 627 4 days ago Terraform Docker provider
terraform-provider-terracurl 132 3 months ago Provider to make managed and unmanaged API calls to your target endpoint
terraform-provider-value 15 about 2 years ago Value Provider for Terraform
terraform-provider-uname 4 8 months ago Uname Provider for Terraform
terraform-provider-proxmox 2,203 3 days ago Terraform Proxmox provider

Awesome Terraform / Testing

clarity 140 over 3 years ago A declarative test framework for Terraform for unit testing
kitchen-terraform 1,130 30 days ago Provides a set of Test Kitchen plugins which enable a system to use Test Kitchen to converge a Terraform configuration and verify the resulting Terraform state with InSpec controls
rspec-terraform 92 about 9 years ago RSpec tests for your Terraform modules
terraform_validate 256 almost 5 years ago Assists in the enforcement of user-defined standards in Terraform
terraform-compliance 1,360 about 2 months ago BDD Testing for Terraform Files
terratest 7,519 6 days ago Terratest is a Go library that makes it easier to write automated tests for your infrastructure code

Awesome Terraform / Tools

AIaC 3,528 23 days ago Artificial Intelligence Infrastructure-as-Code Generator
AirIAM 776 8 months ago AirIAM is a tool for AWS IAM to least privilege Terraform execution framework
Argonaut Deploy apps and infrastructure on your cloud in minutes. Autogenerate Terraform modules, customize configurations through PRs. Support for app deployments on Kubernetes and Lambda environments
asdf 240 2 months ago HashiCorp plugin for the version manager
astro 435 over 1 year ago Astro is a tool for managing multiple Terraform executions as a single command
atlantis 7,831 3 days ago Unified workflow for collaborating on Terraform through GitHub
atmos 799 5 days ago A universal tool that converts deep merged YAML to module inputs
aws2tf 586 6 days ago automates the importing of existing AWS resources into Terraform and outputs the Terraform HCL code
aztfexport 1,628 9 days ago A tool to bring existing Azure resources under Terraform's management
balcony CLI tool for easy AWS API reads. Also generates Terraform import-blocks, and actual Terraform Resource code
blast radius 2,064 3 months ago Interactive visualizations of Terraform dependency graphs
burrito Burrito is a TACoS (Terraform Automation Collaboration Software) Kubernetes Operator
cfnctl 131 10 months ago Cfnctl brings the Terraform cli experience to AWS Cloudformation
Checkov 7,126 7 days ago Terraform static analysis tool for terraform>=0.12
Coder Coder provisions software development environments on your infrastructure via Terraform
cf-terraforming 986 6 days ago A command line utility to facilitate terraforming your existing Cloudflare resources
coretech/terrafile 141 almost 2 years ago Systematically manage external modules from Github for use in Terraform (written in Go)
driftctl 2,471 5 months ago Detect, track, and alert on infrastructure drift
dxw/terrafile 2 6 days ago Systematically manage external modules from Github for use in Terraform (written in Ruby)
flora 26 about 2 years ago Terraform version manager
fogg 295 24 days ago A tool for eliminating toil in managing terraform repositories
former2 2,238 about 2 months ago Generate terraform configuration from your existing resources within your AWS account
fuzzy-terraform-rm 37 12 months ago A fuzzy-finder command-line tool for removing resources from terraform state
gaia 993 over 1 year ago Gaia is a Terraform 🌍 UI for your modules, and self-service infrastructure 👨‍💻
hatchet 156 over 1 year ago An all-in-one Terraform management tool
hcldump 8 almost 3 years ago Dump the HCL (v2) abstract syntax tree
hcledit 463 3 months ago A command line editor for HCL
hclgrep 89 9 months ago Syntax based grep for HCL(v2)
iam-policy-json-to-terraform 780 10 days ago Small tool to convert an IAM Policy in JSON format into a Terraform aws_iam_policy_document
Infracost 11,035 4 days ago Cloud cost estimates for Terraform in your CLI and pull requests
inframap 1,761 5 months ago Read your tfstate or HCL to generate a graph specific for each provider, showing only the resources that are most important/relevant
json2hcl 506 3 months ago Convert JSON to HCL and vice versa
k2tf 1,191 4 months ago Kubernetes YAML to Terraform HCL converter
KICS 2,093 7 days ago Scans IaC projects for security vulnerabilities, compliance issues, and infrastructure misconfiguration. Currently working with Terraform projects, Kubernetes manifests, Dockerfiles, AWS CloudFormation Templates, and Ansible playbooks
layerform 1,210 11 months ago Layerform helps engineers create reusable environment stacks using plain .tf files. Ideal for multiple "staging" environments
library.tf Library.tf is built and designed to not just provide you with all of the registry information for Terraform and OpenTofu but to provide all of the insights you need to make decisions. Quickly find modules or providers that are supported and maintained and not full of bugs
modules.tf-lambda 351 over 3 years ago Infrastructure as code generator from visual diagrams created with to Terraform
para 58 about 5 years ago The missing 3rd-party plugin manager and a "Swiss army knife" for Terraform/Terragrunt - just 1 tool to facilitate all workflows
pike 574 6 days ago Pike calculates the permissions or IAM policy required to build your Terraform
pluralith Terraform state visualization and automated generation of infrastructure documentation
pre-commit-terraform 3,216 9 days ago pre-commit git hooks to take care of Terraform configurations (auto-format, validate, update docs)
pretf 104 over 2 years ago drop-in Terraform wrapper that generates Terraform configuration with Python. See
prettyplan 172 about 5 years ago Prettyplan ( ) is a small tool to help you view large Terraform plans with ease
prettyplan for TF 0.12+ 29 about 2 years ago Prettyplan for TF 0.12+ ( ) is a small tool to help you view large Terraform plans with ease
pug 472 4 days ago The terminal user interface for terraform power users
pytest-terraform 56 8 days ago pytest terraform plugin with fixtures and offline replay support
python-terrafile 38 about 5 years ago Systematically manage external modules from Github for use in Terraform
regula 962 3 months ago Evaluates Terraform infrastructure-as-code for potential AWS, Azure, and Google Cloud security misconfigurations and compliance violations prior to deployment
renovate-config 46 9 days ago Sharable Config Presets for Renovatebot, especially useful for DevOps folks
rover 3,039 4 months ago Interactive Terraform state and configuration explorer
ruby-terraform 109 21 days ago Simple Ruby wrapper for invoking terraform commands
sato 104 7 days ago Sato helps you convert your legacy Cloudformation into Terraform
scenery 366 over 3 years ago Another Terraform plan output prettifier
scratchrelaxtv 30 over 1 year ago Simple Python tool to help with module development - extract vars from to generate and make module usage stub from
serverless.tf - Doing serverless with Terraform serverless.tf is an opinionated open-source framework for developing, building, deploying, and securing serverless applications and infrastructures on AWS using Terraform.
Shisho 371 over 1 year ago Lightweight static analyzer for Terraform
stacks 160 2 months ago Stacks, the Terraform code pre-processor
Styra Declarative Authorization Service (DAS) Provides a managed platform for Application and Infrastructure use cases, including Terraform, Terraform Cloud, and Kubernetes. Enforce policy guardrails during development, in CI/CD pipelines, and at deploy time. Styra DAS Free provides multiple systems and users, policy impact analysis, decision logging and replay, and access to Styra's Terraform policy library
tads-boilerplate 756 about 2 years ago The power of Ansible and Terraform + the simplicity of Docker Swarm = Infrastructure as Code and DevOps best practices
tau 74 about 1 year ago Tau is a thin wrapper on top of terraform to manage multiple deployments, dependencies, and secrets
terraboard 1,928 4 months ago Web dashboard to inspect Terraform States
terraboot 38 over 6 years ago DSL to generate a terraform configuration and run it
terracognita 2,194 7 months ago Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration
terracost 294 16 days ago Cloud cost estimation for Terraform in your CLI
terracove Recursively test a directory tree for Terraform diffs and coverage
TerraDepot 66 almost 5 years ago Terraform state repository, based on the default http remote backend. Allows the central administration of tfstates on AWS S3
terradozer 163 over 1 year ago Terraform destroy without configuration files
terraeasy 33 about 1 year ago Easy Terraform wrapper
terraform-aws-clickops-notifier 250 14 days ago Get notified when actions are taken in the AWS Console
terraform-bundle 42,772 4 days ago Easily builds bundles containing a Terraform binary as well as provider binaries. Useful for CI and air-gapped Terraform Enterprise
terraform-cdk 4,883 10 days ago CDK (Cloud Development Kit) for Terraform allows developers to use familiar programming languages to define cloud infrastructure and provision it through HashiCorp Terraform
terraform-cleaner 168 over 1 year ago Tiny utility which detects unused variables in your terraform modules
terraform-credentials-vault 5 over 1 year ago A Terraform "credentials helper" plugin that allows providing credentials for Terraform-native services (private module registries, Terraform Cloud, etc) via environment variables
terraform-diff 66 over 1 year ago Always know where you need to run Terraform plan & apply!
terraform-docs 4,276 6 days ago Quick utility to generate docs from terraform modules
terraform-graph-beautifier 362 7 months ago Command line tool allowing to convert the barely usable output of the terraform graph command to something more meaningful and explanatory
terraform-iam-policy-validator 298 4 months ago CLI validates AWS IAM Policies in a Terraform template against AWS IAM best practices
terraform-landscape 1,586 8 months ago Improve Terraform's plan output to be easier to read and understand
terraform-operator 365 4 months ago A Kubernetes CRD to handle Terraform operations
terraform-plan-parser 149 over 1 year ago Command line utility and JavaScript API for parsing stdout from and converting it to JSON
terraform-provisioner 13 over 7 years ago Tool for managing multiple provisions of the same Terraform scripts
terraform-rake-tasks 4 over 7 years ago Shared Rake tasks for managing terraform plans
terraform-repl 123 12 months ago A terraform console wrapper for a better interactive console experience
Terraform-Visual 622 about 1 year ago A simple but powerful tool to visualize Terraform plan
terraform.py 451 almost 6 years ago Ansible dynamic inventory script for parsing Terraform state files
terraformer 12,649 17 days ago CLI tool to generate terraform files from existing infrastructure. Infrastructure to Code. Supported many providers
terraforming 4,294 almost 3 years ago Export existing AWS resources to Terraform style (tf, tfstate). Similar to
terraformize 153 about 1 year ago Apply\Destroy Terraform modules via a simple REST API endpoint
terraformsh 66 8 months ago A wrapper in Bash for easier CLI UX and DRY hierarchical configs
terragrunt-atlantis-config 633 16 days ago Generate Atlantis config for Terragrunt projects
terragrunt 8,087 6 days ago Terragrunt is a thin wrapper for Terraform that provides extra tools for keeping your Terraform configurations DRY, working with multiple Terraform modules, and managing remote state
tenv 732 6 days ago OpenTofu/Terraform/Terragrunt version manager
Terrahaxs A GitOps Terraform CI/CD GitHub Application
terrahelp 379 over 1 year ago Command line utility aimed at providing supplementary functionality which can sometimes prove useful when working with Terraform
terrahub 224 over 2 years ago TerraHub is terraform automation and orchestration tool. Seamlessly integrated into console.terrahub.io, enterprise friendly GUI to show realtime terraform executions, as well as auditing and reporting capabilities for historical terraform runs
terramagic 46 4 months ago Wizard tool for create folders and terraform files automated, written in Python !
terramate 3,275 3 days ago Tool for managing multiple Terraform stacks that comes with support for change detection and code generation
terrap-cli 66 12 months ago Terrap - a powerful CLI tool that scans your infrastructure and identifies any required changes
terrars 95 4 months ago Terrars is a tool for building Terraform stacks in Rust. This is an alternative to the CDK
terrascan 4,766 9 days ago Collection of security and best practice test for static code analysis of terraform templates
terrascope 30 6 days ago Build orchestrator for terraform monorepos
terrashine Terrashine is a terraform provider mirror1 implementation that works by automatically caching dependencies as providers are requested
terraspace The Terraform Framework
terrastate 76 almost 3 years ago Visual Studio Code extension to monitor/deploy/destroy Terraform resources in your workspace
terratag 945 24 days ago Terratag is a CLI tool that enables users of Terraform to automatically create and maintain tags across their entire set of AWS, Azure, and GCP resources
tf-init-booster 7 about 1 year ago A Pre-terraform routine that speedups terraform modules download for bulky blueprints
tf-profile 156 29 days ago Profiler for Terraform runs. Generate global stats, resource-level stats or visualizations
tf-summarize 533 28 days ago A command-line utility to print the summary of the terraform plan
tfaction 276 3 days ago GitHub Actions collection for Opinionated Terraform Workflow
tfautomv 704 22 days ago Generate Terraform blocks automatically for painless refactoring
tfcmt 417 3 days ago CLI to notify the result of plan and apply as Pull Request comment
tfedit 99 3 months ago A refactoring tool for Terraform
tfenv 4,554 4 months ago Terraform version manager inspired by rbenv
tfgen 81 4 months ago Terraform code generator for consistent codebase and DRY
tfgpt 72 over 1 year ago A CLI tool that integrates Terraform with OpenAI's GPT-3.5 Turbo to provide explanations for Terraform commands and concepts
tfjson 180 about 5 years ago Utility to read in a Terraform plan file and dump it out in JSON
tflint 4,969 3 days ago Terraform linter for detecting errors that can not be detected by
tfmake 17 8 days ago Automating Terraform with the power of make
tfmask 202 11 months ago Terraform utility to mask select output from and
tfmigrate 1,140 10 days ago A Terraform state migration tool for GitOps
tfmigrator 36 3 days ago Go library and CLI to migrate Terraform Configuration and State
tfprovidercheck 76 3 days ago CLI to prevent malicious Terraform Providers from being executed
tfproviderlint 136 24 days ago Terraform Provider Lint Tool
tfrepl 30 over 1 year ago A Terraform REPL, giving you a full shell experience. Readline based. No dependencies. Save config changes. History
tfreveal 32 17 days ago A Terraform utility to show Terraform plans with all the secret (sensitive) values revealed
tfscaffold 254 3 months ago Framework for controlling multi-environment multi-component terraform-managed AWS infrastructure
tfschema 295 3 months ago Schema inspector for Terraform providers
tfsec 6,718 about 2 months ago Terraform static analysis tool that supports terraform <0.12 & >=0.12 & directly integrates with HCL parser for better results
tfsort 140 3 months ago CLI utility to sort Terraform variables and outputs
tftarget 248 about 1 year ago CLI Tool to do interactively
tftree 149 22 days ago Display your Terraform module call stack in your terminal
tftui 1,026 4 months ago A textual user interface for Terraform state
tfupdate 566 4 months ago Update version constraints in your Terraform configurations
tfvar 208 2 months ago tfvar scans your Terraform configurations or modules and extracts the variables into formats of your choice (tfvar, environment variables, etc.) for editing
tfvaultenv 47 10 months ago tfvaultenv reads secrets from HashiCorp Vault and outputs environment variables for various Terraform providers with those secrets
tfwrapper 8 almost 4 years ago Rubygem providing rake tasks for running Hashicorp Terraform sanely
tgf 102 6 days ago Terragrunt frontend for executing Terragrunt/Terraform through Docker
tofuenv 170 about 1 month ago OpenTofu version manager inspired by tfenv
tpm 79 9 months ago A package manager for Terraform providers
travelgrunt 67 25 days ago cd inside [mono]repos without fatigue!
validIaC 224 2 months ago ValidIaC combines the best open-source tools to help ensure Terraform best practices, hygiene & security
xterrafile 66 over 3 years ago Systematically manage external modules from the module registry, git, or local directories for use in Terraform (written in Go)
yor 829 10 days ago Automatically tag and trace infrastructure as code frameworks (Terraform, Cloudformation, and Serverless)
Speakeasy Generate a terraform provider from an OpenAPI specification

Awesome Terraform / Tools / CI

setup-terraform 1,381 6 days ago Sets up Terraform CLI in your GitHub Actions workflow
terraform-plan 60 7 days ago GitHub Action to run Terraform plan and add a comment with the changes

Awesome Terraform / Tools / IDE

vscode-terraform-live-graph 237 over 1 year ago Terraform Live Graph Extension for Visual Studio Code is a plugin that allows you to generate a live Terraform graph as you code

Awesome Terraform / Libraries

nu_plugin_hcl 6 3 months ago HCL parser plugin for
pyhcl 336 3 months ago HCL parser in Python
python-hcl2 255 about 1 month ago HCL2 parser in Python
rhcl 15 about 10 years ago Pure Ruby HCL parser

Awesome Terraform / Boilerplates

Terraform Generator 265 7 months ago Scaffolding for a new terraform module or project with support of test frameworks (terratest and kitchen-terraform)
Terraform GitOps Framework Everything you need to build reliable automation for AKS, EKS, and GKE Kubernetes clusters in one free and open-source framework

Awesome Terraform / Self-hosted Terraform Platforms

Lynx 270 7 days ago Fast, Secure and Reliable Terraform Backend. It has a user-friendly dashboard, project and environment management, state versioning, locking and snapshots support
OTF 497 7 days ago Open Terraforming Framework, an open source alternative to Terraform Enterprise with full Terraform CLI integration
Terrakube Open Source alternative to Terraform Enterprise with private registry, remote state, custom flows, scheduled workspaces, and visual states
Digger Open Source Alternative to Terraform Cloud - Run Terraform plan & apply jobs in your CI
cloud-concierge 224 3 months ago Open Source, codify unmanaged resources as Terraform, detect drift, and cloud cost and security analysis, delivered as a Pull Request
Stack-Lifecycle-Deployment 235 5 months ago OpenSource solution that defines and manages the complete lifecycle of resources used and provisioned into a cloud
Burrito 342 1 day ago TACoS Kubernetes Operator - "ArgoCD for Terraform"

Awesome Terraform / Managed Terraform Platforms

ControlMonkey Alternative to Terraform Cloud with Terraform/OpenTofu code generation, cloud inventory and IaC coverage. Includes out-of-the-box policies, drift remediation, and a ClickOps activity scanner
Firefly Alternative to Terraform Cloud by leveraging your CI tool. Firefly platform also scans your cloud to asses the IaC coverage & drift detection
Scalr Alternative to Terraform Enterprise with OPA integration, organizational structure, custom hooks, native integrations with other DevOps platforms, and centralized reporting
env0 Alternative to Terraform Cloud/Enterprise with OPA integration, custom flows and Terragrunt support
Brainboard Visually Design, Deploy & Manage modern cloud infrastructures starting from any Cloud Provider - AWS, GCP, Azure
Spacelift Alternative to Terraform Cloud/Enterprise. Collaborative Infrastructure Delivery Platform for Terraform
Terrateam Terraform GitOps with cost estimation, static analysis, access controls, drift detection, and custom workflows

Awesome Terraform / Terraform Enterprise Tooling

terraform-enterprise-cli 12 over 6 years ago Terraform Enterprise Command Line Interface
terraform-enterprise-client 8 over 6 years ago Terraform Enterprise API Ruby Client and Command Line tool
terraform-enterprise-migrator 13 13 days ago Script for migrating Terraform Enterprise environments from Legacy to new version of Terraform Enterprise
tfe-state-explorer 18 about 5 years ago Simple shell for exploring remote terraform enterprise state, with autocomplete

Awesome Terraform / Videos

Your Weekly Dose of Terraform YouTube channel with weekly live streams covering Terraform news, reviews, interviews, Q&A, live coding, and some hacking with Terraform
Terraform explained in 15 mins Terraform explained in 15 mins
Terraform Course Automate your AWS cloud infrastructure
How to Build Reusable, Composable, Battle tested Terraform Modules Yevgeniy Brikman talks about how to write Terraform code so that it is reusable, composable and testable. The presentation focuses on Terraform modules but also provides a brief and clear explanation of what problem Terraform was created to solve and a short demo of Terraform basics (~39 min, October 2017)
Building Scalable, Repeatable Infrastructure in the Cloud with Terraform Demonstrates how Terraform enables the practice of Infrastructure as Code by deploying TeamCity in AWS using a hosted PostgreSQL
Creating a Google Compute Instance with Terraform Example of creating a Google Compute Instance with Terraform code
Creating a Terraform Provider for Just About Anything Learn how to contribute to a Terraform provider or create your own from this walkthrough
Evolving Your Infrastructure with Terraform CTO of OpenCredo provides an extensive look at using Terraform in the real-world with the help of some interesting use-cases
Going Multi-Cloud with Terraform and Nomad
How to Extend the Terraform Provider List In this talk, Paul will walk through the creation of a terraform provider
Orchestrating Containers with Terraform and Consul Mitchell Hashimoto shows how Terraform can be used to deploy and scale containerized workloads
Production ChaosMonkey with Terraform How DigitalOcean uses Terraform to run production integration tests
Running a Terraform Environment at Scale Running Terraform at scale with hundreds of AWS accounts
Setup Continuous Integration for a Terraform module Example of using CI with Kitchen-Terraform to test, tag and publish our Terraform module, which creates a Google Compute Instance
State of Terraform Providerland How Terraform providers work and how to write one
Terraform At Scale How Segment uses Terraform
Terraform w/ Lee Trout Focuses on development patterns and how to effectively structure Terraform code
Terraforming the Composable World Integrating Terraform with an on-premise bare metal provisioning
Test and verify a Google Compute Instance with Kitchen-Terraform Example of using Kitchen-Terraform to test our Terraform code that creates a Google Compute
Untangling Terraform Through Refactoring How to refactor your Terraform code in a careful way with minimum risk
Complete Terraform Course - From BEGINNER to PRO! (Learn Infrastructure as Code) Complete course from beginner to pro, with no cloud provider focus, with a general approach

Awesome Terraform / Editor Plugins

Emacs terraform-mode 221 4 months ago
Intellij
Terraform-ls 995 6 days ago (Terraform Language Server)
Terraform-lsp 579 over 1 year ago (Language Server Protocol for Terraform)
Vim-Terraform 1,077 7 months ago
Vim-Terraform-Completion 337 over 2 years ago
VS Code

Backlinks from these awesome lists:

More related projects: