Course Introduction
- Course Introduction
- About the Terraform Associate Exam
- Exam Objectives what youre tested on
- Whats New in the Terraform Associate 004 Exam
Preparing Your Environment
- Section Introduction Preparing Your Environment
- Install Terraform on MacOS and Linux
- Install Terraform on Microsoft Windows
- Installing Microsoft Visual Studio Code IDE
- Setting Up AWS Credentials for Terraform
- Setting Up Azure Credentials for Terraform
- Setting Up GitHub Credentials for Terraform
Terraform Foundations
- Section Introduction Terraform Foundations
- Introduction to Terraform
- Learn the Basics of HashiCorp Configuration Language HCL
- Lets Look at Resource Referencing with Demo
- Learn about Best Practices for HCL
- Core Components and Benefits of Terraform
- Which Terraform Version Should You Use
- Comparing Terraform to Other Tools
- Declarative vs Imperative Why Terraform Works the Way It Does
The Core Terraform Workflow
- Section Introduction Terraform Workflow
- Intro to the Terraform Workflow
- Terraform Init
- Terraform Plan
- Understanding the Resource Graph
- Terraform Apply
- Terraform Destroy
- Terraform Validate
Terraform CLI
- Section Introduction Terraform CLI
- Introduction to the Terraform CLI
- Demo Terraform CLI
- Making the Most of the Terraform CLI
- Demo Making the Most of the Terraform CLI
Terraform File Structure and Organization
Terraform Configuration - Fundamentals
- HCL Basics Understanding Block Structure
- Connecting to Cloud Platforms with Provider Blocks
- Using Multiple Providers in Your Configuration
- Creating Infrastructure with Resource Blocks
- Reading Existing Resources with Data Sources
- Parameterizing Configurations with Input Variables
- Defining Variable Types
- Assigning Variable Values and Understanding Precedence
- Exposing Configuration Data with Output Values
- Controlling Terraform Behavior and Settings
Understading and Managing Terraform State
- Section Intro Terraform State
- Introduction to Terraform State
- Where Can I Store My Terraform State
- Remote State Configuration
- Demo Remote State Configuration
- Demo Migrate Your State to a Remote State Configuration
- Inspecting Terraform State
- Demo Inspecting Terraform State using the CLI
- Understanding State Drift Visual Walkthrough Lightboard
- What Happens if You Lose State Visual Walkthrough Lightboard
- Detecting State Drift with Refresh Only Mode
- Demo Detecting State Drift with Refresh Only Mode
- Managing Multiple Environments with Workspaces
Marking Code Reusable
- Using Built In Functions to Standardize Code
- Enhancing Code with Dynamic Values
- Using Locals to Avoid Code Duplication
- Using the count Meta Argument
- Using the for each Meta Argument
Refactoring Terraform State
- Refactoring Terraform State
- Moving Resources with the moved Block
- Removing Resources with the removed Block
Terraform Modules
- Introduction to Modules
- Understanding Parent and Child Modules
- Module Versioning and Version Constraints
- Calling Modules with the Module Block
- Understanding Variable Scope in Modules
- Demo Using Modules from the Terraform Registry
- Demo Writing and Using Your Own Modules
Managing Resource Behavior and Dependencies
- Controlling Resource Order with Explicit Dependencies
- Managing Resource Behavior
- Demo Manage Resource Behavior with lifecycle
- Validating Your Configuration
Securing Terraform Configurations
- Why Secrets in Terraform Are Risky
- Protecting Secrets in Your Configuration
- Hiding Secrets with Sensitive Variables and Outputs
- Keeping Secrets Out of Version Control with Environment Variables
- Reading Secrets from External Sources
- Securing State Files
- Keeping Secrets Out of State with Ephemeral Values and Write only Arguments
- Working with HashiCorp Vault Patterns and Approaches
Terraform Troubleshooting
HCP Terraform
- HCP Terraform Overview longer video
- Demo Setting Up Your HCP Terraform Account
- Getting Connected and Authenticated with HCP Terraform
- Understanding HCP Terraform Workspaces
- Demo Creating a Workspace
- HCP Terraform Execution Modes
- Demo Migrating State to HCP Terraform
- Demo Automating Runs with VCS Driven Workflow
- Organizing Your Work with Projects
- Demo Working with Projects
- Sharing Variables with Variable Sets
- Demo Creating Variable Sets
- HCP Terraform Teams Permissions
- Private Registry
- Policy Enforcement using Sentinel OPA Part 1
- Policy Enforcement using Sentinel OPA Part 2
- Additional HCP Terraform Features