In this article, we examine the reasons why the OpenTofu initiative is worth exploring for organizations about to adopt infrastructure as code (IaC).
Deciding which tool to select depends on the company’s expertise, skills available on the market, the technology stack in use, limitations in existing processes, and many other factors. Furthermore, people in different positions will have different perspectives. We discuss the viewpoints of CTOs, architects, and decision-makers.
IaC has been available for many years, but the approach has not been adopted as widely as you might expect. According to a State of CD report, only 27% of respondents used IaC last year. With Global Market Insights Inc’s report predicting more than 20% yearly growth, however, it is clear that many companies are considering it.
IaC is a vital element of DevOps adoption. With Lean and Automation (elements of the CALMS framework), DevOps aims to automate processes and increase productivity and stability.
MPL (Mozilla Public Licence) is a type of open-source license. Software under this license can be used for private and commercial projects without any limitations (at least, for the case we discuss here).
BUSL (Business Source License), on the other hand, limits the use of the software. The software under this license will be open-source eventually.
The BUSL license is a parametrized one. There are some specific elements which can be parametrized:
- Restriction on usage
- Change date
- Open-source license after change date
The fact that these parameters can be changed and “adapted” as the licensor wishes is exactly the issue the community raises every time companies change a license to BUSL.
The main charge against BUSL is that its terms are unspecific and can be used in an opaque way as the licensor chooses. This prompts uncertainty about how and when software can be used.
Can I use the tool?
There are two aspects to this question: First, as I already mentioned, the BUSL license is rather vague in its construct, and the parameters can be changed without warning. Second, but equally important, is the potential to use the tool inside a wider platform.
For example, if I use vendor X to host my applications, can I use product Y there? This means that if you are using more than one vendor, you need to ensure you can use specific tools with others before you can be confident you control the whole toolset.
Let me give two examples here:
- Fedora disallows software under BUSL license
- VMware Aria disallows use of Terraform in higher versions than 1.5.5 (the last one with MPL license)
It is important to understand that a BUSL license might impact many more entities in the industry, even common users.
What does the change mean for different IT roles?
Let’s look at the impact of this change and why OpenTofu might be a good choice for you, depending on the specific role you play in the organization:
Architect
Contemporary architecture roles cover multiple areas, but solution, cloud, system, application, and enterprise architects must consider several factors that are not directly technical — including the licenses of any software they propose and incorporate into architecture. We have already discussed two examples where licensing might have a significant impact on the selected toolset.
If we’re looking at usability from the perspective of support and community, we only have to look at the community response to the OpenTofu initiative. Its manifesto already has more than 35,000 stars (rating on GitHub), and the OpenTofu fork of Terraform earned more than 15,000 stars. This shows the industry’s huge support and interest.
Engagement with the new initiative also encourages architects to be confident of the project’s future.
Security Officer
As a person responsible for security in the organization, you have to examine a solution’s security, but you should also assess the software’s license modeling and maintenance. OpenTofu can support you in this respect. The MPL license is less restrictive than the BUSL, and it secures a company’s usage without extensive legal checks. The fact that the initiative is community-driven allows security specialists in the community to propose their changes (through the RFC process) and ensure that best practices regarding security are being followed.
Chief Technical Officer (CTO)
As CTO of the organization, your role is not only to manage the current situation but also to consider the future. This is where the OpenTofu initiative gives you the edge for projects.
The reasons are as follows:
- It is a truly open-source project, under the Linux Foundation umbrella. This ensures stability for the effort. The Linux Foundation (directly or through their foundations) drives many projects used on a daily basis. Here are just a few of them: foundations like the CNCF and CD Foundation; software like ArgoCD, ETCD, Xen Project, Jenkins, Spinnaker, Istio, Prometheus, and Kubernetes; plus standards like SPDX and many more. This list should answer the question, “Is open-source really for me?”
- It has overwhelming support from the community. This means OpenTofu can set standards for future approaches to IaC.
- Its open-source status means the project can be used to build competing platforms. Nothing is better for growth than healthy competition, which introduces new features and solutions to the ecosystem.
As CTO, you must answer two questions for yourself:
- Is this something that is good to use today?
- Is it something that will be a good choice for the next one, two, or five years?
I believe the answer to both questions is “Yes, indeed, it is.”
Open-source support
The large community of experts, practitioners, and users behind this open-source initiative will have a huge impact on the solution. The stewardship of organizations like the Linux Foundation guarantees stability and growth, and community backing ensures the knowledge and resources needed to establish a good pace for improvements and new feature implementation.
Community-driven initiative
Not only does a community provide the potential to build the ecosystem, but it also drives it in the right direction. Involving different backgrounds, views, and expectations creates a healthy space to exchange experiences and build a project ready for adoption.
Impact on roadmap and development
The power of open-source, community-driven projects like OpenTofu lies in the fact that you can join the initiative, help it grow, and impact its direction.
If you are about to enter the IaC world, compatibility with the existing Terraform ecosystem shouldn’t be a major concern. You are joining a new community eager to grow fast, which should be reassuring for the future.
The ecosystem for OpenTofu is built by the community, which means every single person or company involved can have a role.
OpenTofu has only one agenda: to build a thriving ecosystem around the IaC toolset that embraces progress in how infrastructure is developed, deployed, and maintained.
OpenTofu stays backward compatible with Terraform. How this will be maintained in the future depends on the supporting community and steering committee under the umbrella of the Linux Foundation.
OpenTofu will only be as strong as the community behind it. You can join that community and show your support by contributing to the public repository on GitHub. This contribution document explains how.
OpenTofu’s first stable release is here, and it is production-ready. Check out our overview of what’s new. See the most important questions about OpenTofu.
The Most Flexible CI/CD Automation Tool
Spacelift is an alternative to using homegrown solutions on top of a generic CI. It helps overcome common state management issues and adds several must-have capabilities for infrastructure management.