From first provider to multi-environment modules
Day 1
Fundamentals & Provider Configuration
- Terraform architecture: Providers, resources, data sources, state — how Terraform models infrastructure
- HCL syntax: Blocks, arguments, expressions, locals, variables — writing readable configurations
- Providers: AWS, Azure, and GCP provider configuration — authentication and version pinning
- State file management: Local vs remote backend (S3, Azure Blob, GCS) — why remote state matters
- The terraform workflow: init, plan, apply, destroy — the daily operational loop
- Workspaces: Managing multiple environments with Terraform workspaces
- Import: Bringing existing infrastructure under Terraform management without recreation
Day 2
Modules, State & CI/CD
- Module structure: Inputs, outputs, versions, published modules — designing reusable infrastructure components
- Terraform Registry: Consuming and publishing community modules with version constraints
- Remote state data sources: Sharing state across stacks with terraform_remote_state
- State locking with DynamoDB or Azure Blob: Preventing concurrent state corruption in teams
- Sensitive outputs and variable handling: Keeping secrets out of state and plan output
- Terraform Cloud and Atlantis: Team-based workflows with plan previews in pull requests
- CI/CD integration: Terraform in GitHub Actions and GitLab CI with approval gates
- Terragrunt patterns: DRY multi-environment configurations with Terragrunt
What your team walks away with
Confident Terraform practitioners who can design, test, and operate infrastructure as code — from a first provider to a multi-environment module library.
- Write and structure Terraform configurations for real cloud resources
- Design reusable modules with proper input/output contracts
- Manage state safely across teams with remote backends and locking
- Integrate Terraform into CI/CD pipelines with plan review and approval
Book the Terraform training
Available standalone or combined with Ansible for a complete infrastructure automation stack.
Get in touch