BM: Baca dalam Bahasa Melayu
World T4: Modules & Pipelines · Boss challenge
Review the blueprint
You will learn: to review a refactor into a module, fix the pins, and catch a risky plan on a pull request, on your own.
Checked with OpenTofu 1.13 on 1 Nov 2026
The problem
Boss: you are the reviewer today. Ben’s pull request says “Tidy: move the stalls into a module”. Its plan: 2 to add, 2 to destroy. Do you approve?
Pick one answer.
Try it
Fix it yourself. Run tofu init for the new module, then add two moved blocks. The plan must say 0 to destroy. Then apply.
Blueprint (your .tf files)init done
module.nasi.local_file.signnot built yetmodule.mee.local_file.signnot built yet
Built (the state file)state #1
local_file.meelocal_file.nasi
Change a file, then run tofu plan to see what it means.
Hint
The new address ismodule.nasi.local_file.sign.Check
Ben’s pins. Swipe: good, or needs work?
Swipe right for good, left for needs work. Or use the buttons.
required_providers: null with version = "~> 3.2"
Try it
Ben added a bell that needs the null provider, but CI fails. Find out why, fix it, then apply.
Blueprint (your .tf files)init done
local_file.menunull_resource.bellnot built yetrandom_pet.stall
Built (the state file)state #1
local_file.menurandom_pet.stall
Change a file, then run tofu plan to see what it means.
Hint
“Inconsistent dependency lock file” means: run init.Check
Ben also wrote the plan workflow. Find the three holes.
Tap every risky line. Each one shows the attack and the fix.
Workflow file .github/workflows/plan.yml
Check
Last pull request of the day. Read the plan comment. Then choose.
- Bben
Removes code we do not use any more.
- plan-bot
Plan for this pull request:
# module.mee.local_file.sign will be destroyed # module.nasi.local_file.sign will be destroyed Plan: 0 to add, 0 to change, 2 to destroy.
- Passed tofu plan
- This branch needs one approving review first.
You did it!
You can now review infrastructure changes like a pro: modules, pins, pipelines and plans.
Bahasa Melayu
Boss: hari ini anda penyemak. Pull request Ben tulis “Kemas: pindah gerai ke dalam modul”. Plan-nya: 2 to add, 2 to destroy. Luluskah anda?
Baiki sendiri. Jalankan tofu init untuk modul baharu, kemudian tambah dua blok moved. Plan mesti kata 0 to destroy. Kemudian apply.
module.nasi.local_file.sign.Pin Ben. Leret: bagus, atau perlu dibaiki?
Ben tambah loceng yang perlukan provider null, tapi CI gagal. Cari sebabnya, baiki, kemudian apply.
Ben juga tulis workflow plan. Cari tiga lubangnya.
Pull request terakhir hari ini. Baca komen plan. Kemudian pilih.
Kini anda boleh semak perubahan infrastruktur macam pro: modul, pin, pipeline dan plan.
You finished this before. Practice is always welcome!
Official docs: OpenTofu: refactoring modules (moved) · OpenTofu: dependency lock file · GitHub: secure use of Actions
You've learned for 25 minutes. A short break helps your brain.
Sprint done! Great focus. Stretch for a minute?