OpenTofu
Awesome OpenTofu ¶
A curated and collaborative list of awesome OpenTofu resources and tools.
OpenTofu allows you to declaratively manage your infrastructure. It's an open-source, community-driven alternative to Terraform.
Official¶
- OpenTofu repository 🎉
- Fork announcement
- Official registry
- Weekly updates
- Office hours
- Technical Steering Committee updates
Community¶
Communication channels, meetups, newsletters, and forums.
Features¶
- 1.8 - Override files for OpenTofu (.tofu)
- 1.8 - Early variable and locals evaluation
- 1.7 - End-to-end encryption for state files
- 1.7 - Provider-defined functions
- 1.7 - Removed block
- 1.7 - Loopable import blocks
- OCI-compliant registry support 🚧
- CanI.TF - Feature parity between Terraform and OpenTofu
Tools¶
Environment managers¶
- arkade - CLI and Kubernetes app installer.
- asdf-opentofu - OpenTofu plugin for asdf version manager.
- tenv - Terraform and OpenTofu version manager written in Go.
- tfswitcher - Terraform and OpenTofu version switcher written in Rust.
- tofuenv - OpenTofu version manager inspired by tfenv.
Wrappers¶
Simplify your OpenTofu workflows with a thin wrapper.
- Atmos - Orchestration tool that keeps environment configuration DRY.
- Terragrunt - Keep your configurations DRY, work with multiple modules, and manage remote state.
- Terramate - Automation, orchestration, and code generation for OpenTofu, Terraform, Kubernetes, and others.
- easy_infra - Docker container to simplify and secure the use of infrastructure as code.
- pug - A terminal user interface for power users.
- tf - Less verbose and more friendly command outputs.
- tfam - Rust-powered wrapper for concurrent Terraform/OpenTofu apply, enabling multi-deployment support.
- tfexe - Rust-powered wrapper for seamless execution of tfswitch and Terraform/OpenTofu with version control.
- tfwrapper - Python wrapper that simplifies OpenTofu usage and enforces best practices.
CI¶
- Atlantis - Automating workflows via pull requests.
- TF-via-PR - GitHub Action to init, plan and apply Terraform/OpenTofu via PR automation.
- pre-commit-opentofu - Git pre-commit hooks plugin.
- setup-opentofu - Set up OpenTofu CLI in your GitHub Actions workflow.
- terraform-github-actions - GitHub Actions for OpenTofu.
- tofu-controller - GitOps OpenTofu and Terraform controller for Flux.
Tests¶
- Terratest - Go library that makes writing automated tests for your infrastructure code easier.
State¶
Analyze and manipulate OpenTofu's state.
- tfmigrate - State migration tool.
Providers¶
Inspect and interact with OpenTofu providers.
- tfschema - Schema inspector for providers.
Platforms¶
Alternatives to Terraform Cloud.
- digger - Open-source IaC orchestration tool. Digger allows you to run IaC in your existing CI pipeline.
- terrakube - Open-source platform with a private registry, remote state, custom flows, scheduled workspaces, and visual states.
- tofutf - Open-source alternative to Terraform Enterprise with SSO, team management, agents, etc.
- walrus - Walrus is an open-source application management platform based on IaC tools, including OpenTofu, Terraform, and others.
Registry¶
- library.tf - An indexer of registries for providers and modules with insights and documentation.
- boring-registry - Boring-registry is an open-source module and provider registry compatible with OpenTofu.
- hermitcrab - Registry network mirroring service compatible with OpenTofu.
- terrac - Minimal private module registry compatible with OpenTofu.
- GitLab Module Registry - Use GitLab projects as a private registry for terraform modules.
- terralist - Private registry for providers and modules.
- citizen - Private registry for modules and providers with support for multiple databases and storages.
- petra - Private registry manager using Google Cloud Storage.
- tapir - Private registry for modules and providers with a UI.
- terraform-registry - Modules registry with authentication and support for multiple backends.
- terrareg - Open-source modules registry with UI, optional Git integration and deep analysis.
- terustry - Proxy registry for providers.
Helpers¶
- terratag - CLI tool allowing for tags or labels to be applied across an entire set of OpenTofu/Terraform files.
Learning¶
- OpenTofu Course - Interactive tutorials.
- Terraform in Depth - Book with OpenTofu sections.
- Infrastructure automation with OpenTofu - Learn infrastructure provisioning with lectures, quizzes, hands-on demos and coding exercises.
- Migrating From Terraform To OpenTofu - Introduction to OpenTofu history and how to migrate.
Media¶
- OSS EU 2023 - Announcement
- OSS EU 2023 - Project Overview
- Code To Cloud - Getting Started With OpenTofu
- CNCF - OpenTofu Day 2024
Podcasts¶
- Kubernetes Podcast - OpenTofu, with Ohad Maislish
- TheIaCPodcast - Expert Panel on OpenTofu GA Release, Licensing, and OSS Future
- Contributor - Community-Driven IaC
- Ned in the Cloud - IaC Live Stream
- Arrested DevOps - What's Up With Open Terraform?
- OpenObservability - Terraform is no longer open source. Is OpenTF the successor?
- TheCloudGambit - The Future of OpenTF
- Oxide and Friends - Fork in the road for Terraform?
- Changelog - OpenTF for an open Terraform