Introduction
  • Introduction to the Course and Certification
  • Document - Code Repository
Getting Started & Setting Up Labs
  • Choosing a right Infrastructure as Code tool
  • Installing Terraform - Windows Users
  • Installing Terraform - MacOS and Linux Users
  • Choosing Right IDE for Terraform IAC development
  • Setting up AWS account
Deploying Infrastructure with Terraform
  • Creating first EC2 instance with Terraform
  • Terraform Code - First EC2 Instance
  • Understanding Resources & Providers - NEW
  • Understanding Resource & Providers - Part 2 NEW
  • Destroying Infrastructure with Terraform (NEW)
  • Understanding Terraform State files (NEW)
  • Understanding Desired & Current States (NEW)
  • Challenges with the current state on computed values (NEW)
  • Terraform Provider Versioning
  • Notes - Deploying Infrastructure with Terraform
Read, Generate, Modify Configurations
  • Overview of Course Lecture Format
  • Understanding Attributes and Output Values in Terraform
  • Referencing Cross-Account Resource Attributes
  • Terraform Variables
  • Approaches for Variable Assignment
  • Data Types for Variables
  • Fetching Data from Maps and List in Variable
  • Count and Count Index
  • Conditional Expressions
  • Local Values
  • Terraform Functions
  • Data Sources
  • Debugging in Terraform
  • Terraform Format
  • Validating Terraform Configuration Files
  • Load Order & Semantics
  • Dynamic Blocks
  • Tainting Resources
  • Splat Expressions
  • Terraform Graph
  • Saving Terraform Plan to File
  • Terraform Output
  • Terraform Settings
  • Dealing with Large Infrastructure
  • Zipmap Function
  • Notes - Read, Generate, Modify Configuration
Terraform Provisioners
  • Understanding Provisioners in Terraform
  • Types of Provisioners
  • Implementing remote-exec provisioners
  • Implementing local-exec provisioners
  • Creation-Time & Destroy-Time Provisioners
  • Failure Behavior for Provisioners
  • Notes - Terraform Provisioners
Terraform Modules & Workspaces
  • Understanding DRY principle
  • Implementing EC2 module with Terraform
  • Variables and Terraform Modules
  • Terraform Registry
  • Terraform Workspace
  • Implementing Terraform Workspace
  • Notes - Module Section
Remote State Management
  • Integrating with GIT for team management
  • Important Note
  • Security Challenges in Commiting TFState to GIT
  • Module Sources in Terraform
  • Terraform and .gitignore
  • Remote State Management with Terraform
  • Implementing S3 Backend
  • Challenges with State File locking
  • Integrating DynamoDB with S3 for state locking
  • Terraform State Management
  • Importing Existing Resources with Terraform Import
  • Document - Remote State Management
Security Primer
  • Handling Access & Secret Keys the Right Way in Providers
  • Terraform Provider UseCase - Resources in Multiple Regions
  • Handling Multiple AWS Profiles with Terraform Providers
  • Terraform & Assume Role with AWS STS
  • Sensitive Parameter
  • Document - Security Domain Notes
Terraform Cloud & Enterprise Capabilities
  • Overview of Terraform Cloud
  • Creating Infrastructure with Terraform Cloud
  • Overview of Sentinel
  • Document - Sentinel Resource
  • Overview of Remote Backends
  • Implementing Remote Backend Operations in Terraform Cloud
  • Notes Section
Exam Preparation Section
  • Overview of HashiCorp Exams
  • Important Exam Portal Note
  • Important Pointers for Exams - Part 01
  • Important Pointers for Exams - Part 02
  • Important Pointers for Exams - Part 03
  • Important Pointers for Exams - Part 04
  • Important Pointers for Exams - Part 05
  • Important Pointers for Exams - Part 06