HashiCorpAssociate level

HashiCorp Terraform Associate (004) exam dumps: 223 free HashiCorp Terraform Associate (004) practice questions

Free HashiCorp Terraform Associate (004) practice questions for the Terraform Associate 004 exam, with the correct answer and a full explanation for every option. Read the first 10 below, browse all 223 by number, or take a timed practice exam.

Question bank last updated June 2026

Free HashiCorp Terraform Associate (004) practice questions

Questions 1 to 10 of 223

Pick an answer before you open the explanation. Each question also has its own page with a permalink.

HashiCorp Terraform Associate (004) Question 1

Single answer1 Infrastructure as Code (IaC) with Terraform

A company has been creating cloud infrastructure manually through a provider console for several years. Different teams name resources inconsistently, and no reliable record exists of what was changed or when. The company wants to adopt Terraform as its Infrastructure as Code (IaC) tool so that future changes are repeatable, reviewable, and less error-prone across development, staging, and production environments. Which approach best addresses this goal?

  1. A

    Use Terraform configuration files to declare the desired infrastructure, store the code in version control, and apply changes through a reviewed workflow.

  2. B

    Continue making infrastructure changes in the provider console, then run terraform refresh to convert those manual changes into reusable Terraform code.

  3. C

    Generate a Terraform execution plan once, save the output, and use that saved plan as the long-term source of truth for infrastructure documentation.

  4. D

    Use Terraform only to provision new environments, but allow ongoing changes in the provider console because Terraform can automatically reconcile all manual edits later.

Show answer and explanation

Correct answer: A

Explanation

Terraform's value as an Infrastructure as Code tool comes from declaring infrastructure in configuration files and managing changes through a controlled workflow. In practice, teams store Terraform code in version control, review proposed changes, and use terraform plan and terraform apply to make infrastructure changes predictably. This creates consistency across environments, supports collaboration, and provides an auditable history of infrastructure changes. By contrast, manual console changes create drift and reduce reliability. HashiCorp documentation emphasizes Terraform's declarative workflow, execution planning, and use of configuration as the desired-state definition, while state tracks resource bindings rather than replacing configuration as the source of truth.

  • A. Correct.

    Correct. This is the core IaC practice Terraform is designed to support. Terraform configurations declaratively define the desired end state of infrastructure in code, which can be versioned, peer-reviewed, and reused across environments. Storing configuration in version control provides change history and supports collaborative workflows such as pull requests and approvals. This directly addresses repeatability, auditability, and reduced configuration drift.

  • B. Incorrect.

    Incorrect. terraform refresh updates Terraform state with information from real infrastructure, but it does not generate or reconstruct complete reusable Terraform configuration from manual changes. Relying on manual console changes defeats the purpose of IaC and increases drift between code, state, and actual infrastructure.

  • C. Incorrect.

    Incorrect. A Terraform plan is a point-in-time preview of proposed actions, not the authoritative long-term definition of infrastructure. The source of truth in Terraform-based IaC is the configuration files, along with state for resource mapping. A saved plan file is not intended to replace version-controlled configuration or serve as ongoing infrastructure documentation.

  • D. Incorrect.

    Incorrect. Allowing continued manual console changes undermines Terraform's IaC model and introduces configuration drift. Terraform can detect differences between configuration and existing infrastructure during planning, but it is not a justification for unmanaged manual updates. Best practice is to make changes through Terraform so the code remains the authoritative definition.

HashiCorp Terraform Associate (004) Question 2

Single answer1 Infrastructure as Code (IaC) with Terraform

A company has been creating cloud infrastructure manually through a provider console, and environments are frequently inconsistent. The platform team wants to adopt Terraform so infrastructure changes are reviewed in version control, repeatable across dev/stage/prod, and less prone to configuration drift caused by ad hoc manual changes. Which approach best reflects Terraform's Infrastructure as Code (IaC) model for this situation?

  1. A

    Define the desired infrastructure in Terraform configuration files, store them in version control, review changes through pull requests, and apply the configuration to create or update resources toward the declared end state.

  2. B

    Use Terraform only to document the current manual setup after engineers make changes in the cloud console, since Terraform is primarily a reporting tool for existing infrastructure.

  3. C

    Write shell scripts that call the cloud provider CLI for each resource change, because Terraform is not intended to manage infrastructure lifecycle after initial provisioning.

  4. D

    Run terraform apply once to create the initial environments, then continue making routine updates manually in the provider console to avoid changing Terraform configuration too often.

Show answer and explanation

Correct answer: A

Explanation

Terraform is an Infrastructure as Code tool built around a declarative workflow: you describe the desired infrastructure in configuration files, Terraform compares that desired state with the current state, shows an execution plan, and then applies the necessary changes. In practice, teams typically store Terraform code in version control and use code review processes to approve infrastructure changes before applying them. This improves consistency across environments, repeatability, auditability, and team collaboration. HashiCorp documentation emphasizes Terraform's use of declarative configuration, execution plans, and state to manage infrastructure lifecycle. In contrast, relying on manual console changes or imperative scripts increases drift and reduces the benefits of IaC.

  • A. Correct.

    Correct. This is the core IaC workflow Terraform is designed for: declare the desired end state in configuration, keep that configuration in version control, review proposed changes, and use Terraform to reconcile real infrastructure with the configuration. This supports repeatability, collaboration, and reduced drift across environments.

  • B. Incorrect.

    Incorrect. Terraform is not primarily a reporting or documentation tool. While it can import or discover existing infrastructure in some workflows, its main purpose is to manage infrastructure as code by defining and applying desired state. Treating it only as documentation does not solve consistency or drift problems.

  • C. Incorrect.

    Incorrect. Shell scripts and provider CLIs can automate tasks, but they do not provide Terraform's declarative model, dependency graph, execution planning, and state tracking. This option reflects an imperative scripting approach rather than Terraform's IaC model.

  • D. Incorrect.

    Incorrect. Using Terraform only for initial provisioning but then making ongoing manual console changes undermines IaC practices and reintroduces configuration drift. A key benefit of Terraform is ongoing lifecycle management through code, not just one-time creation.

HashiCorp Terraform Associate (004) Question 3

Single answer1 Infrastructure as Code (IaC) with Terraform

A platform team has been manually creating cloud networking components for each application environment, which has led to configuration drift and inconsistent naming. They want to adopt Infrastructure as Code using Terraform so that developers can provision identical environments from version-controlled definitions and review proposed changes before anything is created. Which approach best meets this goal?

  1. A

    Define the infrastructure in Terraform configuration files, store them in version control, and use terraform plan before terraform apply to review the proposed changes

  2. B

    Use Terraform only to document the existing manually created infrastructure, but continue making production changes directly in the cloud console for speed

  3. C

    Write shell scripts that call cloud provider CLIs to create resources, because scripts provide the same dependency graph and execution planning as Terraform

  4. D

    Create the initial infrastructure with Terraform once, then stop using Terraform and make future updates manually to avoid state management complexity

Show answer and explanation

Correct answer: A

Explanation

Terraform is designed to implement Infrastructure as Code by defining infrastructure in declarative configuration files that can be versioned, reviewed, and reused. A standard workflow is to store .tf files in version control, run terraform plan to preview proposed actions, and then run terraform apply to make approved changes. This approach improves consistency across environments, reduces manual error, and enables collaboration through code review. In Terraform best practices and HashiCorp documentation, the plan-and-apply workflow is central to safely managing infrastructure changes, while keeping Terraform as the authoritative source of infrastructure helps prevent drift.

  • A. Correct.

    Correct. This is the core Infrastructure as Code workflow with Terraform. Terraform configurations declaratively describe the desired infrastructure, version control provides change history and collaboration, and terraform plan shows the execution plan before changes are applied. This supports repeatability, peer review, and reduced drift across environments.

  • B. Incorrect.

    Incorrect. Terraform is intended to manage infrastructure lifecycle, not just document it. Continuing to make changes manually in the cloud console reintroduces configuration drift and undermines the benefits of IaC, such as consistency, reproducibility, and auditable change control.

  • C. Incorrect.

    Incorrect. While shell scripts and provider CLIs can automate tasks, they do not provide Terraform's declarative model, built-in dependency graph, state tracking, and detailed execution plan in the same way. This option reflects a common misconception that any automation is equivalent to Infrastructure as Code with Terraform.

  • D. Incorrect.

    Incorrect. Creating infrastructure once with Terraform but then switching back to manual updates defeats the purpose of IaC. Terraform is most valuable when it remains the system of record for ongoing infrastructure changes. Avoiding Terraform because of state management complexity increases the likelihood of unmanaged drift and inconsistent environments.

HashiCorp Terraform Associate (004) Question 4

Single answer1 Infrastructure as Code (IaC) with Terraform

A platform team currently provisions cloud resources manually through a provider's web console. They frequently see configuration drift between environments, incomplete documentation of changes, and slow onboarding for new engineers. The team wants to adopt Terraform primarily to improve consistency and make infrastructure changes easier to review before deployment. Which Terraform capability most directly addresses this goal?

  1. A

    Terraform stores application source code and binaries in the state file so teams can reproduce full environments from one artifact.

  2. B

    Terraform lets teams define infrastructure in declarative configuration files that can be version controlled, reviewed, and executed repeatedly to create consistent environments.

  3. C

    Terraform automatically prevents all out-of-band changes made directly in the cloud console, so drift cannot occur once Terraform is adopted.

  4. D

    Terraform replaces the need for provider APIs by managing infrastructure directly from local configuration files without communicating with the target platform.

Show answer and explanation

Correct answer: B

Explanation

Terraform's primary IaC benefit is that infrastructure is defined declaratively in configuration files, enabling version control, peer review, repeatable provisioning, and clearer change management. In practice, teams use commands such as terraform plan to preview changes and terraform apply to enact them, making infrastructure changes more predictable than manual console work. HashiCorp documentation consistently emphasizes infrastructure as code, execution plans, and resource graphs as key Terraform concepts. State is important, but it is not the main feature described in this scenario; it supports Terraform's operation rather than serving as a replacement for version-controlled configuration. Likewise, Terraform can identify differences between configuration and real infrastructure, but it does not inherently block manual changes outside Terraform.

  • A. Incorrect.

    Incorrect. Terraform state does not store application source code and binaries as a packaging mechanism for full environments. State primarily maps Terraform-managed resources to real infrastructure objects and tracks metadata needed for planning and applying changes. A common misconception is that state is a general-purpose snapshot of everything required to rebuild an environment.

  • B. Correct.

    Correct. This is the core Infrastructure as Code value proposition of Terraform. Terraform uses declarative configuration files to describe desired infrastructure, which can be stored in version control, reviewed through normal code-review workflows, and applied repeatedly across environments. This improves consistency, auditability, and collaboration, which directly addresses the team's problems with manual console changes and poor change visibility.

  • C. Incorrect.

    Incorrect. Terraform can help detect drift during planning and refresh operations, but it does not automatically prevent all manual changes in the provider console. Organizations typically reduce drift through process controls, IAM restrictions, and by treating Terraform as the authoritative workflow. Candidates may choose this option because Terraform is associated with drift management, but prevention of all out-of-band changes is not a built-in guarantee.

  • D. Incorrect.

    Incorrect. Terraform communicates with infrastructure platforms through provider plugins that use the target platform's APIs. It does not bypass provider APIs. This option reflects a misunderstanding of how Terraform interacts with cloud and service providers.

HashiCorp Terraform Associate (004) Question 5

Single answer1 Infrastructure as Code (IaC) with Terraform

A platform team manages its AWS networking stack with Terraform. Today, developers sometimes create VPCs and subnets manually in the AWS console, and the resulting environments are inconsistent across teams. The platform lead wants a repeatable approach where the desired infrastructure is defined in version-controlled files, reviewed through pull requests, and then provisioned consistently in multiple environments using the same workflow. Which Terraform practice best addresses this requirement?

  1. A

    Define the networking resources in Terraform configuration files, store them in version control, and use Terraform plans and applies to provision the environments.

  2. B

    Use the AWS console to create the initial networking resources, then periodically export screenshots and documentation so teams can reproduce the setup manually.

  3. C

    Write shell scripts that call the AWS CLI to create each resource, because scripts are easier to change than declarative Terraform configuration.

  4. D

    Create the resources once in a shared AWS account and tell application teams to copy the settings manually into their own accounts when needed.

Show answer and explanation

Correct answer: A

Explanation

The best answer is to define infrastructure in Terraform configuration files and manage those files in version control. This is the essence of Infrastructure as Code: infrastructure is described as code, reviewed like application code, and provisioned through a repeatable workflow. In Terraform, practitioners typically write .tf files, run terraform plan to preview changes, and run terraform apply to create or update resources. This approach improves consistency across environments, supports collaboration through pull requests, and reduces manual errors and drift. HashiCorp documentation and Terraform best practices consistently emphasize declarative configuration, version control, and repeatable execution workflows as key benefits of using Terraform for IaC.

  • A. Correct.

    Correct. This is the core Infrastructure as Code workflow with Terraform. Terraform configuration files define the desired state declaratively, version control provides change history and code review, and Terraform plan/apply enables consistent provisioning across environments. This directly addresses repeatability, collaboration, and reduced configuration drift.

  • B. Incorrect.

    Incorrect. Documentation and screenshots do not provide executable, versioned infrastructure definitions. Manual recreation is error-prone and does not solve consistency, auditability, or repeatability problems that IaC is designed to address.

  • C. Incorrect.

    Incorrect. AWS CLI scripts can automate tasks, but they are typically imperative rather than declarative and do not provide Terraform's state management, execution plan, dependency graph, and standardized IaC workflow. A candidate might choose this because scripts do automate infrastructure, but they do not best satisfy the requirement for consistent declarative IaC with Terraform.

  • D. Incorrect.

    Incorrect. Manually copying settings between accounts is not Infrastructure as Code and increases the risk of drift and human error. It also makes review, reuse, and repeatable deployment difficult.

HashiCorp Terraform Associate (004) Question 6

Single answer1a Explain what IaC is

A company has been creating cloud infrastructure manually through the provider's web console. After several production incidents, the platform team decides to adopt Terraform so that development, staging, and production environments can be created consistently and reviewed before changes are made. Which outcome best demonstrates the core value of Infrastructure as Code (IaC) in this scenario?

  1. A

    Infrastructure definitions are stored in version-controlled files, allowing the team to review, reuse, and apply the same desired configuration across environments.

  2. B

    Terraform replaces the cloud provider's APIs, so infrastructure changes no longer depend on the provider's platform.

  3. C

    IaC guarantees that infrastructure provisioning will succeed without any manual decisions or approvals.

  4. D

    Infrastructure is configured only after resources are manually created, which reduces the need for planning changes in advance.

Show answer and explanation

Correct answer: A

Explanation

Infrastructure as Code (IaC) means defining and managing infrastructure through machine-readable configuration files rather than manual point-and-click actions. In Terraform, this is typically done with declarative configuration that expresses the desired end state. The practical benefits include consistency across environments, repeatability, version control, peer review, and the ability to preview changes with a plan before applying them. This is why option 1 best matches the scenario. HashiCorp documentation describes Terraform as infrastructure as code that allows you to define both cloud and on-prem resources in configuration files, then provision and manage them in a consistent workflow. These practices also align with common DevOps and platform engineering best practices for reducing configuration drift and improving auditability.

  • A. Correct.

    Correct. This describes the central idea of IaC: infrastructure is defined in machine-readable configuration files and treated similarly to application code. With Terraform, those files can be version controlled, peer reviewed, reused across environments, and applied consistently. This directly addresses the team's goals of consistency, repeatability, and change visibility.

  • B. Incorrect.

    Incorrect. Terraform does not replace provider APIs. It uses provider plugins to interact with cloud and other service APIs. A common misconception is that IaC bypasses the underlying platform, but Terraform depends on those APIs to create, update, and destroy infrastructure.

  • C. Incorrect.

    Incorrect. IaC improves automation and repeatability, but it does not guarantee successful provisioning in every case. Failures can still occur due to invalid configuration, permissions issues, quota limits, unavailable services, or policy constraints. Manual approvals may still be part of the team's workflow.

  • D. Incorrect.

    Incorrect. This is closer to manual infrastructure management than IaC. In IaC, the desired infrastructure is declared before creation or modification so changes can be planned, reviewed, and applied in a controlled way. Creating resources manually first undermines consistency and traceability.

HashiCorp Terraform Associate (004) Question 7

Single answer1a Explain what IaC is

A company has been creating cloud infrastructure manually through a provider's web console. After several production incidents, the operations team finds that environments are inconsistent, changes are hard to review, and rebuilding a failed environment takes too long. The team decides to adopt Terraform. Which outcome best demonstrates the core value of Infrastructure as Code (IaC) in this scenario?

  1. A

    Infrastructure definitions are stored as version-controlled configuration files so teams can review, reuse, and consistently provision environments.

  2. B

    Terraform automatically prevents all configuration drift, even when engineers continue making manual changes in the cloud console.

  3. C

    Infrastructure is created faster because Terraform replaces the need to understand provider resources or desired state modeling.

  4. D

    Terraform converts existing manually created infrastructure into managed code without any import or refactoring work.

Show answer and explanation

Correct answer: A

Explanation

Infrastructure as Code (IaC) means defining and managing infrastructure using machine-readable configuration files rather than manual processes. In this scenario, the main problem is inconsistency, lack of reviewability, and slow recovery. Terraform addresses this by allowing infrastructure definitions to be written as code, stored in version control, peer reviewed, reused across environments, and applied consistently. This is the core operational benefit of IaC. HashiCorp Terraform documentation emphasizes declarative configuration, execution plans, and repeatable provisioning as key concepts. While Terraform can help identify differences between desired and actual infrastructure, it does not guarantee prevention of drift caused by out-of-band manual changes, and it does not automatically convert existing infrastructure into code without import and configuration work. Best practice is to keep infrastructure changes in code, use version control, and treat infrastructure updates with the same review discipline as application changes.

  • A. Correct.

    Correct. This describes the central idea of IaC: infrastructure is defined in machine-readable files that can be versioned, reviewed, reused, and applied repeatedly to create consistent environments. In Terraform, these declarative configuration files allow teams to manage infrastructure similarly to application code, improving repeatability and collaboration.

  • B. Incorrect.

    Incorrect. IaC helps detect and reduce drift, but Terraform does not automatically prevent all drift if people keep changing resources manually outside the workflow. Manual changes can still cause the real infrastructure to differ from the configuration, and Terraform can only identify and reconcile that during plan/apply operations if the resources are managed correctly.

  • C. Incorrect.

    Incorrect. Terraform can improve speed and consistency, but it does not remove the need to understand cloud resources or how to model desired infrastructure state. A common misconception is that IaC tools eliminate infrastructure knowledge requirements; in practice, they encode that knowledge into reusable configuration.

  • D. Incorrect.

    Incorrect. Terraform can manage existing infrastructure, but typically that requires importing resources into state and ensuring the configuration matches the real infrastructure. IaC is not an automatic conversion process for unmanaged manual environments.

HashiCorp Terraform Associate (004) Question 8

Single answer1a Explain what IaC is

A company has been creating cloud networking, virtual machines, and storage accounts manually through a provider web console. After several production outages, the operations team discovers that environments are inconsistent because engineers often forget small configuration steps when rebuilding infrastructure. The team decides to adopt Terraform. Which outcome best demonstrates the core value of Infrastructure as Code (IaC) in this situation?

  1. A

    Terraform allows the team to define infrastructure in version-controlled configuration files so environments can be created consistently and repeatedly.

  2. B

    Terraform automatically eliminates the need for engineers to review infrastructure changes because the code is self-validating.

  3. C

    Terraform converts all existing manually created infrastructure into code without requiring planning, import, or state management.

  4. D

    Terraform ensures every infrastructure deployment is identical even if engineers make untracked manual changes outside Terraform.

Show answer and explanation

Correct answer: A

Explanation

Infrastructure as Code means managing and provisioning infrastructure through machine-readable configuration files rather than manual console actions. In Terraform, this is typically done with declarative configuration that defines the desired end state. The major benefit in this scenario is repeatability and consistency: the same code can be applied to recreate environments with fewer human errors, and the code can be version-controlled and reviewed. HashiCorp documentation and Terraform best practices emphasize declarative configuration, execution plans, and state as key parts of managing infrastructure safely and predictably. However, IaC does not remove the need for code review, does not automatically reverse-engineer all existing infrastructure without effort, and does not prevent drift if manual changes continue outside the IaC workflow.

  • A. Correct.

    Correct. This is the central idea of IaC: infrastructure is described in declarative configuration files that can be stored in version control, reviewed, reused, and applied repeatedly. In this scenario, using Terraform configurations helps reduce drift caused by forgotten manual steps and makes environment creation more consistent.

  • B. Incorrect.

    Incorrect. While IaC improves reviewability because changes can be proposed and reviewed as code, Terraform does not remove the need for human review. Validation and planning help detect issues, but organizations still use change review processes, pull requests, and approvals as best practices.

  • C. Incorrect.

    Incorrect. Terraform does not automatically convert all manually created infrastructure into code with no effort. Existing resources typically require importing into state and writing configuration that matches the desired infrastructure. Planning and state management remain important parts of adopting Terraform for existing environments.

  • D. Incorrect.

    Incorrect. IaC helps create consistency, but Terraform cannot guarantee identical deployments if people continue making manual changes outside of Terraform. Those out-of-band changes can introduce configuration drift unless they are detected and reconciled.

HashiCorp Terraform Associate (004) Question 9

Single answer1a Explain what IaC is

A company provisions development cloud environments by following a wiki with manual steps in the cloud console. Over time, teams notice that environments differ from one another, auditing changes is difficult, and rebuilding a failed environment takes hours. The platform team proposes using Terraform to define the environments in configuration files stored in version control and applied through a standard workflow. Which outcome best demonstrates the primary value of Infrastructure as Code (IaC) in this scenario?

  1. A

    It allows the team to create and manage infrastructure through declarative, versioned definitions so environments can be reproduced consistently and changes can be reviewed.

  2. B

    It removes the need for change approval processes because infrastructure changes made with Terraform are inherently safe.

  3. C

    It guarantees that all deployed infrastructure will be cost-optimized because Terraform automatically selects the cheapest resources.

  4. D

    It replaces the need to understand cloud infrastructure because Terraform decides the correct architecture without human input.

Show answer and explanation

Correct answer: A

Explanation

Infrastructure as Code (IaC) means managing and provisioning infrastructure using configuration files rather than manual processes. In Terraform, this is typically done with declarative configuration that describes the desired end state. The key practical benefits in this scenario are consistency, repeatability, versioning, and auditability. By storing Terraform configuration in version control, teams can review changes, track history, and reproduce environments reliably, reducing drift caused by manual console changes. This aligns with Terraform documentation and HashiCorp guidance that emphasize codifying infrastructure, treating it like application code, and using workflows such as plan and apply to safely manage changes.

  • A. Correct.

    Correct. This is the core idea of IaC: infrastructure is defined in machine-readable configuration files and managed using software development practices such as version control, code review, and repeatable execution. In this scenario, that directly addresses configuration drift, inconsistent environments, and slow rebuilds by making infrastructure reproducible and auditable.

  • B. Incorrect.

    Incorrect. IaC improves consistency and traceability, but it does not eliminate the need for governance, approvals, or review. In practice, many organizations integrate Terraform into controlled workflows specifically so infrastructure changes can be reviewed and approved before apply.

  • C. Incorrect.

    Incorrect. Terraform is not a cost-optimization engine and does not automatically choose the cheapest resources. Teams must still design architectures and select resource types intentionally. IaC can help standardize approved patterns, but cost optimization is not guaranteed simply by using Terraform.

  • D. Incorrect.

    Incorrect. Terraform helps implement infrastructure as code, but it does not replace architectural knowledge. Practitioners still need to understand provider resources, dependencies, security requirements, and design decisions. IaC automates provisioning and management; it does not autonomously design correct systems.

HashiCorp Terraform Associate (004) Question 10

Single answer1a Explain what IaC is

A company has been creating cloud infrastructure manually through the provider's web console. After several outages, the platform team discovers that development, staging, and production are configured differently, and no one can reliably reproduce the environments. The team proposes using Terraform to manage infrastructure going forward. Which outcome best demonstrates the core value of Infrastructure as Code (IaC) in this situation?

  1. A

    Engineers can define infrastructure in version-controlled configuration files so environments can be created and updated consistently and repeatedly.

  2. B

    Terraform will automatically prevent all configuration drift without any review, planning, or re-application of changes.

  3. C

    Using Terraform means administrators no longer need to understand the underlying cloud resources because Terraform manages them entirely.

  4. D

    Infrastructure definitions stored in Terraform state replace the need to keep configuration files in source control.

Show answer and explanation

Correct answer: A

Explanation

Infrastructure as Code means defining and managing infrastructure through declarative or programmatic configuration files instead of manual point-and-click processes. In Terraform, this is typically done with configuration files that can be versioned, reviewed, reused, and applied consistently. In the scenario, the main IaC benefit is reproducibility and consistency across environments, which reduces errors caused by manual configuration differences. HashiCorp Terraform documentation emphasizes that Terraform lets you define infrastructure in human-readable configuration files, version them, reuse them, and share them. Terraform state supports lifecycle management, but it does not replace configuration files or source control. Likewise, Terraform can help identify drift, but IaC is not magic automation that removes the need for review, operational knowledge, or disciplined workflows.

  • A. Correct.

    Correct. This is the essence of IaC: infrastructure is described in machine-readable files and managed through a repeatable workflow. Storing Terraform configuration in version control allows teams to review, track, and reproduce infrastructure changes across environments. This directly addresses the scenario's problems of inconsistent environments and unreproducible manual changes.

  • B. Incorrect.

    Incorrect. Terraform helps detect differences between the desired configuration and actual infrastructure, but it does not automatically prevent all drift on its own. Teams still need to run workflows such as plan and apply, and out-of-band changes can still occur if people modify resources manually.

  • C. Incorrect.

    Incorrect. IaC does not remove the need to understand the infrastructure being managed. Teams still need to know what resources they are provisioning, their dependencies, limits, and operational implications. Terraform is a tool for defining and managing infrastructure, not a substitute for infrastructure knowledge.

  • D. Incorrect.

    Incorrect. Terraform state is not a replacement for source-controlled configuration. The state file records mappings between real resources and the configuration, while the configuration files are the authoritative human-maintained definition of desired infrastructure. Best practice is to store configuration in version control and manage state securely, often remotely.

Timed practice exam

Take a HashiCorp Terraform Associate (004) practice test under exam conditions

70 questions in 60 minutes, drawn from this bank, with a score report and a per-question review when you finish.

Start timed exam

What the HashiCorp Terraform Associate (004) exam covers

Official Terraform Associate 004 exam domains and weightings.

  • Understand Infrastructure as Code Concepts

    15% of exam

  • Understand Terraform's Purpose

    10% of exam

  • Understand Terraform Basics

    20% of exam

  • Use the Terraform CLI

    15% of exam

  • Interact with Terraform Modules

    15% of exam

  • Navigate Terraform Workflow

    15% of exam

  • Implement and Maintain State

    10% of exam

All 223 HashiCorp Terraform Associate (004) practice questions

Every question has a page with the answer and explanation. Numbers are stable, so you can bookmark or share them.

  1. 1.A company has been creating cloud infrastructure manually through a provider console for several years....
  2. 2.A company has been creating cloud infrastructure manually through a provider console, and environments are...
  3. 3.A platform team has been manually creating cloud networking components for each application environment,...
  4. 4.A platform team currently provisions cloud resources manually through a provider's web console. They...
  5. 5.A platform team manages its AWS networking stack with Terraform. Today, developers sometimes create VPCs and...
  6. 6.A company has been creating cloud infrastructure manually through the provider's web console. After several...
  7. 7.A company has been creating cloud infrastructure manually through a provider's web console. After several...
  8. 8.A company has been creating cloud networking, virtual machines, and storage accounts manually through a...
  9. 9.A company provisions development cloud environments by following a wiki with manual steps in the cloud...
  10. 10.A company has been creating cloud infrastructure manually through the provider's web console. After several...
  11. 11.A company manages three environments for the same web application: development, staging, and production....
  12. 12.A platform team manages separate development, staging, and production environments in AWS. Historically,...
  13. 13.A platform team manages separate development, staging, and production environments in AWS. Today, engineers...
  14. 14.A platform team manages separate development, staging, and production environments in AWS. Today, each...
  15. 15.A platform team manages development, staging, and production environments in a cloud provider. Historically,...
  16. 16.A company is standardizing infrastructure delivery for two environments: customer-facing workloads in AWS and...
  17. 17.A platform team is standardizing infrastructure delivery for an application that runs partly in AWS and...
  18. 18.A platform team needs to standardize infrastructure delivery for two application groups. One group deploys to...
  19. 19.A company is standardizing infrastructure provisioning across AWS, Azure, and an on-premises VMware...
  20. 20.A platform team needs a single Infrastructure as Code workflow to provision networking in AWS, a resource...
  21. 21.A platform team stores its Terraform configuration in Git and uses Terraform CLI in a CI pipeline. A new...
  22. 22.A platform team is standardizing how Terraform is used across several environments. A developer updates a...
  23. 23.A platform team stores its Terraform configuration in Git and wants every engineer to review the exact...
  24. 24.A platform team stores its Terraform configuration in Git and wants every engineer to review the exact...
  25. 25.A platform team maintains Terraform code for a shared AWS VPC. Before applying a change in production, an...
  26. 26.Your team maintains a Terraform configuration that uses the AWS provider. Developers run Terraform locally on...
  27. 27.A team maintains a Terraform configuration that uses the HashiCorp AWS provider. Developers run Terraform...
  28. 28.Your team maintains a Terraform configuration that uses the AWS provider. Developers run Terraform locally on...
  29. 29.Your team maintains a Terraform configuration that uses the HashiCorp AWS provider. Developers run Terraform...
  30. 30.A platform team maintains a shared Terraform configuration used by several application teams. The...
  31. 31.A platform team is standardizing Terraform configurations across several projects. One application stack must...
  32. 32.A team is standardizing Terraform configurations for AWS. In one project, they need to create an S3 bucket in...
  33. 33.A team is building a Terraform configuration that creates AWS VPC resources and also manages DNS records in...
  34. 34.A platform team maintains Terraform code that provisions resources in AWS and GitHub for multiple application...
  35. 35.Your team maintains Terraform code that creates resources in AWS and also configures DNS records in...
  36. 36.A platform team manages infrastructure in two AWS regions from a single Terraform root module. Most resources...
  37. 37.Your team maintains a Terraform configuration that must create networking resources in two AWS regions: a VPC...
  38. 38.Your team manages infrastructure in two AWS regions from a single Terraform root module. Most resources...
  39. 39.A platform team manages AWS infrastructure in two regions from a single Terraform root module. They need to...
  40. 40.Your team manages infrastructure in two AWS regions from a single Terraform root module. Most resources are...
  41. 41.A team stores its Terraform state in an S3 backend for a shared AWS networking workspace. Last week, an...
  42. 42.A platform team stores Terraform state for a shared AWS environment in an S3 backend with state locking...
  43. 43.A team manages shared AWS infrastructure with Terraform. They recently moved from local state to an S3...
  44. 44.A team stores Terraform state for a shared AWS environment in an S3 backend with DynamoDB state locking. One...
  45. 45.A team stores its Terraform state in an S3 backend with DynamoDB state locking. One engineer manually deletes...
  46. 46.A team manages its infrastructure with Terraform. Before every production deployment, they want to review the...
  47. 47.A team stores its Terraform configuration in Git and uses a remote backend for state. A platform engineer...
  48. 48.Your team stores Terraform configuration in Git and uses a shared remote backend for state. A developer...
  49. 49.A platform team stores its Terraform configuration in Git and uses a remote backend for state. A developer...
  50. 50.A team manages AWS infrastructure with Terraform. A developer updates several .tf files locally and wants to...
  51. 51.A platform team stores Terraform configurations in Git and uses a remote backend for shared state. A...
  52. 52.A platform team stores its Terraform configuration in Git and uses a remote backend for shared state. A team...
  53. 53.A platform engineer updates several Terraform configuration files to add a new AWS security group rule and...
  54. 54.A platform engineer updates several Terraform configuration files to add a new AWS subnet and modify tags on...
  55. 55.A platform team stores Terraform configuration for a shared AWS VPC in a Git repository. A network engineer...
  56. 56.A platform engineer clones a Terraform configuration for an existing project into a new workstation. The root...
  57. 57.A platform engineer clones a Terraform configuration from a shared repository into a new local directory. The...
  58. 58.A platform engineer clones a Terraform project that contains a requiredproviders block for the hashicorp/aws...
  59. 59.A DevOps engineer clones a Terraform configuration that uses an S3 backend for remote state and declares the...
  60. 60.A platform engineer clones a Terraform configuration for an AWS application into a new workstation. The root...
  61. 61.A platform engineer is reviewing a teammate's Terraform changes before merging them. The team wants a fast...
  62. 62.A platform engineer updates a Terraform configuration by adding a new variable and refactoring several...
  63. 63.A platform engineer updates a Terraform root module before opening a pull request. They want a fast check...
  64. 64.A platform engineer is preparing a Terraform configuration for use in a CI pipeline. The pipeline must fail...
  65. 65.A platform engineer has updated several Terraform files in a shared module and wants to catch configuration...
  66. 66.Your team manages infrastructure with Terraform and stores state remotely. Before a production change window,...
  67. 67.Your team uses Terraform in a CI pipeline to manage AWS infrastructure. A pull request changes an EC2...
  68. 68.Your team runs Terraform in CI for a shared AWS environment. A developer updates a module variable and asks...
  69. 69.Your team uses Terraform in a CI/CD pipeline to manage AWS infrastructure. A pull request changes an EC2...
  70. 70.Your team uses Terraform in a CI pipeline to manage AWS infrastructure. A developer submits a change to...
  71. 71.A team maintains a Terraform configuration for an AWS environment in a remote workspace. Before deploying a...
  72. 72.A team manages its production infrastructure with Terraform. Before a maintenance window, an engineer runs...
  73. 73.Your team manages an AWS VPC with Terraform. After reviewing a plan, you want to make sure the exact reviewed...
  74. 74.Your team manages a production VPC with Terraform. A teammate runs terraform plan -out=tfplan after updating...
  75. 75.Your team uses Terraform to manage a production VPC and EC2 instances. After reviewing a saved execution plan...
  76. 76.A team uses Terraform to manage an AWS-based development environment. The configuration in the current...
  77. 77.Your team uses Terraform to manage a temporary test environment in AWS. The environment was created...
  78. 78.Your team uses Terraform to manage a temporary test environment in AWS. The configuration has not changed,...
  79. 79.A team uses Terraform to manage a temporary test environment in AWS. The configuration includes an EC2...
  80. 80.A team uses Terraform to provision a short-lived test environment in AWS. The root module currently manages...
  81. 81.Your team receives frequent pull request comments about inconsistent indentation, argument alignment, and...
  82. 82.Your team maintains a Terraform module in Git. A pull request includes several functional changes, but the CI...
  83. 83.Your team stores Terraform configurations in Git and enforces a pre-commit check before merging. A teammate...
  84. 84.A platform team is preparing a Terraform module for code review. The configuration is functionally correct,...
  85. 85.Your team is preparing a Terraform module for code review. Several files were edited by different engineers,...
  86. 86.A team maintains a reusable Terraform module that creates a VPC and related networking resources. They want...
  87. 87.A team maintains a Terraform root module that provisions the same application stack in dev, staging, and...
  88. 88.A team maintains a reusable Terraform module that provisions an application stack. The module currently...
  89. 89.A platform team maintains a Terraform configuration that creates the same monitoring resources in several AWS...
  90. 90.A team maintains a Terraform module that creates an application stack. The module currently works, but...
  91. 91.Your team manages AWS infrastructure with Terraform. A security group named "shared-web-sg" and a VPC tagged...
  92. 92.Your team manages AWS infrastructure with Terraform. A shared VPC and several subnets were created manually...
  93. 93.Your team manages AWS infrastructure with Terraform. A shared security group named "web-shared-sg" already...
  94. 94.Your team manages shared networking in AWS outside of this Terraform configuration. A separate platform team...
  95. 95.Your team manages AWS infrastructure with Terraform. A networking team has already created a VPC and several...
  96. 96.Your team is provisioning an AWS VPC and a subnet in the same Terraform configuration. The subnet must be...
  97. 97.Your team is provisioning an AWS VPC and a security group with Terraform. They want the security group to be...
  98. 98.Your team is provisioning AWS networking with Terraform. A VPC and subnet are already defined in the same...
  99. 99.Your team is provisioning AWS infrastructure with Terraform. A new EC2 instance must be launched into a...
  100. 100.Your team is provisioning AWS infrastructure with Terraform. An EC2 instance must be launched into a subnet...
  101. 101.A platform team maintains a reusable Terraform module that creates an application load balancer and returns...
  102. 102.Your team maintains a reusable Terraform module that provisions an application load balancer and returns its...
  103. 103.A team maintains a reusable Terraform module that creates an AWS application stack. The module already...
  104. 104.A team maintains a reusable Terraform module that creates a virtual network and several subnets. They want...
  105. 105.A team maintains a reusable Terraform module that creates a VPC and several subnets. Multiple application...
  106. 106.A platform team wants a reusable Terraform module to create network security rules for multiple applications....
  107. 107.A platform team wants a reusable Terraform module to configure multiple application environments. Each...
  108. 108.A platform team wants to standardize how application environments are defined in Terraform. They want a...
  109. 109.A platform team wants to standardize how application environments are defined in Terraform. Each environment...
  110. 110.A platform team wants to standardize how application teams define firewall rules in a reusable Terraform...
  111. 111.A team manages application settings in Terraform using a map variable and wants to pass those settings to a...
  112. 112.A platform team uses Terraform to create security groups for multiple application components. They want each...
  113. 113.A platform team wants to standardize tags across environments. They receive a variable environment with...
  114. 114.A platform team maintains a Terraform module that creates application subnets in multiple availability zones....
  115. 115.A platform team wants to standardize tags across AWS resources in Terraform. They receive an input variable...
  116. 116.Your team provisions AWS infrastructure with Terraform. An application EC2 instance must not be created until...
  117. 117.A team manages AWS infrastructure with Terraform. In one module, an EC2 instance is created and then a...
  118. 118.A team is provisioning AWS infrastructure with Terraform. In one module, an EC2 instance is created and...
  119. 119.A team is provisioning an AWS application stack with Terraform. An EC2 instance must not be created until a...
  120. 120.A team manages AWS infrastructure with Terraform. In one module, an EC2 instance must download a bootstrap...
  121. 121.A platform team maintains a reusable Terraform module that creates an Amazon EC2 security group. The module...
  122. 122.A platform team maintains a reusable Terraform module that creates an AWS security group. To reduce...
  123. 123.A platform team maintains a reusable Terraform module that creates an AWS security group. They want to...
  124. 124.A platform team maintains a reusable Terraform module that provisions an AWS Application Load Balancer. The...
  125. 125.A platform team maintains a reusable Terraform module that provisions an AWS EC2 instance. The module accepts...
  126. 126.A team uses Terraform to provision cloud infrastructure and needs to supply database administrator...
  127. 127.Your team uses Terraform in a CI/CD pipeline to provision cloud infrastructure. A recent security review...
  128. 128.A platform team uses Terraform Cloud to provision infrastructure in AWS. Their current configuration...
  129. 129.A platform team uses Terraform in a CI/CD pipeline to provision database users and application...
  130. 130.Your team uses Terraform Cloud to provision infrastructure in AWS. A current configuration passes an AWS...
  131. 131.Your team maintains a reusable Terraform module that creates a VPC and related networking resources. The...
  132. 132.Your team maintains a reusable Terraform module that creates an AWS VPC, subnets, and route tables. Several...
  133. 133.A platform team maintains a reusable Terraform module that provisions an AWS VPC. Several application teams...
  134. 134.Your team maintains a reusable Terraform module named network that provisions a VPC and subnets. Several...
  135. 135.Your team maintains a reusable Terraform module that creates an AWS VPC, subnets, and route tables. Several...
  136. 136.Your team maintains a reusable Terraform module for VPC networking in a separate Git repository. A project...
  137. 137.A platform team maintains a reusable Terraform module in a Git repository. The repository contains multiple...
  138. 138.A platform team maintains a reusable VPC module in a Git repository. The networking team wants application...
  139. 139.A platform team wants to standardize how application teams consume Terraform modules. One team currently...
  140. 140.A platform team maintains a reusable VPC module in a Git repository. For production stability, application...
  141. 141.Your team maintains a reusable Terraform module named network that declares variable "region" {} and uses it...
  142. 142.A team maintains a root Terraform configuration that deploys networking and compute resources. They recently...
  143. 143.A team maintains a root Terraform configuration that deploys networking and then calls a child module named...
  144. 144.A team maintains a root Terraform configuration that deploys networking and calls a child module named "app"....
  145. 145.Your team maintains a reusable Terraform module in ./modules/network that declares: variable "environment" {...
  146. 146.Your team maintains a reusable Terraform module named network in a private Git repository. A root...
  147. 147.Your team maintains a reusable Terraform module named "network" in a private Git repository. A root...
  148. 148.A platform team created a reusable Terraform module in a separate Git repository to provision an AWS VPC....
  149. 149.Your team maintains a reusable Terraform module named network in a private Git repository. The module creates...
  150. 150.Your team maintains a reusable Terraform module named network in a private Git repository. The module creates...
  151. 151.Your team uses a shared VPC module from the Terraform Registry in several environments. The current...
  152. 152.Your team uses a shared VPC module from the public Terraform Registry. The root module currently references...
  153. 153.Your team uses a shared VPC module from the public Terraform Registry in several environments. The current...
  154. 154.Your team uses a shared VPC module from the public Terraform Registry in several environments. In production,...
  155. 155.Your team uses a shared VPC module from the public Terraform Registry in several environments. The production...
  156. 156.A platform team currently stores Terraform state in a local file on an engineer's laptop. After a recent...
  157. 157.A team stores Terraform state remotely in an S3 backend with state locking enabled through DynamoDB. During a...
  158. 158.A team has been managing AWS infrastructure with Terraform using a local state file stored on an engineer's...
  159. 159.A team has been managing AWS infrastructure with Terraform using a local state file stored on an engineer's...
  160. 160.A small development team is using Terraform to provision resources for a non-production environment. Their...
  161. 161.A small operations team stores their Terraform configuration in Git and runs terraform apply manually from a...
  162. 162.A small team is building a proof-of-concept with Terraform on a single developer workstation. They have not...
  163. 163.A small development team is using Terraform to manage a test environment from their laptops. They have not...
  164. 164.A small operations team is using Terraform to manage a test environment from a shared jump host. Their...
  165. 165.A team stores Terraform state remotely in Amazon S3 and uses a DynamoDB table for state locking. During a...
  166. 166.A team stores Terraform state for a shared AWS environment in a remote backend and has started seeing...
  167. 167.Your team stores Terraform state for a shared production workspace in a remote backend. During a release, one...
  168. 168.A team stores Terraform state remotely in Amazon S3 and uses a DynamoDB table for state locking. During a...
  169. 169.A platform team stores Terraform state for a shared AWS environment in an S3 backend with a DynamoDB table...
  170. 170.A team has been storing Terraform state locally for an AWS-based production environment. To improve...
  171. 171.A platform team is migrating a Terraform configuration from local state to a shared remote state stored in...
  172. 172.A team is migrating a Terraform configuration from local state to an S3 remote backend so multiple engineers...
  173. 173.A platform team is migrating a Terraform configuration from local state to a shared Amazon S3 backend so...
  174. 174.A team is migrating a Terraform configuration from local state to a shared remote state stored in Amazon S3...
  175. 175.Your team manages an AWS security group with Terraform. An administrator manually changed the security...
  176. 176.Your team manages an AWS security group with Terraform. A cloud administrator manually added an extra inbound...
  177. 177.Your team manages an AWS security group with Terraform. A teammate manually added an extra inbound rule in...
  178. 178.A team manages an AWS security group with Terraform. During an incident, an engineer manually added an...
  179. 179.A team uses Terraform to manage an AWS VPC and several subnets. One subnet was deleted manually in the AWS...
  180. 180.Your team manages production infrastructure with Terraform using a remote backend. During an incident review,...
  181. 181.A team manages an AWS VPC with Terraform. Last week, a network engineer manually changed one security group's...
  182. 182.A team manages an AWS VPC with Terraform. Another administrator manually added a new route to the route table...
  183. 183.Your team manages a production VPC with Terraform. During troubleshooting, an engineer manually deleted one...
  184. 184.Your team has an existing AWS S3 bucket named company-logs-prod that was created manually and is already in...
  185. 185.Your team has an existing AWS S3 bucket named company-logs-prod that was created manually and is already in...
  186. 186.Your team has been manually managing an AWS S3 bucket named company-logs for several months. You now want...
  187. 187.Your team has an existing AWS security group named "web-sg" that was created manually in the AWS console. You...
  188. 188.Your team has an Amazon EC2 instance that was created manually in AWS and is already running in production....
  189. 189.A teammate reports that a Terraform-managed AWS EC2 instance was manually modified in the AWS console, and...
  190. 190.Your team stores Terraform state remotely in an S3 backend. After a recent apply, a developer reports that an...
  191. 191.A platform engineer is troubleshooting a Terraform-managed AWS environment after a teammate manually changed...
  192. 192.A team stores Terraform state remotely and has just imported an existing AWS security group into their...
  193. 193.Your team stores Terraform state remotely in an S3 backend. After a recent apply, an engineer reports that...
  194. 194.A platform engineer runs terraform plan in a CI job and gets a generic provider-related error that does not...
  195. 195.A platform engineer runs terraform init in a CI job and it intermittently fails while downloading a provider...
  196. 196.A platform engineer runs terraform apply in a CI job and sees a generic provider error during refresh: Error:...
  197. 197.A platform engineer runs terraform init in a CI job and it fails intermittently while downloading a provider...
  198. 198.A platform engineer runs terraform init in a CI job and it fails while downloading a provider from the...
  199. 199.A platform team is migrating from local Terraform execution to HCP Terraform. They want every infrastructure...
  200. 200.A platform team is migrating from local Terraform execution to HCP Terraform so they can centralize state,...
  201. 201.Your team has migrated a Terraform workflow from local execution to HCP Terraform. A workspace is configured...
  202. 202.Your team uses HCP Terraform to manage AWS infrastructure across development and production workspaces. A...
  203. 203.A platform team is migrating local Terraform workflows to HCP Terraform. They want every plan and apply to...
  204. 204.A platform team wants application developers to provision AWS infrastructure through HCP Terraform without...
  205. 205.A platform team wants application developers to provision AWS infrastructure through HCP Terraform without...
  206. 206.A platform team wants developers to provision AWS infrastructure through HCP Terraform without storing...
  207. 207.A platform team is moving from local Terraform CLI runs to HCP Terraform so they can standardize deployments...
  208. 208.A platform team is moving from local Terraform CLI workflows to HCP Terraform so that all infrastructure...
  209. 209.A platform team uses HCP Terraform to manage infrastructure for several application teams. They want every...
  210. 210.A platform team uses HCP Terraform to manage infrastructure for multiple application teams. They want...
  211. 211.A platform team is moving Terraform workflows from local execution to HCP Terraform. They want application...
  212. 212.A platform team is using HCP Terraform to manage infrastructure for several application teams. They want...
  213. 213.A platform team uses HCP Terraform to manage infrastructure for several application teams. They want...
  214. 214.A platform team is migrating several Terraform configurations into HCP Terraform. They want to group related...
  215. 215.A platform team is onboarding HCP Terraform for three application teams. Each application has separate dev,...
  216. 216.A platform team is onboarding HCP Terraform for three application teams: Payments, Analytics, and Search....
  217. 217.A platform team is migrating from local Terraform execution to HCP Terraform. They support three application...
  218. 218.A platform team is moving from local Terraform execution to HCP Terraform. They manage infrastructure for...
  219. 219.A team currently runs Terraform locally from engineers' laptops and wants to standardize execution in HCP...
  220. 220.A team currently runs Terraform locally against AWS, but they want HCP Terraform to execute plans and applies...
  221. 221.A platform team wants all Terraform operations for a production AWS workspace to run remotely in HCP...
  222. 222.A platform team is migrating from local Terraform execution to HCP Terraform. They want all plans and applies...
  223. 223.A team currently runs Terraform locally from developer laptops, but they want all plans and applies to...

HashiCorp Terraform Associate (004) exam dumps FAQ

Are these HashiCorp Terraform Associate (004) dumps real exam questions?

No. These are original practice questions written to the Terraform Associate 004 exam objectives, not questions copied from a live exam. Memorising leaked questions violates HashiCorp's candidate agreement and stops working the moment the question pool rotates. Use this bank to check your understanding of each domain and to find the topics you still need to study.

How many HashiCorp Terraform Associate (004) practice questions are there?

223 questions, each with the correct answer, an explanation of the answer, and a note on why every other option is wrong. The first 10 are on this page and every question has its own page linked below.

Are the HashiCorp Terraform Associate (004) exam dumps free?

Yes. Every question, answer and explanation on this page and the linked question pages is free to read without an account. A free HydraNode account adds timed practice exams, scoring and progress tracking across attempts.

How do I take a timed HashiCorp Terraform Associate (004) practice test?

Sign in and start the Terraform Associate 004 exam on HydraNode. A session gives you 70 questions drawn from this bank in 60 minutes, then a score report with a per-question review.

What topics does the HashiCorp Terraform Associate (004) exam cover?

The official exam domains are: Understand Infrastructure as Code Concepts; Understand Terraform's Purpose; Understand Terraform Basics; Use the Terraform CLI; Interact with Terraform Modules; Navigate Terraform Workflow; Implement and Maintain State.