September 20, 2023·6 min read·engineeringterraformopentofugovernancelicensing

OpenTofu joins the Linux Foundation with a compatibility commitment

OpenTofu gives the Terraform fork a foundation home and pledged engineering support. Its compatibility and governance commitments address different parts of infrastructure dependency risk.

A fork can preserve the code available on a particular day without preserving the organization that maintained it. Infrastructure users need both a usable implementation and people who can review changes to it. The Linux Foundation's September 20 launch of OpenTofu addresses that second requirement. The project, previously called OpenTF, now has a foundation home and a stated commitment of at least 18 full-time developers for at least five years.

The announcement presents OpenTofu as a successor to MPL-licensed Terraform with neutral governance and backward compatibility among its commitments. Those are distinct promises. An open license permits independent use of the code. Governance determines how shared development decisions are made. Compatibility determines how much existing configuration and tooling can continue to work. A credible alternative needs to account for all of them.

I value Terraform's reusable language and provider model, and I prefer keeping that infrastructure foundation available under an open-source license. OpenTofu is appealing because it proposes to preserve those technical investments while changing how the shared implementation is governed. The announcement establishes that direction without proving every compatibility claim a future release will need to satisfy.

The fork follows an unsuccessful request to reverse the license change

The contemporary OpenTF manifesto first asked HashiCorp to restore an open-source license. Maintaining a fork in a foundation was the fallback. The document's concern was broader than whether an individual internal deployment could continue running Terraform. It questioned how independent products could plan around a grant that distinguishes permitted production use from competing hosted or embedded offerings.

That concern has a direct technical consequence. An integration author invests in the behavior of a dependency and in the ability to distribute or operate the resulting system. If those permissions depend on the relationship between products, compatibility with an API is only part of the decision. A working integration can still face a separate licensing question.

The manifesto also argues that Terraform's ecosystem includes contributions outside its core executable. Providers and modules represent substantial work, as do independent tools and educational material. The document lists examples to challenge the idea that contribution should be assessed solely through changes to the engine. This is the fork organizers' argument about the community's role, not a measurement of each participant's contribution.

The August 25 fork announcement followed the request for reversal. It reported preparation of a fork and work toward foundation membership. Today's Linux Foundation announcement gives that effort the OpenTofu name and an institutional home. The name change does not mean that a new implementation was written between the two announcements.

The license preserves an existing code lineage

HashiCorp's August announcement applies the Business Source License to future product releases. OpenTofu instead continues the previously MPL-licensed lineage. The distinction explains why a fork is possible without treating all subsequent Terraform work as available under the old license.

The MPL text distributed with Terraform 1.5.4 permits use and modification subject to its conditions. Distribution of covered source, including modifications, must preserve the MPL terms. Executable distribution also carries source-availability obligations for the covered software. Those permissions provide a starting point for maintaining the earlier code independently.

A fork does not eliminate the need to track provenance. Its maintainers need to know which code belongs to the inherited MPL history and which changes they produce themselves. New work published elsewhere under different terms is a separate dependency decision. An implementation can share an origin without every later change being interchangeable between projects.

The license also leaves trademarks outside its general grant. Reusing code and presenting a product under the original vendor's identity are different questions. A distinct project name makes that separation explicit to users, while the implementation can retain compatibility goals for configuration and integrations.

Compatibility has operational content

The foundation announcement promises backward compatibility as a project principle. For a tool that manages infrastructure, that principle needs to concern behavior as well as accepted syntax. A configuration can parse successfully while an implementation makes a different lifecycle decision. Existing users care about the meaning of a plan and the treatment of objects already represented in state.

This is an engineering implication of the commitment, not a claim that today's announcement supplies a complete conformance specification. Compatibility needs evidence at the boundaries users depend on. An alternative engine has to interpret configuration consistently enough that adopting it does not turn an ordinary maintenance operation into an unexpected infrastructure change.

Provider integration is another important boundary. Terraform's abstraction is useful because provider implementations connect the language to remote APIs. A fork preserving that model can retain much of the existing investment in provider-specific resource definitions. Its maintainers still need to evaluate how engine changes affect the protocol and value semantics those providers expect.

The initial fork announcement reported work on end-to-end and snapshot tests intended to support compatibility. That is evidence of preparation, with a defined purpose. Passing those tests does not establish universal compatibility with every provider or saved configuration. It identifies the kinds of executable checks the project is using to begin substantiating its goal.

I care more about that evidence than about a claim that two tools share most of their code. A small difference in state handling can matter more than a large amount of unchanged implementation. Compatibility work needs to concentrate on decisions that can change infrastructure, including how existing resource identities and replacement rules are interpreted.

Neutral governance must work among competing sponsors

The foundation names support from organizations including Gruntwork, Spacelift, env0, Scalr, and Harness. Its announcement reports pledges from more than 140 organizations and 600 individuals. Those figures describe support at launch. They do not establish how every future disagreement over a feature will be resolved.

Several supporters build products around infrastructure automation. Their participation is useful because they have an interest in maintaining a shared engine and experience integrating it. Their commercial interests can also differ. The governance commitment matters precisely because a common dependency should not require every participant to share the same product strategy.

The manifesto calls for impartial acceptance of useful changes and regular review of contributions on their merits. It also calls for a structure that is easier to build on through layers and modules. These principles connect organizational policy to engineering work. Review access determines whether contributors can improve the shared implementation, while structure determines how much internal knowledge an integration requires.

Foundation membership supplies a home for that shared effort. It does not itself implement a better resource planner or resolve a disputed proposal. The project's processes still need to turn contributions into maintained code. The practical significance of the announcement is that this work now has an institutional setting beyond one automation vendor's repository. For contributors, impartial review needs to mean that a useful fix can advance even when it primarily helps another sponsor's integration. That is a practical criterion against which the stated governance principle can be assessed.

Staffing commitments address maintenance capacity

The pledge of at least 18 full-time developers over at least five years is unusually concrete compared with a general expression of support. It recognizes that maintaining an infrastructure engine requires recurring engineering time. Reviewing changes and preserving compatibility are continuing responsibilities, even if a project initially makes few changes to inherited behavior.

Those commitments are promises about resources, not a published record of five years of delivery. Their value today is that the launch includes an explicit maintenance basis that users can assess. A large supporter count would be less informative if no one committed to doing the work required by the fork.

Long-term maintenance also includes deciding how to change. Backward compatibility can constrain improvements, while a more modular implementation can make future changes easier to isolate. The project's stated principles create a design tension that its maintainers will need to handle through proposals and review. Preserving established behavior and improving internal structure require different kinds of evidence.

Today's launch therefore changes the options available to the Terraform ecosystem at the project level. OpenTofu has a foundation home, an inherited open-source code lineage, and pledged engineering support. Its next implementation decisions will need to preserve the operational meaning of the existing configurations it intends to support. The foundation announcement gives contributors a shared place to undertake that work.