Study guide

1.3 004 Changes, Terraform 1.12, and Study Plan

HashiCorp Certified: Terraform Associate 004

Track your progress as you read

Finished sections get a check mark.

1 Introduction & Exam Overview

1.1 Current Exam Facts 1.2 Format, Delivery, Retakes, and Recertification 1.3 004 Changes, Terraform 1.12, and Study Plan

2 Infrastructure as Code with Terraform

2.1 What Infrastructure as Code Is 2.2 Advantages of IaC Patterns 2.3 Multi-Cloud, Hybrid, and Service-Agnostic Workflows

3 Terraform Fundamentals: Providers & State

3.1 Install and Version Terraform Providers 3.2 How Terraform Uses Providers 3.3 Configuration with Multiple Providers 3.4 How Terraform Uses and Manages State

4 Core Terraform Workflow: Init & Validate

4.1 The Terraform Write–Plan–Apply Workflow 4.2 Initialize a Working Directory 4.3 Validate a Configuration

5 Plan, Apply, Destroy, and Formatting

5.1 Generate and Review an Execution Plan 5.2 Apply Changes to Infrastructure 5.3 Destroy Terraform-Managed Infrastructure 5.4 Formatting and Style Adjustments

6 Resources, Data Sources, and References

6.1 Resource Blocks vs Data Blocks 6.2 Resource Attributes and Cross-Resource References 6.3 Resource Addressing and Interpolation Patterns

7 Variables, Outputs, and Complex Types

7.1 Input Variables, tfvars, and Precedence 7.2 Output Values 7.3 Complex Types: list, map, object, tuple, set

8 Dynamic Configuration and Dependencies

8.1 Expressions, count, for_each, and dynamic Blocks 8.2 Built-in Functions 8.3 Dependencies, depends_on, and Lifecycle Rules

9 Conditions, Secrets, and Sensitive Data

9.1 Custom Conditions: validation, precondition, postcondition, check 9.2 Sensitive Data Handling 9.3 Vault, Ephemeral Values, and Write-Only Arguments

10 Terraform Modules

10.1 How Terraform Sources Modules 10.2 Variable Scope within Modules 10.3 Using Modules in Configuration 10.4 Managing Module Versions

11 Terraform State Management

11.1 The Local Backend 11.2 State Locking 11.3 Remote State and the backend Block 11.4 Resource Drift and State Operations

12 Maintain Infrastructure with Terraform

12.1 Import Existing Infrastructure 12.2 Inspect State with the CLI 12.3 Verbose Logging and Diagnostics

13 HCP Terraform

13.1 Create Infrastructure with HCP Terraform 13.2 Collaboration and Governance Features 13.3 Workspaces and Projects 13.4 HCP Terraform Integrations

1.3 004 Changes, Terraform 1.12, and Study Plan

Key Takeaways Explain This Topic AI

Terraform Associate 004 tests Terraform 1.12 and includes HCP Terraform content; it is not a 003 content clone.

HashiCorp's official 003-to-004 update summary adds 4f depends_on and create_before_destroy lifecycle rules, 4g custom conditions, 4h ephemeral values and write-only arguments, and 8c HCP Terraform workspaces and projects.

The 004 exam has eight official objective groups and 37 lettered objectives; HashiCorp does not publish 004 domain weights.

Study from HashiCorp's 004 learning path and exam content list rather than a guessed percentage split.

Associate (004) is a 1-hour multiple-choice exam at $70.50 without a free retake; Terraform Authoring and Operations Professional is a 4-hour lab-based exam at $295 with a free retake included.

Last updated: August 2026

Why the 003-to-004 delta is an exam topic

If your notes still say Terraform Associate 003, you are studying the wrong product version and the wrong objective list. HashiCorp's Infrastructure Automation page publishes an explicit content differences summary between 003 and 004. The 004 exam tests Terraform version 1.12 , includes HCP Terraform content , and adds four new topics . Those four topics are not optional sidebars. They are named with official letters you will see again in later chapters:

  • 4f — depends_on and create_before_destroy lifecycle rules
  • 4g — validate configuration using custom conditions
  • 4h — ephemeral values and write-only arguments
  • 8c — describe how to organize and use HCP Terraform workspaces and projects

Read that list next to the current 004 exam-objectives table, because HashiCorp uses slightly broader wording on some letters. The live objectives table says 4f is "Define resource dependencies in configuration," 4g is "Validate configuration using custom conditions," and 4h is "Understand best practices for managing sensitive data, including secrets management with Vault." The update summary is HashiCorp telling you what is new for 004. Ephemeral values and write-only arguments are Terraform 1.12 sensitive-data features; they sit inside the 4h sensitive-data story with Vault and sensitive values. depends_on and create_before_destroy sit inside 4f resource dependencies and lifecycle. Do not skip either wording.

Provider-specific cloud trivia is not the exam. HashiCorp's 004 exam content list says tutorials may use a specific cloud to teach an objective, but provider-specific knowledge is not necessary . You are tested on Terraform behavior: HCL, providers as plugins, state, the core workflow, modules, drift, import, logging, and HCP Terraform organization.

The eight official 004 objective groups

HashiCorp groups 004 into eight numbered objectives. There are 37 lettered sub-objectives . HashiCorp does not publish 004 domain weights. Any site that assigns "25% to configuration" or similar is guessing. Study every letter.

Group Official title What 004 is really asking

1 Infrastructure as Code (IaC) with Terraform What IaC is, why the pattern helps, and how Terraform stays multi-cloud, hybrid, and service-agnostic through providers

2 Terraform fundamentals Install and version providers, write multi-provider configuration, and explain how Terraform uses state

3 Core Terraform workflow Write, init , validate , plan , apply , destroy , and fmt

4 Terraform configuration Resources versus data, references, variables and outputs, complex types, expressions and functions, dependencies and lifecycle, custom conditions, and sensitive data including Vault, ephemeral values, and write-only arguments

5 Terraform modules Module sources, variable scope, using modules, and module versions

6 Terraform state management Local backend, state locking, remote state with the backend block, drift, and state operations

7 Maintain infrastructure with Terraform Import existing infrastructure, inspect state with the CLI, and use verbose logging

8 HCP Terraform Create infrastructure in HCP Terraform, collaboration and governance, workspaces and projects, and HCP Terraform integration

Group 4 is the densest block and contains three of the four official new topics. Group 8 is where 003 notes go stale fastest because 8c is new and the product name is now HCP Terraform . If you only review Community edition CLI commands, you are leaving an entire official group unstudied.

A practical 004 study sequence

HashiCorp's own 004 learning path is ordered by complexity and is the sequence this guide follows. Use the path at developer.hashicorp.com/terraform/tutorials/certification-004 and the objective-to-doc map at developer.hashicorp.com/terraform/tutorials/certification-004/associate-review-004 . HashiCorp also publishes sample questions on that 004 tutorial track so you can see item style; those samples are not a substitute for covering every letter.

Recommended sequence:

IaC and Terraform's role (group 1). Be able to explain declarative infrastructure, repeatability, and why one language can drive many providers.

Providers and state fundamentals (group 2). Practice required_providers , the dependency lock file, provider aliases, and the purpose of state. You cannot understand plan output without state.

Core workflow (group 3). Run terraform init , fmt , validate , plan , apply , and destroy until the order is automatic. Know what each command changes and what it does not.

Configuration language, including the new 004 letters (group 4). Write resources and data sources, references, variables, outputs, and complex types. Then deliberately practice depends_on , lifecycle { create_before_destroy = true } , validation / precondition / postcondition / check blocks, and Terraform 1.12 sensitive-data features: sensitive values, Vault injection, ephemeral values, and write-only arguments.

Modules (group 5). Call a registry module with a version constraint and build a small local module so you can explain source, scope, and outputs.

State management (group 6). Move from the local backend to a remote backend, watch a lock, and repair drift with refresh-only and state commands — without inventing a rewrite of production state on the exam.

Maintain (group 7). Import an existing object, list and show state, and know when TF_LOG is the right debugging switch.

HCP Terraform last, but not as an afterthought (group 8). Create a workspace, place it in a project , describe teams, policy, variable sets, VCS or CLI-driven runs, and the cloud / login integration path.

A one-week crash course that only reads group 3 CLI help will fail group 4 and group 8 items. A hosted-only crash course that never runs the CLI locally will fail groups 2, 3, 6, and 7. Budget time for both Community edition and HCP Terraform, because HashiCorp wrote both into the audience statement.

Hands-on minimum for a first attempt:

One local Community edition workspace that uses at least two providers or a provider plus a data source.

One explicit depends_on and one create_before_destroy lifecycle experiment you can explain.

One custom condition that fails plan or apply on purpose.

One sensitive or write-only argument path you can describe without pasting a secret into state.

One remote backend or HCP Terraform migration so you have seen locking and remote operations.

One HCP Terraform project that contains more than one workspace.

Keep Associate distinct from Professional

Terraform Authoring and Operations Professional is a different credential. It is lab-based and multiple choice , online proctored , 4 hours with a 15-minute break , $295 USD plus taxes and fees , English, 2-year expiration, and it includes a free retake . It tests Terraform 1.6 , not 1.12. HashiCorp strongly recommends Associate or equivalent experience, plus Linux, cloud credentials, and comfort with HCL, YAML, JSON, and CSV. Passing Professional can recertify an unexpired Associate badge, but it is not a harder form of the same one-hour exam.

Do not study Professional lab tasks as if they were 004 items, and do not skip 004's HCP Terraform letters because you plan to take Professional later. 004 still asks you to identify Enterprise versus Community features and to describe HCP Terraform workspaces and projects.

Study traps for 004 specifically:

Using 003 flashcards that never mention ephemeral values, write-only arguments, custom conditions, or HCP projects.

Inventing domain weights and ignoring a short official letter such as 7c verbose logging.

Treating Vault, sensitive , ephemeral, and write-only as four unrelated products instead of one 4h sensitive-data family.

Memorizing AWS resource arguments because a HashiCorp tutorial used AWS. The exam wants the Terraform construct, not the cloud SKU.

Walking into Associate expecting a 4-hour lab or a free retake.

If you can explain each of the eight group titles, name the four official new 004 topics, and run the core workflow against Terraform 1.12 without notes, you are ready for the rest of this guide. Official logistics and objectives live on the Infrastructure Automation page; official study order lives on the 004 tutorial path.

Loading diagram... Official 004 study sequence from HashiCorp's learning path

Official published duration and price: Associate 004 vs Professional