My résumé site, built end to end on AWS for the Cloud Resume Challenge, a 16-step project by Forrest Brazeal, plus most of its DevOps mods. You are reading the output of its pipeline.
How it's built
- Next.js static site in a private S3 bucket, served by CloudFront through Origin Access Control, with Route 53 and an ACM certificate.
- Visitor counter on an API Gateway HTTP API, a Python Lambda and DynamoDB, incremented atomically.
- About 40 AWS resources in Terraform. One codebase for test and prod, state in HCP Terraform.
- Test and prod are separate AWS accounts in one AWS Organization, managed as code with org-formation.
- GitLab CI with OIDC, so no AWS keys are stored. Every push runs unit tests, a test deploy and Playwright smoke tests. Prod waits for one manual approval.
- Five CloudWatch alarms send alerts through SNS to email and, through a notifier Lambda, to Slack.
AWS · Terraform · HCP Terraform · GitLab CI · Python · Next.js · Playwright · org-formation