Reading a Plan
plan is the most important command in Terraform, and it's the one beginners
skim. This lesson slows it down. By the end you'll read any plan at a glance and
know — before you touch anything — exactly what apply would do.
Every line in a plan that matters starts with one of these:
| Symbol | Action | Meaning |
|---|---|---|
+ | create | the resource doesn't exist yet; it will be created |
~ | update | the resource exists; an attribute changes in place |
- | destroy | the resource is in state but gone from your code; it will be destroyed |
You'll watch the same small stack (a network and a server) move through all three. Each mini lesson builds on the state the one before it left, so they unlock in order.
Interview prep
“Walk me through a terraform plan” is one of the most common screening questions — be able to read every symbol cold.
What do +, ~, and -/+ mean in a terraform plan?
+ creates a new resource, ~ updates one in place, - destroys one, and -/+ (Terraform also prints “forces replacement”) means an immutable attribute changed so the resource must be destroyed and recreated. The summary line — “Plan: N to add, N to change, N to destroy” — is the headline you read before every apply.
Why run plan before apply at all?
plan is a read-only preview: it shows exactly what apply would add, change, or destroy, with no side effects. You read it to catch surprises — especially destroys and replacements — before they touch real infrastructure. On a team you also save the plan and apply that exact file, so what was reviewed is what runs.