The recent creation of the OpenTF foundation has caused a stir in the tech industry, particularly in relation to the confusion over who controls the code base of Terraform. While some may see this as a positive move towards greater transparency and collaboration, others will view it as nothing more than a way for certain companies to avoid paying licensing fees for using the code base for their commercial closed source products. In this article, we will explore the potential fallout and benefits of the OpenTF foundation, and what it means for the future of Terraform.
Firstly, how did this come about? Basically, on the 8th of August 2023, HashiCorp changed the terms of Licensing on their Flagship Infrastructure as Code product Terraform. Starting with version 1.6 the source code or usage will no longer be under an opensource license, but under a business commercial license.
The change in Terraform Licensing from the OpenSource MPL v2 license to the BUSL v1.1, effectively, allows HashiCorp to charge a License to those companies for the use of Terraform when they produce products that HashiCorp deem to be competitive to one of their commercial products (i.e. Terraform Cloud or Enterprise). To help clear up any misunderstandings Hashicorp have provided a FAQ site on which they attempt to answer the most common questions about the change. However, as expected, in one of those laws of unintended consequences, or in this case the law of the bloody obvious consequences, those companies directly affected by the change have cried foul as they are effectively facing a non-trivial additional cost to their component costs and taken the nuclear option of forking Terraform and creating always open version.
So, let’s take a closer look at the OpenTF foundation and what it aims to achieve. Essentially, the foundation is a non-profit organization that has been established to oversee the development and governance of Terraform, as an open-source infrastructure as code software tool created by HashiCorp.
Could there actually be any benefits to a Foundation controlling Terraform?
Potential benefits of Terraform being under the auspices of a foundation are that it could potentially promote collaboration among contributors to. By providing a neutral platform for development, the foundation should be able to encourage contributors to work together sharing their expertise. This should lead to faster development of new features and improvements to the tool.
A foundation should help to ensure that the forked Terraform remains open source and freely available to all users. By establishing a non-profit organization to oversee the development of Terraform, the foundation helps to prevent any one company or individual from gaining control over the tool. This helps to ensure that Terraform will remain accessible and useful to all users, regardless of their resources or affiliations; that said, the signatories had not previously bothered about HashiCorp’s overall control and direction
But it is not all Tulips and Roses
Despite these benefits, the creation of the OpenTF foundation has also caused some fallout in the Terraform community. Some users have expressed concern about the potential for conflicts of interest among foundation members, particularly if they are affiliated with companies that use Terraform. Others worry that the foundation may become too bureaucratic, slowing down development and making it harder for new contributors to get involved. But for myself, the core worry is that Terraform Core is a very complicated beast, over the 10 years for Terraform HashiCorp has provided over 95% of commits to the core product. According to Armon Dadgar – CTO of HashiCorp, it takes a Hashicorp staffer nearly 6 months of being submerged in the code base to understand the intricacies and spaghetti that is Terraform Core. I personally have other worries too, and that is mainly concerned with a divergent code base and feature base. Yes the Foundation have committed to remain “Compatible” with HashiCorp Terraform, but that is not the same as lock-stepped with HashiCorp Terraform. Also HashiCorp’s direction for Terraform Core, will most definitely not be the same direction as the Core-Contributors of the Foundation. Now it is true that the OpenTF foundation has established clear guidelines for membership and governance to address these concerns. Members are required to disclose any potential conflicts of interest, and decisions are made through a transparent and democratic process. The foundation also encourages participation from a wide range of contributors, including individuals and organizations with diverse backgrounds and perspectives.
So what actions have been taken?
The actions currently taken as of the date of writing is that there as been a fork of the official code base, at version v1.6.0-alpha20230802 the last version licensed with MPL v2, there has been a release of a foundation manifesto and a list of current signatories which includes 10 Projects, one foundation, nearly 500 individuals and 116 companies, like Gruntwork the makers of Terragrunt, Spacelift the writers of the rather pithily named Spacelift IaC management software, and env0 another IaC code management manufacturer and scalr (yep you’ve guessed it a IaC code management software manufacturer. The last three companies have committed to cover the cost of 5 full time engineers over the next 5 years to the foundation. Sounds good, but I wonder how many people in HashiCorp are actually working on Terraform, not those actually committing to the code base, but actually working on the code; I have a sneaking feeling it will be more than 15 FTE’s. So as we have already mentioned the core drivers of the foundations are mainly direct competitors to HashiCorp, but what is more telling to me is that there has been, at the time of writing no official comments of support from industry leading companies. Industry leading companies like Microsoft, Google, VMware and Amazon Web Services have been eerily silent on this matter, these are companies that have a large investment in Hashicorp Terraform, none have signed the Manisfesto, none have “openly” pledged support, resources and expertise towards the ongoing development of an open form of Terraform. Remember that between the three of those vendors almost 65% of Cloud infrastructure is covered and VMware Dominate the private cloud space. The Gang of 5 as they are starting to be (Scalr, CloudSkiff, Env0, Spacelift and Gruntwork) have already filed their submission to become members of the CNCF, which should lead to Sandbox status.
What is the future?
So, what does this mean for the future of Terraform? On the one hand, the creation of the OpenTF foundation could be seen as a positive move towards greater collaboration and transparency. By bringing together some of the biggest players in the tech industry, the foundation has the potential to drive innovation and improve the functionality of Terraform in ways that may not have been possible before. Additionally, the foundation’s commitment to open-source principles could help to ensure that Terraform remains accessible and affordable to businesses of all sizes.
However, as already mentioned here are also potential downsides to the concept of an OpenTF foundation. One of the main concerns is that it could lead to confusion over who controls the code base of Terraform. While HashiCorp has traditionally been seen as the primary developer and maintainer of Terraform, the foundation’s involvement could muddle this relationship and create uncertainty over who has the final say on how the software is developed and distributed.
Another concern is that some companies may use the OpenTF foundation as a way to avoid paying licensing fees for using the code base for their commercial closed source products. While Terraform is open-source software and can be used freely for non-commercial purposes, businesses that want to use it for commercial purposes are required to pay a licensing fee. Some critics argue that certain companies have been “leaching off” HashiCorp’s work and are now trying to avoid paying for it by joining the foundation.
Despite these concerns, it is clear that the creation of the OpenTF foundation has the potential to be a positive move for the future of Terraform. By bringing together some of the biggest players in the tech industry and committing to open-source principles, the foundation could help to drive innovation and ensure that Terraform remains accessible and affordable to businesses of all sizes. However, it will be important for all parties involved to work together collaboratively and transparently in order to avoid confusion and ensure that everyone’s interests are represented fairly. Only time will tell what impact the OpenTF foundation will have on Terraform and the wider tech industry, but it is certainly an exciting development worth keeping an eye on.