TF-004 Read, generate and modify configuration Practice Question
Which Terraform command is used to check the syntax and internal consistency of configuration files?
⚠ Common exam trap
HashiCorp often tests the distinction between `terraform validate` (syntax and internal consistency) and `terraform plan` (operational correctness against real infrastructure), leading candidates to mistakenly choose `plan` when the question specifically asks about configuration file syntax and consistency.
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
✓
terraform validate
The `terraform validate` command checks the syntax and internal consistency of Terraform configuration files, ensuring that the code is syntactically valid and that references between resources, data sources, and variables are correct. It does not access remote state or providers, making it a fast, offline validation step. This is the correct command for verifying configuration correctness before applying changes.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
terraform validate
Why this is correct
The `terraform validate` command performs a static analysis of the configuration files in the current directory, checking for syntactical correctness and internal consistency. It ensures that all required arguments are provided, variable types match, and provider configurations are properly structured, all without interacting with any remote state or cloud providers. This early detection mechanism is crucial for identifying configuration errors before attempting a `plan` or `apply`, making it the definitive tool for syntax and consistency checks.
- ✗
terraform fmt
Why it's wrong here
The `terraform fmt` command is solely responsible for rewriting Terraform configuration files to a canonical format and style. Its primary purpose is to improve readability and maintain consistency across a codebase, not to perform any form of syntax validation. While it can correct minor structural issues by reformatting, it will not report errors for syntactically incorrect or logically invalid configurations, distinguishing it clearly from a validation tool.
- ✗
terraform plan
Why it's wrong here
The `terraform plan` command generates an execution plan, showing what actions Terraform will take to achieve the desired state defined in the configuration. This process involves refreshing the state, comparing it to the configuration, and proposing resource creations, updates, or deletions. Although `plan` will fail if the configuration contains severe syntax errors, its core function is to preview infrastructure changes, not to serve as a dedicated syntax validation tool, which `validate` handles more efficiently and without requiring provider authentication or state access.
- ✗
terraform graph
Why it's wrong here
The `terraform graph` command generates a visual representation of the dependency graph for the resources defined in the configuration. This output, typically in DOT format, illustrates the order in which Terraform would create or modify resources based on their interdependencies. Its utility lies in helping users understand complex configurations and potential parallelization, rather than checking for syntax errors or logical consistency, which are the domain of `terraform validate`.
Go deeper
Related to this question
About these practice questions
Courseiva writes every TF-004 question from scratch — 428 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
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.