What Does Terraform's Recent License Change Mean for Your Startup?
Big news rocked the developer world in recent months: HashiCorp, parent company of the popular infrastructure-as-code platform Terraform and other developer tools, abruptly announced in August that it would be changing its software license from the Mozilla Public License (MPL 2.0), a type of free and open source software (FOSS) license, to the Business Source License (BSL). Terraform has become the infrastructure-as-code language of choice for many developers since it was founded nearly a decade ago, amassing thousands of users and serving as a foundation for thousands of businesses via its open source license. This change—and the open source community’s response to it—hold many implications for businesses that use Terraform. In our blog post today, we’ll try to break down what happened, and what we think it means for developers and businesses who use Terraform.
HashiCorp’s License Change for Terraform: The Facts
Even when Terraform was an open source tool, HashiCorp required any developers who wanted to make revisions to Terraform source code to sign their Contributors License Agreement (CLA), which transfers the copyright of accepted submissions from the developer to HashiCorp. By owning the copyright to all revisions to Terraform, HashiCorp was able to make the switch from Mozilla 2.0 to a BSL and prevent competitors from monetizing their use of Terraform.
Before making the license change, HashiCorp made money off of consulting services and other software services they built around their ecosystem of tools (automation tools, code review tools), but they couldn’t charge for Terraform itself. As Terraform grew more popular, it wasn’t just small independent businesses that were using the tool to build their software platforms, it was also large companies like GitHub, Deutsche Bank, and others. Switching to a BSL allows HashiCorp to charge competitors money—or potentially force them to shut down—if they use Terraform to build tools and services that would compete with HashiCorp. Anything developed with Terraform under their MPL 2.0 license cannot be changed, but going forward, new versions will be subject to the BSL.
In response to HashiCorp’s decision, a group of Terraform created a fork of Terraform called OpenTofu: essentially, an open-source copy of Terraform that users can continue to build on.
As businesses that use Terraform or OpenTofu encounter the need for updates to their platforms, they’ll have to evaluate any potential risks to continue using their tool of choice—but we’ll get to all of that in a minute.
Why Are Developers Upset about HashiCorp’s Decision to Change Terraform’s License?
Although HashiCorp’s decision to change licenses wasn’t a complete surprise given their CLA standard, much of the open source developer community was critical of the change. Many see it as part of a growing movement away from free and open source development, with companies like Red Hat making similar decisions in recent years. There’s a growing discourse between those who see the value of open source for the health of the whole internet, versus those who see a business case for licensing software to prevent competition from monetizing its use.
On the one hand, the business case certainly makes sense, but on the other, if the library of FOSS tools dwindles, the cost of doing business gets more expensive across the board. Software development gets more expensive, businesses will have to charge more for their goods and services, and that cost trickles down to the user in the form of higher subscriptions.
Many in the open source dev community are also concerned about compatibility and the costs of migration between tools as more FOSS tools switch to commercial licenses. Some predict that if this switch becomes the norm, software platforms will become less compatible with each other and there will be less standardization across tools in how they’re built. And again, all of that unpredictability will impact businesses—and users—across the internet in the form of higher costs.
So while creations like OpenTofu in response to HashiCorp’s decision seem like a great idea, it also created a whole new layer of uncertainty: with two different versions of Terraform, there’s now a question of compatibility over the long term. Linux Foundation stepped in to manage OpenTofu and has promised to keep it backwards-compatible with Terraform, but it’s highly likely that the two tools will diverge at some point, and then users will have to make a choice about which is the better option.
How Does the Terraform License Change Impact Existing Platforms that Use It?
The abrupt decision from HashiCorp and the subsequent creation of OpenTofu has left many developers and business leaders wondering: what does this mean for our platform? Now that the dust has settled a bit, it seems clear that businesses that use Terraform to deploy a service or product that makes money (e.g., an online retail shop for pet products) can continue to use Terraform free of charge. There’s some ambiguity to this, depending on when and how HashiCorp will pursue enforcing their new BSL, and to some extent, we don’t expect them to crack down too harshly because they need to maintain a friendly reputation with the developer community that helped make Terraform what it is today. But if you’re a business that sells goods and services based entirely off of Terraform as a free and open source product, then you have a decision to make: prepare to pay the fee to HashiCorp, or scrap the business.
If you fall into the former category—a business that uses Terraform to deploy your goods and services—you may still be wondering about whether it's wise to continue using it, or whether OpenTofu or another tool is a better option. For now, we recommend sticking with Terraform. It’s the more proven, more supported tool than OpenTofu, which has an uncertain future ahead. That being said, we continue to keep an eye on how this is playing out and we encourage our clients to as well. You may have to switch. We may start to see a migration from Terraform to OpenTofu, but with so many large companies still using Terraform, that may take quite a while.
Lessons for Developers and Startups from the Terraform License Change:
All of that being said, there are some valuable lessons that the developer community—and the larger startup and SMB community that are developing new tools—can learn from the HashiCorp decision:
The open source model will have to evolve with the market, as HashiCorp CEO Dave McJannett said at the recent HashiConf in San Francisco. As we’ve outlined above, there’s much debate about the shape that evolution will take, but it’s important to be prepared to adapt your practices along with it.
Don’t build a startup entirely on top of another startup. There’s a lot of exciting innovation happening in software right now, and a lot of synergy that can happen between creators and developers to enhance tools like Terraform and take it in a direction the original builders never thought of. But building your startup off of another creates clear risk. Major decisions from the source startup will inevitably have a ripple effect that you can’t control. Which brings us to our next point:
Diversify your open source materials. Diversifying the open source tools you use to build your platform reduces your risk footprint and will make your platform more resilient in the ever-evolving tech marketplace.
The internet is in a constant state of evolution. Mile Marker is here to serve as a guide as your team navigates the changes with an Agile approach that leverages open source solutions wisely. Curious to learn more? Let’s talk.
About Mile Marker
Mile Marker is your strategic partner for agile software development. Created for founders, by founders, we offer strategic software at startup speed. We specialize in aligning your technical work with your business goals through collaborative planning, offering a multidisciplinary development team, and ensuring ongoing support for your software. If you’re searching for a software development company or need a technical partner, start the conversation with an introductory call.