← All work

(06) Course project · Infrastructure III · Apr 2026

CI/CD Pipeline with GitHub Actions: Automated Cloud Deployment

Two-job pipeline with a strict gate: tests first, then deploy to S3 and CloudFront provisioned with Terraform, with post-deploy cache invalidation.

The project

A two-job pipeline for a React and Vite application. The deploy job only runs when tests pass on a push to main, so every merge is quality-gated before it reaches production.

Terraform provisions S3 static hosting behind a CloudFront CDN. The pipeline invalidates the CloudFront cache after each deploy, and AWS credentials live in GitHub Actions secrets.

Highlights

  1. 01Test, then deploy, with a mandatory gate
  2. 02Automatic deploy to S3 + CloudFront on every push to main
  3. 03Infrastructure defined with Terraform
  4. 04Post-deploy CloudFront cache invalidation