First Apply
Set up the ShopLite repo, create your first real AWS resource with Terraform, learn to read a plan like a reviewer, and make the config reusable.
ShopLite is the small API you'll deploy for the rest of this course. Before it gets a network, containers, or a database, it needs a repo and a working Terraform setup, and you need a clear picture of what Terraform does when you type `plan` and `apply`. By the end of this stage the ShopLite repo creates, changes, and inspects real AWS resources, and you'll know which plan output is safe to approve and which should stop you.
+ ShopLite gains: a Terraform repo, an S3 assets bucket with versioning and public access blocked, and variables/outputs — all created by terraform apply
- 0.1
Set Up the ShopLite Repo and Run terraform init
A ShopLite repo with a pinned Terraform and AWS provider version, working AWS credentials, and a successful `terraform init` — nothing created in AWS yet.
25 minFree — nothing is created3 break-its - 0.2
Your First Resource: the ShopLite Assets Bucket
A real S3 bucket for ShopLite's static assets, created, updated, and inspected entirely through Terraform — and a clear picture of what `plan` and `apply` actually do.
30 minFree — an empty S3 bucket costs nothing4 break-its - 0.3
Read a Plan Like a Reviewer
Versioning and public-access protection on the assets bucket, applied from a saved plan — and the ability to spot a destructive change in any plan before you approve it.
35 minFree3 break-its - 0.4
Variables, Locals & Outputs — Make ShopLite Reusable
ShopLite's config driven by typed, validated variables, with consistent names built in locals, a random suffix for global uniqueness, and outputs other tools can read.
40 minFree3 break-its