Open Source in Numbers: The Terraform License Change Impact on Contribution
Terraform, an open source infrastructure as code (IaC) tool, has been a cornerstone of cloud provisioning and infrastructure management since its inception in 2014. Over the years, it has fostered a vibrant community comprising thousands of users, contributors, vendors, and an extensive ecosystem of open source modules and extensions.
However, Aug. 10, 2023, marked a significant shift in Terraform’s trajectory when HashiCorp, its stewarding organization, changed the license from the Mozilla Public License (v2.0) to the Business Source License (v1.1) (BUSL). This abrupt change sent ripples across the Terraform community, sparking concerns about its future.
As a recognized GitHub Star, my commitment to the open source community has driven me to explore the impact of this license change on the collective motivation of contributors. In this article, I delve into the numbers to (try to) answer a crucial question: Did the change in license affect the motivation of people to engage or contribute to the Terraform open source project?
The Terraform Community at a Glance
Before diving into the numbers, it’s essential to understand the significance of the Terraform community. Over nearly a decade, Terraform has nurtured a diverse community comprising contributors, customers, certified practitioners, and ecosystem players.
This community was the backbone of Terraform’s success, driving innovation, peer support, knowledge exchange, and expanding the tool’s capabilities. In the world of open source, community engagement is a lifeline, and the Terraform community was a testament to its vitality.
The License Transition
The license change from MPL to BUSL was a seismic event for the Terraform community. While licenses are often seen as legal formalities, they hold immense weight in open source. The shift to BUSL, a non-open source license, raised eyebrows and immediate concerns about the community’s future role in shaping Terraform’s direction.
Analyzing GitHub Activity
To assess the influence of the license change, I’ve undertaken a thorough analysis of GitHub activity metrics encompassing the period before and after the license transition. My evaluation captures the 30-day interval both preceding and following the date of the license change (August 10th). Within this timeframe, I examined the evolution of issues, pull requests, and GitHub stars.
While these data points represent merely a subset of what is likely a more comprehensive data set, for the purposes of this article, I’ve focused on these three key indicators. I’m not aiming to replicate the depth of academic research, but rather to offer insights into the broader implications of the license transition.
Pre-License Change: Examining the Data
A month before the license change, Terraform recorded 71 new pull requests. Strikingly, only 15 of these were contributed by non-HashiCorp employees (21.12%). Additionally, 89 new issues opened during the same period. Terraform’s GitHub repository boasted 380 stars.
Post-License Change: Examining the Data
A month after the license change, Terraform saw an uptick in pull requests, with 109 new ones. However, only nine were from non-HashiCorp employees (8.25%). The number of open issues decreased slightly to 80. Intriguingly, Terraform’s GitHub repository received a notable star boost, jumping to 593.
Interpreting the Data
Let’s dive deeper into the numbers to decipher their significance.
Increased Pull Requests: A Closer Look
The increase in pull requests after the license change might seem like a positive sign. However, the data reveals a nuanced picture. While the quantity of pull requests rose, the proportion contributed by non-HashiCorp employees decreased, implying that the community’s influence might have dwindled. Quality, rather than quantity, of contributions should remain a focus to maintain codebase integrity.
To investigate whether the decrease in community involvement in the Terraform project represents a trend or a one-time phenomenon, I also analyzed data pertaining to newly opened pull requests from February until October.
Expanding on the monthly breakdown of community contributions, a deeper dive into the numbers reveals a discernible trend both leading up to and following the license change. In the months preceding August, the percentage of pull requests opened by the community exhibited relative stability, averaging around 22.7% — similar to the 21.12% of community-opened pull requests 30 days before the license change.
However, it looks like the transition to BUSL in August marked a significant drop in community contributions, with only 9.30% of all pull requests being opened by the community. This downtrend persisted into September, with a nearly identical rate of 9.52%.
Upon examining the data, it’s clear that there is a negative trend in community contribution to the project. The sustained low percentages in August and September, compared to the preceding months, may indicate the community’s hesitance or reluctance in the wake of the licensing shift.
Yes, there could also be other reasons for the decline in community involvement, and the larger the dataset becomes, the easier it will be to determine that. However, based on the currently available data, it’s challenging to identify another reason for the low community contributions for two consecutive months.
The Resilience of the Terraform Ecosystem
The number of new open issues remained relatively stable. This stability can be attributed to Terraform’s robust and active user base, the community’s resilience, the challenges associated with migrating to new tools, and a possible wait-and-see approach adopted by many users.
Additionally, not every user might have been immediately aware or impacted by the licensing change.
The GitHub Star Phenomenon
Terraform’s GitHub repository’s star count saw a significant increase post-license change. While this suggests heightened visibility, it does not necessarily equate to increased engagement or contributions.
This raises questions about whether the change in license inadvertently generated more attention and, therefore, more stars. I think the famous quote explains this phenomenon in the marketing space: “There’s no such thing as bad publicity, as long as they spell your name right.”
Lessons Learned and Future Possibilities
The Terraform license change underscores the delicate balance between commercial interests and community-driven open source projects. It emphasizes the importance of transparent communication and engagement with stakeholders. Open source projects should explore strategies that maintain community involvement while addressing business needs.
In analyzing the data, it appears that the change in Terraform’s license impacted community engagement. The increase in pull requests may be seen as a positive sign, but the dominance of contributions by HashiCorp employees suggests a shift in the balance of power.
The resilience of the Terraform ecosystem and the surge in GitHub stars indicate that Terraform’s visibility remains strong.
The Terraform community finds itself at a pivotal juncture, balancing the dynamics of open source and commercial interests, underscoring the ongoing necessity for transparent communication.
Its response to the situation was the announcement of OpenTofu (originally OpenTF), an MPL-licensed fork of Terraform.
The initiative was launched by several companies, including Terragrunt, Harness, Spacelift, env0, and Scalr. The project received broad community support and was donated to the Linux Foundation, intention to bring OpenTofu under Cloud Native Comptuing Foundation eventually.
The key question remains: How will this transformation impact the broader open source landscape? With users now vigilant about potential license changes, will they gravitate toward projects supported by established foundations like the Linux Foundation or theCNCF?
Ultimately, only time, the work done by the maintainers, and community adoption will reveal the extent of consequences and evolving preferences in the open source ecosystem.