Belajar Terraform dari dasar hingga mahir: konsep Infrastructure as Code, HCL syntax, state management, modul, hingga arsitektur enterprise production-grade.
Sebelum masuk lebih dalam ke Terraform, ada beberapa skill dasar dan tools yang perlu kalian siapkan terlebih dahulu, mulai dari Linux CLI, konsep dasar cloud computing, hingga instalasi Terraform CLI dan setup cloud credentials.

Sebelum kita menulis kode Terraform, kita perlu paham dulu dari mana IaC lahir: evolusi pengelolaan infrastruktur dari ClickOps manual, shell scripting, hingga declarative Infrastructure as Code — dan mengapa Terraform menjadi pilihan utama.

Saatnya menulis kode Terraform pertama: memahami anatomi sintaks HCL mulai dari block, argument, hingga identifier, lalu mempraktikkan empat langkah core workflow — init, plan, apply, dan destroy.

Di episode ini kita akan membahas tiga blok fundamental Terraform: provider sebagai jembatan menuju cloud API, resource sebagai bahan bangunan infrastruktur, serta data source untuk membaca infrastruktur yang sudah ada tanpa harus membuatnya ulang.

Di episode ini kita akan membuat konfigurasi Terraform menjadi fleksibel dan reusable melalui input variables, menyederhanakan ekspresi berulang dengan local values, serta menampilkan informasi penting pasca-apply lewat output values.

Di episode ini kita akan membedah file terraform.tfstate yang menjadi sumber kebenaran Terraform, bahaya menyimpan state secara lokal bagi tim, serta bagaimana remote backend dengan state locking (S3 + DynamoDB, GCS) mencegah eksekusi bersamaan yang merusak infrastruktur.

Dalam episode ini kita akan memperdalam kemampuan HCL dengan mempelajari built-in functions, conditional expressions (ternary), serta meta-arguments perulangan count dan for_each untuk menulis konfigurasi yang dinamis dan efisien.

Dalam episode ini kita akan memahami bagaimana Terraform membangun dependency graph untuk menentukan urutan pembuatan resource, kapan kita perlu memaksa urutan dengan depends_on, serta melindungi infrastruktur dengan lifecycle rules seperti create_before_destroy dan prevent_destroy.

Dalam episode ini kita akan menghubungkan infrastruktur eksisting ke Terraform dengan import block, merestrukturisasi kode tanpa destroy menggunakan moved, serta menginspeksi dan membersihkan state melalui perintah terraform state.

Pahami mengapa modul menjadi fondasi IaC di skala enterprise. Pelajari struktur standar modul, membuat VPC module yang reusable, memanggil modul lokal maupun remote, hingga version pinning dan best practices-nya.
