Track Awesome Terraform Updates Weekly
Curated list of resources on HashiCorp's Terraform and OpenTofu
🏠 Home · 🔍 Search · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 shuaibiyy/awesome-terraform · ⭐ 5.1K · 🏷️ Back-End Development
Apr 01 - Apr 07, 2024
Tools / Community providers
- tenv (⭐191) - OpenTofu/Terraform/Terragrunt version manager.
Self-hosted Terraform Platforms / IDE
- Lynx (⭐96) - Fast, Secure and Reliable Terraform Backend. It has a user-friendly dashboard, project and environment management, state versioning, locking and snapshots support.
Mar 25 - Mar 31, 2024
Tools / Community providers
- cf-terraforming (⭐831) A command line utility to facilitate terraforming your existing Cloudflare resources.
Mar 18 - Mar 24, 2024
Providers / Vendor supported providers
- terraform-provider-coder (⭐21) - Provider for Coder
Tools / Community providers
- asdf (⭐220) - HashiCorp plugin for the asdf (⭐20k) version manager
Mar 04 - Mar 10, 2024
Books
Tutorials and Blog Posts / Miscellaneous
- Sharing data between Terraform configurations - Illustrates how to use remote state to share data between Terraform configurations.
Jan 29 - Feb 04, 2024
Books
Jan 22 - Jan 28, 2024
Managed Registries / Miscellaneous
- cloudsmith - Managed package hoster for internal and external clients. 💲
Jan 08 - Jan 14, 2024
Official Resources
Community
- weekly.tf - Terraform Weekly Newsletter - Various news in the Terraform world (projects, announcements, discussions).
Books
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.
Tutorials and Blog Posts / Writing Custom Providers
- Creating custom terraform providers - Guide for creating custom providers.
- Writing Custom Providers - Official documentation for creating custom providers.
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
- Terraforming 1Password - How 1Password migrated from CloudFormation to 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.
Community Modules / Miscellaneous
- terraform-aws-account-lookup (⭐2) - 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-appconfig (⭐25) - Creates AWS AppConfig resources on AWS.
- terraform-aws-datadog-forwarders (⭐51) - Creates resources on AWS to forward logs/metrics to Datadog.
- terraform-aws-dms (⭐57) - Creates AWS DMS (Database Migration Service) resources on AWS.
- terraform-aws-jenkins (⭐253) - Build a Docker image with Jenkins, saves it to an ECR repo, and deploys it to Elastic Beanstalk running a Docker stack.
- terraform-aws-managed-service-prometheus (⭐25) - Creates AWS Managed Service for Prometheus (AMP) resources on AWS.
- terraform-aws-msk-kafka-cluster (⭐45) - Creates AWS MSK (Managed Streaming for Kafka) resources on AWS.
- terraform-aws-rds-proxy (⭐52) - Creates AWS RDS Proxy resources on AWS.
- terraform-digitalocean-droplet - Terraform module for managing DigitalOcean Droplets and related resources.
- terraform-linode-k8s - Installs Kubernetes on Linode Instances.
Self-Hosted Registries / Miscellaneous
- boring-registry (⭐147) - Private Terraform Module/Provider Registry with API key authentication and blob storage support
Providers / Vendor supported providers
- terraform-provider-dominos (⭐1.1k) - Provider for Dominos Pizza.
- terraform-provider-snowflake (⭐485) - Provider for Snowflake data warehouse.
Tools / Community providers
- 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.
- layerform (⭐1.2k) - Layerform helps engineers create reusable environment stacks using plain .tf files. Ideal for multiple "staging" environments. 💀
- terraform-bundle (⭐41k) - Easily builds bundles containing a Terraform binary as well as provider binaries. Useful for CI and air-gapped Terraform Enterprise.
- terraform-operator (⭐343) - A Kubernetes CRD to handle Terraform operations.
- terraform.py (⭐449) - Ansible dynamic inventory script for parsing Terraform state files. 💀
- terrahub (⭐223) - 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. 💲
- terramate (⭐3k) - Tool for managing multiple Terraform stacks that comes with support for change detection and code generation
- terrascan (⭐4.4k) - Collection of security and best practice test for static code analysis of terraform templates
- tfautomv (⭐645) - Generate Terraform
moved
blocks automatically for painless refactoring
- tfmask (⭐199) - Terraform utility to mask select output from
terraform plan
andterraform apply
- tgf (⭐96) - Terragrunt frontend for executing Terragrunt/Terraform through Docker.
Managed Terraform Platforms 💲 / IDE
- 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 💲
Terraform Enterprise Tooling / IDE
- terraform-enterprise-migrator (⭐13) - Script for migrating Terraform Enterprise environments from Legacy to new version of Terraform Enterprise.
- tfe-state-explorer (⭐18) - Simple shell for exploring remote terraform enterprise state, with autocomplete. 💀
Videos / IDE
- Orchestrating Containers with Terraform and Consul - Mitchell Hashimoto shows how Terraform can be used to deploy and scale containerized workloads.
Editor Plugins / IDE
Jan 01 - Jan 07, 2024
Books
Tools / Community providers
- tofuenv (⭐130) - OpenTofu version manager inspired by tfenv
Dec 04 - Dec 10, 2023
Providers / Vendor supported providers
- terraform-provider-elasticstack (⭐148) - Provider for Elasticsearch and Kibana.
Self-hosted Terraform Platforms / IDE
- Stack-Lifecycle-Deployment (⭐215) - OpenSource solution that defines and manages the complete lifecycle of resources used and provisioned into a cloud.
Nov 06 - Nov 12, 2023
Tools / Community providers
- tfprovidercheck (⭐31) - CLI to prevent malicious Terraform Providers from being executed
Oct 16 - Oct 22, 2023
Tutorials and Blog Posts / Beginner Guides
- Building a SaaS API? Don't Forget Your Terraform Provider - Why you should write a terraform provider
Tutorials and Blog Posts / Writing Custom Providers
- Terraform Provider Code generation - Guide to generating a terraform provider from an OpenAPI specification (Vendor Supported)
Tutorials and Blog Posts / How-To
- How To Wrap Your Terraform Provider for Pulumi - Making your terraform provider pulumi-ready
Tools / Community providers
- Speakeasy - Generate a terraform provider from an OpenAPI specification.
Aug 28 - Sep 03, 2023
Self-Hosted Registries / Miscellaneous
- nrkno/terraform-registry (⭐75) - A private Terraform registry with modular store backends.
- petra (⭐35) - Private Terraform Registry Manager
- philips-labs/terraform-registry (⭐70) - Terraform registry to serve arbitrary Terraform provider releases hosted on Github
Providers / Community providers
- terraform-provider-docker (⭐526) - Terraform Docker provider.
- terraform-provider-value (⭐14) - Value Provider for Terraform.
Tools / Community providers
- balcony - CLI tool for easy AWS API reads. Also generates Terraform import-blocks, and actual Terraform Resource code.
- burrito - Burrito is a TACoS (Terraform Automation Collaboration Software) Kubernetes Operator.
- cfnctl (⭐129) - Cfnctl brings the Terraform cli experience to AWS Cloudformation.
- coretech/terrafile (⭐140) - Systematically manage external modules from Github for use in Terraform (written in Go). 💀
- dxw/terrafile (⭐2) - Systematically manage external modules from Github for use in Terraform (written in Ruby).
- hatchet - An all-in-one Terraform management tool.
- pytest-terraform (⭐51) - pytest terraform plugin with fixtures and offline replay support.
- renovate-config (⭐38) - Sharable Config Presets for Renovatebot, especially useful for DevOps folks.
- stacks (⭐139) - Stacks, the Terraform code pre-processor
- terracove - Recursively test a directory tree for Terraform diffs and coverage.
- terraeasy (⭐33) - Easy Terraform wrapper
- terraform-cleaner (⭐159) - Tiny utility which detects unused variables in your terraform modules.
- terramagic (⭐44) - Wizard tool for create folders and terraform files automated, written in Python !
- terrap-cli (⭐65) - Terrap - a powerful CLI tool that scans your infrastructure and identifies any required changes.
- terrars (⭐80) - Terrars is a tool for building Terraform stacks in Rust. This is an alternative to the CDK.
- terrascope (⭐27) - Build orchestrator for terraform monorepos.
- terrashine - Terrashine is a terraform provider mirror1 implementation that works by automatically caching dependencies as providers are requested.
- tfgen (⭐75) - Terraform code generator for consistent codebase and DRY.
- tfrepl (⭐27) - A Terraform REPL, giving you a full shell experience. Readline based. No dependencies. Save config changes. History.
- tfsort (⭐120) - CLI utility to sort Terraform variables and outputs.
- travelgrunt (⭐63) - cd inside [mono]repos without fatigue!
Tools / CI
- setup-terraform (⭐1.2k) - Sets up Terraform CLI in your GitHub Actions workflow.
- terraform-plan (⭐55) - GitHub Action to run Terraform plan and add a comment with the changes.
Tools / IDE
- vscode-terraform-live-graph (⭐231) - Terraform Live Graph Extension for Visual Studio Code is a plugin that allows you to generate a live Terraform graph as you code.
Jul 31 - Aug 06, 2023
Community Modules / Miscellaneous
- terraform-kubestack (⭐615) - 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-nixos (⭐305) - A set of Terraform modules that are designed to deploy NixOS.
- typhoon (⭐1.9k) - Minimal and free Kubernetes distribution with Terraform.
Tools / Community providers
- terraform-aws-clickops-notifier (⭐192) - Get notified when actions are taken in the AWS Console.
Jul 24 - Jul 30, 2023
Tools / Community providers
- tfmake (⭐13) - Automating Terraform with the power of make.
- tftui (⭐866) - A textual user interface for Terraform state.
Jul 17 - Jul 23, 2023
Tools / Community providers
- terragrunt-atlantis-config (⭐552) - Generate Atlantis config for Terragrunt projects.
Self-hosted Terraform Platforms / IDE
- cloud-concierge (⭐168) - Open Source, codify unmanaged resources as Terraform, detect drift, and cloud cost and security analysis, delivered as a Pull Request.
Jul 03 - Jul 09, 2023
Tools / Community providers
- tfgpt (⭐71) - A CLI tool that integrates Terraform with OpenAI's GPT-3.5 Turbo to provide explanations for Terraform commands and concepts.
- tfvar (⭐197) - tfvar scans your Terraform configurations or modules and extracts the variables into formats of your choice (tfvar, environment variables, etc.) for editing.
Jun 19 - Jun 25, 2023
Self-hosted Terraform Platforms / IDE
- Terrakube - Open Source alternative to Terraform Enterprise with private registry, remote state, custom flows, scheduled workspaces, and visual states.
Jun 12 - Jun 18, 2023
Self-Hosted Registries / Miscellaneous
- Terrareg (⭐231) - Terraform module registry.
Providers / Vendor supported providers
- terraform-provider-artifactory (⭐266) - Provider for JFrog Artifactory.
Libraries / IDE
- nu_plugin_hcl (⭐2) - HCL parser plugin for Nushell (⭐30k)
May 22 - May 28, 2023
Tools / Community providers
- tf-profile (⭐143) - Profiler for Terraform runs. Generate global stats, resource-level stats or visualizations.
May 15 - May 21, 2023
Tools / Community providers
- fuzzy-terraform-rm (⭐37) - A fuzzy-finder command-line tool for removing resources from terraform state.
May 01 - May 07, 2023
Tools / Community providers
- tpm (⭐78) - A package manager for Terraform providers.
Apr 17 - Apr 23, 2023
Tools / Community providers
- terraform-repl (⭐88) - A terraform console wrapper for a better interactive console experience.
Apr 10 - Apr 16, 2023
Community Modules / Miscellaneous
- terraform-gce-atlantis (⭐28) - Creates Terraform configurations for running Atlantis on Google Compute Engine.
Mar 27 - Apr 02, 2023
Tools / Community providers
- terraformsh (⭐61) - A wrapper in Bash for easier CLI UX and DRY hierarchical configs
- tftarget (⭐218) - CLI Tool to do
terraform xxx -target={...}
interactively.
Mar 20 - Mar 26, 2023
Tutorials and Blog Posts / Beginner Guides
- Terraform Security Guide - Blog post describing security best practices when working with Terraform
Mar 06 - Mar 12, 2023
Providers / Vendor supported providers
- terraform-provider-azapi (⭐153) - Provider for Azure Resource Manager Rest API
- terraform-provider-azuredevops (⭐359) - Provider for Azure DevOps (VSTS).
Providers / Community providers
- terraform-provider-terracurl (⭐121) - Provider to make managed and unmanaged API calls to your target endpoint.
Tools / Community providers
- aztfexport (⭐1.5k) - A tool to bring existing Azure resources under Terraform's management.
Self-hosted Terraform Platforms / IDE
- Digger - Open Source Alternative to Terraform Cloud - Run Terraform plan & apply jobs in your CI.
Feb 13 - Feb 19, 2023
Self-Hosted Registries / Miscellaneous
- tapir (⭐146) - Private Terraform Registry.
Tools / Community providers
- Terrahaxs - A GitOps Terraform CI/CD GitHub Application 💲
Jan 02 - Jan 08, 2023
Managed Terraform Platforms 💲 / IDE
- Terrateam - Terraform GitOps with cost estimation, static analysis, access controls, drift detection, and custom workflows. 💲
Dec 12 - Dec 18, 2022
Tools / Community providers
- AIaC (⭐3.3k) - Artificial Intelligence Infrastructure-as-Code Generator
Nov 21 - Nov 27, 2022
Tutorials and Blog Posts / How-To
- Infracost + Terraform + GitHub Actions = Automate Cloud Cost Management - How to use Infracost as the guardrail to manage cloud cost during Terraform development.
Tools / Community providers
- terraform-iam-policy-validator (⭐231) - CLI validates AWS IAM Policies in a Terraform template against AWS IAM best practices.
- tfproviderlint (⭐131) - Terraform Provider Lint Tool.
- tftree (⭐139) - Display your Terraform module call stack in your terminal.
Nov 14 - Nov 20, 2022
Self-hosted Terraform Platforms / IDE
- OTF (⭐478) - Open Terraforming Framework, an open source alternative to Terraform Enterprise with full Terraform CLI integration. 💀
Nov 07 - Nov 13, 2022
Tools / Community providers
- sato (⭐74) - Sato helps you convert your legacy Cloudformation into Terraform.
- terraform-diff (⭐64) - Always know where you need to run Terraform plan & apply!
Oct 17 - Oct 23, 2022
Tools / Community providers
- Coder - Coder provisions software development environments on your infrastructure via Terraform.
Oct 03 - Oct 09, 2022
Books
Sep 26 - Oct 02, 2022
Providers / Vendor supported providers
Sep 19 - Sep 25, 2022
Tools / Community providers
- pluralith - Terraform state visualization and automated generation of infrastructure documentation. 💲
- tf-init-booster (⭐7) - A Pre-terraform routine that speedups terraform modules download for bulky blueprints.
- tf-summarize (⭐466) - A command-line utility to print the summary of the terraform plan
Managed Terraform Platforms 💲 / IDE
- Brainboard - Visually Design, Deploy & Manage modern cloud infrastructures starting from any Cloud Provider - AWS, GCP, Azure 💲
Aug 29 - Sep 04, 2022
Tools / Community providers
- aws2tf (⭐480) - automates the importing of existing AWS resources into Terraform and outputs the Terraform HCL code.
- pike (⭐469) - Pike calculates the permissions or IAM policy required to build your Terraform.
Aug 22 - Aug 28, 2022
Providers / Vendor supported providers
- terraform-provider-iterative (⭐286) - Terraform plugin built with machine learning in mind.
Aug 15 - Aug 21, 2022
Providers / Vendor supported providers
- terraform-provider-sigsci (⭐26) - Provider for Signal Sciences.
Aug 08 - Aug 14, 2022
Providers / Vendor supported providers
- terraform-provider-confluent (⭐106) - Provider for Confluent.
Jul 25 - Jul 31, 2022
Tools / Community providers
- Styra Declarative Authorization Service (DAS) - Provides a managed Open Policy Agent (OPA) 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.
Jun 20 - Jun 26, 2022
Community
- Language-specific communities:
Tutorials and Blog Posts / Writing Custom Providers
- Writing a Terraform provider - Guide for creating custom providers.
Tools / Community providers
- tfedit (⭐92) - A refactoring tool for Terraform.
Managed Terraform Platforms 💲 / IDE
- Spacelift - Alternative to Terraform Cloud/Enterprise. Collaborative Infrastructure Delivery Platform for Terraform 💲
Editor Plugins / IDE
- Terraform-ls (⭐945) (Terraform Language Server)
May 16 - May 22, 2022
Providers / Hashicorp supported providers
- terraform-provider-aws (⭐9.4k) - Provider for Amazon Web Services.
- terraform-provider-azurerm (⭐4.4k) - Provider for Azure.
- terraform-provider-docker (⭐131) - Provider for Docker. 💀
- terraform-provider-google (⭐2.2k) - Provider for Google Cloud Platform.
- terraform-provider-helm (⭐974) - Provider for Helm.
- terraform-provider-kubernetes (⭐1.5k) - Provider for Kubernetes.
- terraform-provider-vsphere (⭐598) - Provider for VMware vSphere.
Providers / Vendor supported providers
- terraform-provider-alicloud (⭐571) - Provider for Alibaba Cloud.
- terraform-provider-atlas (⭐51) - Provider for Atlas.
- terraform-provider-buildkite (⭐53) - Provider for Buildkite.
- terraform-provider-datadog (⭐379) - Provider for Datadog.
- terraform-provider-digitalocean (⭐466) - Provider for DigitalOcean.
- terraform-provider-env0 (⭐36) - Provider for env0
- terraform-provider-github - Provider for GitHub.
- terraform-provider-gitlab (⭐384) - Provider for GitLab.
- terraform-provider-graphql (⭐51) - Provider for GraphQL queries and mutations.
- terraform-provider-hcloud (⭐454) - Provider for Hetzner Cloud.
- terraform-provider-heroku (⭐95) - Provider for Heroku.
- terraform-provider-ibm (⭐330) - Provider for IBM Cloud.
- terraform-provider-linode (⭐71) - Provider for Linode.
- terraform-provider-scalr (⭐18) - Provider for Scalr
- terraform-provider-spinnaker (⭐143) - Provider for Spinnaker.
- terraform-provider-spotinst (⭐61) - Provider for spotinst.
Apr 25 - May 01, 2022
Tools / Community providers
- terraform-docs (⭐4k) - Quick utility to generate docs from terraform modules.
- tfaction (⭐235) - GitHub Actions collection for Opinionated Terraform Workflow
- tflint (⭐4.6k) - Terraform linter for detecting errors that can not be detected by
terraform plan
- tfsec (⭐6.5k) - Terraform static analysis tool that supports terraform <0.12 & >=0.12 & directly integrates with HCL parser for better results.
- validIaC (⭐217) - ValidIaC combines the best open-source tools to help ensure Terraform best practices, hygiene & security.
Apr 18 - Apr 24, 2022
Tutorials and Blog Posts / How-To
- 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.
Mar 14 - Mar 20, 2022
Official Resources
Tutorials and Blog Posts / How-To
- Deploying Discourse with Terraform - Shows how Terraform can create a running instance of Discourse on DigitalOcean in one command.
- Terraform for a Highly Available VPN between AWS and Azure - Terraform code to deploy a highly available VPN between AWS and Azure.
Tutorials and Blog Posts / Azure
- Learning HashiCorp Terraform - Guide for Azure.
Testing / Community providers
- terraform-compliance (⭐1.3k) - BDD Testing for Terraform Files.
Mar 07 - Mar 13, 2022
Tools / Community providers
- atmos (⭐544) - A universal tool that converts deep merged YAML to module inputs. 👽
Feb 21 - Feb 27, 2022
Videos / IDE
- 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
Feb 14 - Feb 20, 2022
Tutorials and Blog Posts / How-To
- Google Cloud Platform for 10$ a month using terraform (⭐40) - Shows how to use terraform to create a secure Google Kubernetes Cluster, Google Cloud Run Services and other infrastructure elements for less than 10$ a month.
Self-Hosted Registries / Miscellaneous
- terustry (⭐56) - Open Source terraform provider registry acting as a proxy for gitlab or github releases.
Providers / Vendor supported providers
- terraform-provider-openstack (⭐361) - Plugin for OpenStack.
Boilerplates / IDE
- Terraform GitOps Framework - Everything you need to build reliable automation for AKS, EKS, and GKE Kubernetes clusters in one free and open-source framework.
Jan 24 - Jan 30, 2022
Tutorials and Blog Posts / AWS
- Managing AWS Lambda Functions with Terraform - What is AWS Lambda used for and how to use Terraform to manage AWS Lambda functions?
Tutorials and Blog Posts / Miscellaneous
Jan 03 - Jan 09, 2022
Tools / Community providers
- hcldump (⭐8) - Dump the HCL (v2) abstract syntax tree.
- hclgrep (⭐86) - Syntax based grep for HCL(v2).
Dec 27 - Jan 02, 2021
Community Modules / Miscellaneous
- terraform-aws-alb (⭐414) - Creates Application load-balancer on AWS (verified module).
- terraform-aws-customer-gateway (⭐16) - Creates Customer Gateway on AWS.
- terraform-aws-dynamodb-table (⭐96) - Creates DynamoDB table on AWS.
- terraform-aws-ec2-instance (⭐719) - Creates EC2 instances on AWS.
- terraform-aws-ecs (⭐495) - Creates AWS ECS resources on AWS.
- terraform-aws-elb (⭐144) - Creates Elastic load-balancer on AWS (verified module).
- terraform-aws-eventbridge (⭐133) - Creates EventBridge resources on AWS.
- terraform-aws-lambda (⭐818) - Terraform module, which builds dependencies and packages, and also creates AWS Lambda resources in countless combinations.
- terraform-aws-notify-slack (⭐450) - Creates SNS topic and Lambda function, which sends notifications to Slack.
- terraform-aws-rds-aurora (⭐376) - Creates RDS Aurora cluster resources on AWS (verified module).
- terraform-aws-redshift (⭐76) - Creates Redshift resources on AWS.
- terraform-aws-route53 (⭐123) - Creates Route53 resources on AWS.
- terraform-aws-s3-bucket (⭐481) - Creates S3 bucket resources on AWS.
- terraform-aws-transit-gateway (⭐134) - Creates Transit Gateway resources on AWS.
- terraform-aws-vpn-gateway (⭐109) - Creates VPN gateway resources on AWS.
Tools / Community providers
- modules.tf-lambda (⭐345) - Infrastructure as code generator from visual diagrams created with Cloudcraft.co to Terraform.
- prettyplan (⭐155) - Prettyplan (available online here) is a small tool to help you view large Terraform plans with ease. 👻
Videos / IDE
- 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.
- 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.
Dec 13 - Dec 19, 2021
Community
Books
Tools / Community providers
- driftctl (⭐2.4k) - Detect, track, and alert on infrastructure drift 💀
- terraform-credentials-vault (⭐5) - A Terraform "credentials helper" plugin that allows providing credentials for Terraform-native services (private module registries, Terraform Cloud, etc) via environment variables.
- terrastate (⭐75) - Visual Studio Code extension to monitor/deploy/destroy Terraform resources in your workspace
- tfvaultenv (⭐46) - tfvaultenv reads secrets from HashiCorp Vault and outputs environment variables for various Terraform providers with those secrets.
Nov 15 - Nov 21, 2021
Tools / Community providers
- inframap (⭐1.6k) - Read your tfstate or HCL to generate a graph specific for each provider, showing only the resources that are most important/relevant.
- terracognita (⭐2.1k) - Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration.
- terracost (⭐266) - Cloud cost estimation for Terraform in your CLI.
- terradozer (⭐161) - Terraform destroy without configuration files.
- tfcmt (⭐365) - CLI to notify the result of plan and apply as Pull Request comment.
Nov 08 - Nov 14, 2021
Tools / Community providers
- rover (⭐2.9k) - Interactive Terraform state and configuration explorer.
Nov 01 - Nov 07, 2021
Community
Oct 18 - Oct 24, 2021
Tools / Community providers
- tfmigrator (⭐35) - Go library and CLI to migrate Terraform Configuration and State
Sep 06 - Sep 12, 2021
Tools / Community providers
- Shisho (⭐367) - Lightweight static analyzer for Terraform.
Aug 16 - Aug 22, 2021
Tools / Community providers
- terraformize (⭐152) - Apply\Destroy Terraform modules via a simple REST API endpoint. 💀
Jul 19 - Jul 25, 2021
Providers / Vendor supported providers
- terraform-provider-ucloud (⭐66) - Provider to manage UCloud resources.
Jun 21 - Jun 27, 2021
Tools / Community providers
- gaia (⭐929) - Gaia is a Terraform 🌍 UI for your modules, and self-service infrastructure 👨💻. 💀
Jun 07 - Jun 13, 2021
Providers / Vendor supported providers
- terraform-provider-rancher2 (⭐244) - Provider for Rancher v2.
May 24 - May 30, 2021
Tools / Community providers
- yor (⭐771) - Automatically tag and trace infrastructure as code frameworks (Terraform, Cloudformation, and Serverless).
May 17 - May 23, 2021
Tutorials and Blog Posts / AWS
- AWS Lambda the Terraform Way (⭐1.2k) - Understand AWS Lambda in-depth, beyond executing functions, using Terraform. Also includes guides for integration with S3, API Gateway, DynamoDB, Kinesis, SQS.
Tools / Community providers
- terraform-cdk (⭐4.7k) - CDK (Cloud Development Kit) for Terraform allows developers to use familiar programming languages to define cloud infrastructure and provision it through HashiCorp Terraform.
Videos / IDE
- 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).
Apr 05 - Apr 11, 2021
Providers / Vendor supported providers
- terraform-provider-k8s (⭐135) - Simple Kubernetes Provider, works with any manifest.
Tools / Community providers
- Infracost (⭐10k) - Cloud cost estimates for Terraform in your CLI and pull requests.
- terraform-graph-beautifier (⭐328) - Command line tool allowing to convert the barely usable output of the terraform graph command to something more meaningful and explanatory.
Mar 15 - Mar 21, 2021
Tools / Community providers
- KICS (⭐1.9k) - 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.
Mar 01 - Mar 07, 2021
Tools / Community providers
- regula (⭐925) - Evaluates Terraform infrastructure-as-code for potential AWS, Azure, and Google Cloud security misconfigurations and compliance violations prior to deployment.
Feb 22 - Feb 28, 2021
Tutorials and Blog Posts / Beginner Guides
- Hello, world: The Fargate/Terraform tutorial I wish I had - Blog post describing setting up an ECS Fargate cluster from scratch
Feb 15 - Feb 21, 2021
Providers / Vendor supported providers
- terraform-provider-checkly (⭐44) - Manage Checkly resources for API & E2E monitoring.
Dec 14 - Dec 20, 2020
Legend
- Not compatible with terraform >= 0.12 👻
- Abandoned 💀
- Monetized 💲
Community
Testing / Community providers
- clarity (⭐135) - A declarative test framework for Terraform for unit testing.
Tools / Community providers
- astro (⭐429) - Astro is a tool for managing multiple Terraform executions as a single command. 👻
- blast radius (⭐2k) - Interactive visualizations of Terraform dependency graphs. 💀
- json2hcl (⭐484) - Convert JSON to HCL and vice versa. 👻
- para (⭐56) - The missing 3rd-party plugin manager and a "Swiss army knife" for Terraform/Terragrunt - just 1 tool to facilitate all workflows. 💀
- scenery (⭐368) - Another Terraform plan output prettifier. 👻 💀
- terraform-plan-parser (⭐144) - Command line utility and JavaScript API for parsing stdout from
terraform plan
and converting it to JSON. 👻
- tfjson (⭐182) - Utility to read in a Terraform plan file and dump it out in JSON. 💀
Nov 30 - Dec 06, 2020
Community
Tutorials and Blog Posts / How-To
- 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.
Tools / Community providers
- Checkov (⭐6.5k) - Terraform static analysis tool for terraform>=0.12
- TerraDepot (⭐65) Terraform state repository, based on the default http remote backend. Allows the central administration of tfstates on AWS S3.
- Terraform-Visual (⭐573) - A simple but powerful tool to visualize Terraform plan.
- terratag (⭐884) - 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.
Libraries / IDE
- python-hcl2 (⭐223) - HCL2 parser in Python
Sep 28 - Oct 04, 2020
Books
Community Modules / Miscellaneous
- terraform-aws-lambda-auto-package (⭐27) - A terraform module to define a lambda function which source files are automatically built and packaged for lambda deployment.
Tools / Community providers
- flora (⭐24) - Terraform version manager.
- 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. Read more (⭐676).
- terraspace - The Terraform Framework
Sep 21 - Sep 27, 2020
Tools / Community providers
- tfmigrate (⭐1k) - A Terraform state migration tool for GitOps.
Aug 24 - Aug 30, 2020
Tools / Community providers
- hcledit (⭐406) - A command line editor for HCL.
Aug 10 - Aug 16, 2020
Boilerplates / IDE
- Terraform Generator (⭐257) - Scaffolding for a new terraform module or project with support of test frameworks (terratest and kitchen-terraform)
Jul 27 - Aug 02, 2020
Tools / Community providers
- terraform-landscape (⭐1.5k) - (only 0.11 and earlier) Improve Terraform's plan output to be easier to read and understand.
Jul 20 - Jul 26, 2020
Community Modules / Miscellaneous
- terraform-cloudflare-maintenance (⭐124) - Module to create a Maintenance Page using Cloudflare Workers.
Tools / Community providers
- terraformer (⭐12k) - CLI tool to generate terraform files from existing infrastructure. Infrastructure to Code. Supported many providers.
Jul 13 - Jul 19, 2020
Community
Books
Tutorials and Blog Posts / Beginner Guides
- Using Terraform for Cloud Deployments - Part 1 - Provisioning an EC2 instance.
Tutorials and Blog Posts / How-To
- Easily Deploy A Seneca Microservice to ECS with Wercker and Terraform: Part I, II & III - Illustrates how Terraform can be incorporated into a microservice deployment pipeline.
- Zero Downtime Updates with HashiCorp Terraform - Ensuring zero downtime of your infrastructure.
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.
Tutorials and Blog Posts / Azure
- New Terraform Azure Automation Resources - Azure Automation.
- Terraforming Azure PaaS - Deploy PaaS Resources on Azure.
Tutorials and Blog Posts / Miscellaneous
- The Segment AWS Stack - Shows the behind the scenes of the infrastructure powered by Terraform that solved The Million Dollar Engineering Problem at Segment.
- 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 (⭐663) - Anonymized, secure, and free Terraform cost estimation based on Terraform plan (0.12+) or Terraform state (any version).
Community Modules / Miscellaneous
- rancher-terraform-digitalocean (⭐23) - Rancher server on digitalocean.
- segmentio/stack (⭐2.1k) - Configures production infrastructure with AWS, Docker, and ECS. 💀
- terraform-aws-atlantis (⭐502) - Creates Terraform configurations for running Atlantis on AWS Fargate. Github, Gitlab, and BitBucket are supported.
- terraform-aws-autoscaling (⭐280) - Creates Auto-Scaling Groups and Launch Configurations (verified module).
- terraform-aws-ecr (⭐171) - Manages Docker container registries on AWS ECR.
- terraform-aws-efs (⭐79) - Defines an EFS Filesystem.
- terraform-aws-eks (⭐4.1k) - Creates Elastic Kubernetes Service on AWS (very popular module).
- terraform-aws-jenkins-ha-agents (⭐8) - EC2 Based Jenkins deployment with HA (spot) agents. Runs on EFS for immutability. Fully customizable, with sensible defaults.
- terraform-aws-key-pair (⭐148) - Automatically Generate SSH Key Pairs (Public/Private Keys).
- terraform-aws-modules - Collection of Terraform AWS modules supported by the community (includes official AWS modules).
- terraform-aws-postgresql-rds (⭐85) - Creates PostgreSQL on RDS.
- terraform-aws-rds (⭐832) - Creates RDS resources on AWS (verified module).
- terraform-aws-secure-baseline (⭐1.1k) - Set up your AWS account with the secure baseline configuration based on CIS Amazon Web Services Foundations.
- terraform-aws-security-group (⭐544) - Creates EC2-VPC security groups on AWS (verified module).
- terraform-aws-ssh-bastion-service (⭐203) - Terraform plan to deploy ssh bastion as a stateless service on AWS.
- terraform-aws-vpc (⭐2.9k) - Creates VPC resources on AWS (verified and very popular module).
- terraform-azurerm-aks (⭐0) - Create AKS resources on Azure.
- terraform-azurerm-iis (⭐6) - Install IIS Server on Azure VM instance.
- terraform-azurerm-mysql (⭐2) - Create MySql Database on Azure.
- terraform-azurerm-redis (⭐1) - Create Redis on Azure.
- terraform-azurerm-sqlserver (⭐9) - Create SQl Server Database on Azure.
- terraform-ecs-jenkins (⭐105) - Provisions Jenkins on AWS ECS using Terraform.
- terraform-google-project-factory (⭐812) - Opinionated Google Cloud Platform project creation and configuration with Shared VPC, IAM, APIs, etc.
- terraform-static-website-s3-cloudfront (⭐38) - Creates static websites on AWS S3 & Cloudfront based on variables.
- tf_aws_bastion_s3_keys (⭐190) - Creates bastion hosts on AWS EC2.
Self-Hosted Registries / Miscellaneous
- anthology (⭐129) - Private Terraform registry implementation as an alternative to the official registry.
- citizen (⭐604) - Private Terraform Module/Provider Registry
- terraform-simple-registry (⭐64) - Simple implementation of the Terraform registry protocols.
Providers / Vendor supported providers
- terraform-provider-healthchecksio (⭐42) - Provider to manage healthchecks.io resources.
- terraform-provider-keycloak (⭐574) - Provider to manage the settings of your Keycloak identity provider server.
- terraform-provider-pingdom (⭐121) - Provider to manage Pingdom resources. 💀
- terraform-provider-secrethub (⭐49) - Provider for SecretHub. 💀
- terraform-provider-stripe (⭐240) - Provider for Stripe.
- terraform-provider-uptimerobot (⭐122) - Provider to manage uptimerobot resources.
- terraform-provider-vaulted (⭐37) - Encrypted HashiCorp Vault secrets via Terraform that can be stored in SCM such as Git.
Testing / Community providers
- kitchen-terraform (⭐1.1k) - 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 (⭐91) - RSpec tests for your Terraform modules.
- terraform_validate (⭐258) - Assists in the enforcement of user-defined standards in Terraform. 💀
- terratest (⭐7.3k) - Terratest is a Go library that makes it easier to write automated tests for your infrastructure code.
Tools / Community providers
- AirIAM (⭐750) - AirIAM is a tool for AWS IAM to least privilege Terraform execution framework.
- atlantis (⭐7.2k) - Unified workflow for collaborating on Terraform through GitHub.
- fogg (⭐285) - A tool for eliminating toil in managing terraform repositories.
- former2 (⭐2.1k) - Generate terraform configuration from your existing resources within your AWS account.
- iam-policy-json-to-terraform (⭐755) - Small tool to convert an IAM Policy in JSON format into a Terraform aws_iam_policy_document
- k2tf (⭐1.1k) - Kubernetes YAML to Terraform HCL converter.
- pre-commit-terraform (⭐3k) - pre-commit git hooks to take care of Terraform configurations (auto-format, validate, update docs).
- pretf (⭐102) - drop-in Terraform wrapper that generates Terraform configuration with Python. See pretf documentation 💀
- python-terrafile (⭐37) - Systematically manage external modules from Github for use in Terraform.
- ruby-terraform (⭐107) - Simple Ruby wrapper for invoking terraform commands.
- scratchrelaxtv (⭐28) - Simple Python tool to help with module development - extract vars from
main.tf
to generatevariables.tf
and make module usage stub fromvariables.tf
.
- tads-boilerplate (⭐721) - The power of Ansible and Terraform + the simplicity of Docker Swarm = Infrastructure as Code and DevOps best practices.
- tau (⭐75) - Tau is a thin wrapper on top of terraform to manage multiple deployments, dependencies, and secrets.
- terraboard (⭐1.9k) - Web dashboard to inspect Terraform States.
- terraboot (⭐37) - DSL to generate a terraform configuration and run it.
- terraform-provisioner (⭐13) - Tool for managing multiple provisions of the same Terraform scripts.
- terraform-rake-tasks (⭐4) - Shared Rake tasks for managing terraform plans.
- terraforming (⭐4.3k) - Export existing AWS resources to Terraform style (tf, tfstate). Similar to
terraformer
. 💀
- terragrunt (⭐7.6k) - 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.
- terrahelp (⭐377) - Command line utility aimed at providing supplementary functionality which can sometimes prove useful when working with Terraform.
- tfenv (⭐4.3k) - Terraform version manager inspired by rbenv.
- tfscaffold (⭐237) - Framework for controlling multi-environment multi-component terraform-managed AWS infrastructure.
- tfschema (⭐288) - Schema inspector for Terraform providers.
- tfupdate (⭐505) - Update version constraints in your Terraform configurations.
- tfwrapper (⭐8) - Rubygem providing rake tasks for running Hashicorp Terraform sanely.
- xterrafile (⭐66) Systematically manage external modules from the module registry, git, or local directories for use in Terraform (written in Go). 💀
Libraries / IDE
- pyhcl (⭐331) - HCL parser in Python
- rhcl (⭐15) - Pure Ruby HCL parser 💀
Terraform Enterprise Tooling / IDE
- terraform-enterprise-cli (⭐11) - Terraform Enterprise Command Line Interface.
- terraform-enterprise-client (⭐8) - Terraform Enterprise API Ruby Client and Command Line tool.
Videos / IDE
- 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.
- How to Extend the Terraform Provider List - In this talk, Paul will walk through the creation of a terraform provider.
- 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.
- Untangling Terraform Through Refactoring - How to refactor your Terraform code in a careful way with minimum risk.
Editor Plugins / IDE
- Terraform-lsp (⭐573) (Language Server Protocol for Terraform)