Kenapa OpenTofu ada? Episode ini menceritakan perubahan lisensi Terraform oleh HashiCorp dari MPL v2 ke Business Source License pada Agustus 2023, lahirnya manifesto OpenTF, dukungan Linux Foundation, dan komitmen untuk tetap 100 persen open source serta kompatibel dengan Terraform 1.5.x.

Di episode 0 sebelumnya kita menyiapkan environment lengkap: dasar Linux CLI, konsep cloud, pemahaman HCL, instalasi tofu, dan setup kredensial. Kalian sudah punya senjata untuk memulai. Tapi sebelum terjun ke tofu init dan tofu apply, ada satu pertanyaan yang wajib dijawab: kenapa OpenTofu itu ada?
Pertanyaan ini bukan sekadar trivia sejarah. Ia membentuk cara kalian melihat ekosistem IaC ke depan: siapa yang mengendalikan tool, apa jaminan lisensinya, dan apakah aman dijadikan fondasi infrastruktur. OpenTofu lahir dari peristiwa kontroversial di industri cloud pada 2023 — memahami konteksnya membantu kalian menghargai keputusan desainnya di episode-episode berikutnya.
Untuk memahami OpenTofu, kita mundur ke Agustus 2023. Sejak 2014, Terraform dirilis dengan lisensi MPL v2 (Mozilla Public License) — lisensi open source murni yang membolehkan siapa pun melihat, memodifikasi, dan mendistribusikan kode. Di atas fondasi itu tumbuh ekosistem raksasa: provider, modul, tooling, hingga SaaS seperti Spacelift dan env0 yang menjual otomasi berbasis Terraform.
Lalu pada 10 Agustus 2023, HashiCorp mengumumkan perpindahan seluruh produknya — termasuk Terraform — ke Business Source License (BSL/BUSL). BSL bukan lisensi open source. Kode tetap bisa dibaca, tetapi penggunaannya dibatasi: secara garis besar, pihak ketiga tidak boleh memakai kode Terraform untuk menjual produk atau layanan terkelola yang bersaing langsung dengan HashiCorp.
Warning
Jangan salah paham: BSL bukan berarti kode disembunyikan atau pengguna biasa dipaksa bayar. Yang berubah adalah hak untuk membangun bisnis di atas kode tersebut. Justru di situlah titik panasnya — banyak perusahaan membangun SaaS di ekosistem Terraform, dan merekalah yang paling terpukul.
Dampaknya lebih dari sekadar lisensi. Komunitas yang hampir satu dekade membangun ekosistem dengan asumsi Terraform selamanya open source merasa keputusan ini melanggar kepercayaan. Kekhawatiran terbesar: vendor lock-in — satu perusahaan mengendalikan arah dan lisensi tool yang menjadi fondasi infrastruktur ribuan perusahaan.
Reaksi komunitas datang cepat. Kurang dari sehari setelah pengumuman, manifesto bertajuk OpenTF dirilis dan ditandatangani puluhan perusahaan serta ribuan individu. Pesannya satu kalimat: jika Terraform tidak lagi open source, kami akan membuat yang open source sendiri — lewat fork dari kode Terraform terakhir yang berlisensi MPL.
Tokoh-tokoh berat industri langsung bergabung sebagai sponsor pendiri: Gruntwork, Spacelift, env0, Harness, dan Scalr. Nama-nama ini bukan kebetulan — semuanya vendor yang membangun layanan di atas Terraform dan paling terdampak perubahan lisensi.
Beberapa minggu berselang, proyek didonasikan ke Linux Foundation, organisasi netral yang juga menaungi Linux dan Kubernetes. Karena alasan trademark, nama OpenTF diubah menjadi OpenTofu. Dengan bernaung di Linux Foundation, proyek mendapat struktur governance netral, pendanaan, dan jaminan bahwa kode tidak dikendalikan satu vendor mana pun.
Berikut ringkasan linimasa peristiwa pentingnya:
| Tanggal | Peristiwa |
|---|---|
| 10 Agustus 2023 | HashiCorp mengumumkan perpindahan Terraform ke lisensi BSL |
| Agustus 2023 | Manifesto OpenTF dirilis, ditandatangani puluhan perusahaan |
| September 2023 | Proyek OpenTF didonasikan ke Linux Foundation |
| Januari 2024 | Rilis OpenTofu 1.6.0 pertama, kompatibel dengan Terraform 1.5.x |
OpenTofu berdiri di atas empat komitmen yang dijanjikan sejak hari pertama:
| Komitmen | Arti Praktis |
|---|---|
| 100% open source (MPL v2) | Kode terbuka, bebas dipakai, diubah, dan didistribusikan selamanya |
| Governance komunitas | Keputusan dibuat maintainer dan kontributor publik, bukan satu perusahaan |
| Tanpa vendor lock-in | Tidak ada entitas tunggal yang bisa mencabut akses atau mengubah aturan main |
| Backward compatibility 1:1 | Konfigurasi, provider, dan workflow Terraform 1.5.x tetap berjalan apa adanya |
Komitmen terakhir paling terasa bagi kalian. tofu init membaca .terraform.lock.hcl yang sama, provider hashicorp/aws yang sama tetap dipakai, dan hampir semua command punya padanan identik. Inilah yang membuat migrasi di episode 2 terasa seperti pindah mobil dengan kunci dan stir yang sama persis.
Versi rilis pertama OpenTofu meluncur pada Januari 2024, dan proyek terus tumbuh. Hingga 2026 ini berada di kisaran versi 1.8/1.9, dengan fitur eksklusif yang tidak dimiliki Terraform — seperti native client-side state encryption dan dynamic provider iteration — yang akan kita bahas di episode-episode berikutnya.
Salah satu bukti paling konkret adalah saat tofu init bertemu project Terraform yang sudah ada. OpenTofu membaca required_providers, mengambil versi provider yang sama dari registry, dan tetap memakai file .terraform.lock.hcl yang sama. Hasilnya, plan yang dihasilkan identik dengan yang dihasilkan terraform versi 1.5.x.
terraform {
required_version = ">= 1.5.0"
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 5.0"
}
}
}Block di atas dibaca dengan cara yang persis sama oleh terraform dan tofu — inilah jaminan bahwa migrasi di episode 2 tidak memerlukan perubahan satu baris pun HCL.
tofu version
OpenTofu v1.9.2
on linux_amd64Untuk konteks, berikut perbandingan cepat antara keduanya:
| Aspek | Terraform | OpenTofu |
|---|---|---|
| Pengelola | HashiCorp (perusahaan) | Komunitas + Linux Foundation |
| Lisensi | Business Source License | Mozilla Public License v2 |
| Binary | terraform | tofu |
| Registry | registry.terraform.io | registry.opentofu.org |
| Kompatibilitas | rilis sendiri | 1:1 dengan Terraform 1.5.x |
| State encryption | tidak tersedia | native client-side (bawaan) |
Ringkasan episode 1:
Dengan memahami sejarah ini, kalian sekarang mengerti mengapa OpenTofu ada dan apa yang dijanjikannya. Di episode 2 berikutnya kita membuktikan janji itu: menjalankan core workflow — tofu init, tofu plan, tofu apply, tofu destroy — plus langkah migrasi mulus dari Terraform. Sampai jumpa!