Day 1: Understand IaC and build Terraform configurations deliberately
5 topics, Tap to openTap to close
10:00–11:00Terraform and Infrastructure as Code
Infrastructure as code describes infrastructure declaratively in versioned configuration. You compare Terraform with Ansible, CloudFormation, and Pulumi and distinguish provisioning, configuration management, and platform-specific approaches by typical boundaries. The comparison includes OpenTofu and different governance and licensing models without turning them into a general product recommendation.
11:00–12:00HCL and Initial Resources
A Terraform configuration combines blocks, arguments, and expressions in HCL. You examine resource and data blocks, attributes, and references and use the local provider for a self-contained first example. You then run terraform init, plan, and apply and trace the files and state Terraform creates along the way.
13:00–14:00Providers, Plan, and Apply
Providers translate configuration into API calls for the connected platform. You define required_providers, set explicit version constraints, and read the dependency lock file. You then compare plan and apply as separate steps and treat a plan as a change preview that must be checked again before the actual operation.
14:00–15:00Variables, Outputs, and Locals
Input variables make configurations adaptable but require clear types and boundaries. You define scalar and structured types, defaults, and validation rules and use outputs for selected results and module handovers. With locals, you group derived values and refactor the existing configuration without expanding its interfaces unnecessarily.
15:00–16:00Model Cloud Infrastructure Step by Step
The DevNinjas Dojo, our cloud learning environment, connects providers, variables and references through a cloud scenario. You model a VM, a security group and a public or elastic IP and use outputs for selected connection data. The Terraform documentation and plan output support the work but do not replace informed approval.

