Core Terraform Workflow: Write, Plan, Apply Phases
Which of the following statements about the core Terraform workflow (Write, Plan, Apply) are correct? (Choose all that apply. There are four correct answers.)
Quick Answer
The answer is that all four statements about the core Terraform workflow phases—Write, Plan, Apply—are correct, including the claim that running `terraform plan` is strictly optional before `terraform apply`. This is correct because the core workflow is designed with flexibility: the Write phase defines infrastructure in `.tf` files, the Plan phase generates an execution plan for review, and the Apply phase executes changes. Crucially, if you run `terraform apply` without a pre-generated plan (e.g., from `terraform plan -out`), Terraform automatically creates and executes a new plan in one step, making the separate `plan` command optional but highly recommended for safety. On the HashiCorp Terraform Associate TF-003 exam, this question tests your understanding of workflow mechanics versus best practices—a common trap is assuming `plan` is mandatory. Remember the memory tip: "Plan is optional, but wise; Apply can auto-generate in disguise."
⚠ Common exam trap
HashiCorp often tests the misconception that `terraform plan` modifies the state file or that `terraform apply` always requires a separate plan command, when in fact `terraform apply` can generate and execute a plan automatically if none is provided.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
The `terraform plan` command creates an execution plan showing what actions Terraform will take to reach the desired state described in the configuration.
The core Terraform workflow consists of three phases: Write, Plan, and Apply. During the Write phase, you define your desired infrastructure in `.tf` configuration files, which can include variables, data sources, and modules. The `terraform plan` command creates an execution plan that shows what actions Terraform will take to reach that desired state. The `terraform apply` command can use a saved plan from `terraform plan -out` without additional flags, or if no plan is provided, it will automatically generate and execute a new plan. This workflow ensures that changes are reviewed before being applied, reducing the risk of unintended modifications.
Go deeper
Related to this question
About these practice questions
One of 428 original TF-004 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
Same concept, more angles
2 more ways this is tested on TF-004
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. Which TWO actions are part of the core Terraform workflow? (Choose two.)
medium- A.terraform fmt
- ✓ B.terraform plan
- C.terraform validate
- ✓ D.terraform apply
- E.terraform destroy
Why B: The core Terraform workflow consists of three main steps: `terraform init` to initialize the working directory, `terraform plan` to preview changes, and `terraform apply` to execute those changes. Option B (`terraform plan`) is correct because it creates an execution plan showing what actions Terraform will take to reach the desired state defined in configuration files. Option D (`terraform apply`) is correct because it applies the changes required to reach the desired state, either by using a previously generated plan or by creating a new plan and prompting for approval.
Variation 2. Which TWO actions are part of the core Terraform workflow? (Select TWO.)
medium- A.Create infrastructure manually via cloud console
- ✓ B.Write Terraform configuration files
- ✓ C.Review the execution plan
- D.Commit changes to version control
- E.Run unit tests on the configuration
Why B: The core workflow consists of: Write (author config), Plan (review changes), Apply (execute). Options that match are 'Write configuration' and 'Review execution plan'.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This TF-004 practice question is part of Courseiva's free HashiCorp certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the TF-004 exam.