Contributing to Terraform vs OpenTofu

Two similar projects, two different experiences

Andrew den Hertog
5 min readOct 31, 2023
Photo by EJ Yao on Unsplash

At this point, I’m sure most people are aware of the recent drama when Hashicorp decided to change the licensing model of some of their products, including Terraform. As a result, a fork of Terraform was created called openTofu, which maintains the community-supported version of Terraform with open-source licensing and Linux Foundation support. Here is a good article that outlines the differences between OpenTofu and Terraform

While I’m not going to discuss my opinions of the split in this post, I would like to share my experience contributing to a bug fix introduced in the 1.6.0 version of Terraform and the 1.6.0-dev build of openTofu.

The bug

The bug in question was quickly found when a developer friend mentioned that they were testing the Terraform 1.6.0 release on some of our pre-existing code and came across a new error without changing any code.

│ Error: Invalid KMS Key ARN

│ on providers.tf line 2, in terraform:
│ 2: backend "s3" {}

│ Value must be a valid KMS Key ARN, got
│ "arn:aws:kms:us-east-1:12345678:alias/aws/s3"

According to the error, Terraform is no longer supported using KMS key aliases for the S3 backend.

--

--