Navigating the Future of Terraform and OpenTofu
Many of our users have approached us with questions about the fluid situation surrounding HashiCorp’s Terraform, OpenTofu and Infrastructure as Code (IaC) in general.
We thought it would be a good time to share some of the insights that have helped our customers plan their future.
To recap, in August, HashiCorp announced it would no longer release future versions of Terraform under the open source Mozilla Public License (MPL), citing a lack of commensurate open source contributions from the third-party vendors who have integrated HashiCorp’s source code into their products.
Last month, many of those vendors announced their support for OpenTofu, a new open source initiative backed by the Linux Foundation that aims to maintain feature parity with Terraform without HashiCorp’s restrictions on support in third-party tools.
For about a decade, Terraform users have relied on the open source tool to provision cloud infrastructure so they could focus on getting their work done. Naturally, these developments have forced them to take a step back and question their future with Terraform as their IaC tool of choice.
Here are some key questions and considerations for those users.
How Do Your Teams Provision Infrastructure Defined in Terraform Today?
While our customers will not be affected by the change in licensing — our products do not violate HashiCorp’s Business Source License (BSL) by embedding HashiCorp source code — those who rely on certain Terraform automation and collaboration (TACO) tools will need to understand their exposure.
In announcing their support for OpenTofu, many of these vendors indicate that they may not be able to support future versions of Terraform under the BSL.
This could have serious implications for teams that rely on these tools, especially considering that HashiCorp will stop applying security updates to prior open source versions of Terraform after Dec. 31. .
If this development does affect your teams, it may be time to start thinking about different options and the way they support the IaC and the configuration tools your teams depend on.
What Does the Future of OpenTofu Look Like?
Those considering migrating their libraries of Terraform modules to OpenTofu should keep a few considerations in mind as well.
Upon its initial release, OpenTofu claims to support the same features in Terraform version 1.5.5, the latest (and final) open source version of Terraform.
While that could make the process relatively smooth, the reality of that migration remains to be seen. Those with large volumes of Terraform modules might want to consider how the migration process might affect the teams and projects that depend on them.
Long-term feature parity with Terraform is another question. The experts working on OpenTofu are certainly well-versed in the features and functionality of the prior open source versions of Terraform. Whether they can keep up as Terraform continues to evolve is another question that has long-term implications.
Complexity is another concern. Many DevOps and IT teams already struggle to reconcile the differences between Terraform and the other tools their teams use to define resource configurations (AWS CloudFormation, Helm, Ansible, etc.) and use application infrastructure (CI/CD or internal developer platforms). OpenTofu adds yet another name to that list. A seamless transition will require getting all the affected teams on board with OpenTofu and knowledgeable enough to understand how future releases will affect their application infrastructure.
The world of IaC is complex and has evolved considerably in recent years. Navigating those changes requires understanding what matters most to your application infrastructure and minimizing the disruption to your teams.