Feature | Starting with tf version 1.7 support and migrate from Terraform to OpenTofu
Describe the Feature
- First, do an analysis to fully understand the extent of this change.
- Secondly, sketch out a small migration plan (which should include at least affected components, implementation steps, validation and testing, documentation updates required, and communication).
- Finally, proceed with execution of the migration plan.
Starting with Terraform version 1.7, HashiCorp has transitioned its licensing to the Business Source License (BSL) v1.1. This change imposes specific restrictions on embedding or wrapping Terraform within other tools, particularly those that might compete with HashiCorp's offerings.
To ensure compliance and maintain the integrity of our operations, we propose the following actions:
-
Migrate to OpenTofu: Transition from Terraform to OpenTofu, an open-source alternative that aligns with our commitment to open-source principles and avoids the constraints of the BSL.
-
Update Documentation: Revise all relevant documentation to reflect the migration to OpenTofu, ensuring clarity and accuracy for all users.
-
Notify Clients: Inform our clients about this transition, providing them with detailed information on the reasons behind the change and how it will benefit their operations.
By implementing these steps, we aim to uphold our dedication to open-source values while continuing to deliver high-quality services to our clients.
- Extra Issue: Support terraform again consider: Leverage must not embed or wrap Terraform, but can orchestrate and execute any tool (including kubectl , infracost , etc.) and can be used seamlessly in any CI/CD environment.
Sources
- https://www.hashicorp.com/license-faq
- https://www.hashicorp.com/license-faq#what-does-embedded-mean
- https://terramate.io/rethinking-iac/what-does-hashicorp-s-bsl-busl-adoption-mean-for-terramate/
- https://terramate.io/docs/cli/getting-started/
- Add conditional to check leverage cli version with leverage-docker-toolbox w/ opentofu
- Consider 1.13.0 breaking change condition that could help as 1st step.