CI/CD Deployment Pipeline

This page explains how the SimpleStruct website is automatically deployed from code to production.

Pipeline Overview

Our deployment pipeline is fully automated using GitHub Actions, AWS infrastructure, and industry best practices for secure, reliable deployments.

How It Works

🎯 The Simple Version: You talk to an AI helper, it writes the code, you click a button, and your website updates automatically. That's it!

1 AI-Assisted Development (Optional)

Developers can use GitHub Copilot in VS Code to build and modify the website through natural conversation. Simply describe what you want — "add a new page", "update the styling", "fix this bug" — and the AI generates the code for you. This enables team members with minimal coding experience to contribute to the website after the pipeline is established.

🧒 Simple Explanation: Imagine having a super-smart helper who can draw pictures just by you describing them. You say "draw me a blue house with a red door" and it draws it for you. That's what this does, but for websites! You just tell the computer what you want in regular words, and it builds it.

2 Developer Pushes Code

Changes to the /webpage folder are pushed to the GitHub repository main branch.

🧒 Simple Explanation: This is like putting your finished drawing into a special folder that everyone can see. When you're happy with your work, you put it in the "done" folder. The computer notices you put something new in there.

3 GitHub Actions Triggered

A webhook automatically triggers our CI/CD workflow when changes are detected in webpage/** paths.

🧒 Simple Explanation: It's like a doorbell! When you put your drawing in the folder, it rings a bell that tells a robot helper "Hey! There's new work to do!" The robot wakes up and gets ready to help.

4 OIDC Authentication

GitHub Actions requests temporary credentials from AWS using OpenID Connect (OIDC) - no long-lived secrets stored in the repository.

🧒 Simple Explanation: Before the robot can do its job, it needs to prove it's allowed to help. It's like showing your library card before you can borrow books. The robot gets a special temporary pass that only works for a little while — like a day pass at an amusement park!

5 S3 Sync

Website files are synchronized to our private Amazon S3 bucket with automatic cache-control headers for optimal performance.

🧒 Simple Explanation: Now the robot takes your drawing and makes copies to put in a super safe box in the cloud (the cloud is just a really big computer somewhere else). Think of it like putting your favorite toy in a safe locker that only you have the key to.

6 CloudFront Invalidation

Cache is invalidated at our CloudFront CDN edge locations to ensure users see the latest content immediately.

🧒 Simple Explanation: Imagine you have helpers all around the world holding up copies of your old drawing. This step tells ALL of them "Hey! Throw away the old picture and get the new one!" So no matter where someone is, they'll see your newest work, not the old version.

7 Live Deployment

Website updates appear at simplestruct.com within seconds of pushing code to GitHub.

🧒 Simple Explanation: Done! 🎉 Now when anyone in the whole world types in our website name, they see your new changes. It's like magic — you did some work on your computer, and now people on the other side of the planet can see it!

Technology Stack

Source Control

GitHub with branch protection and rebase workflow

CI/CD

GitHub Actions with OIDC authentication

Storage

Amazon S3 (private bucket with OAC)

CDN

Amazon CloudFront with automatic invalidation

Infrastructure as Code

Terraform for IAM roles and OIDC configuration

Domain

Custom domain with HTTPS/TLS encryption

Security Features

Performance Optimization

Deployment Frequency

Multiple deployments per day are possible. The entire pipeline (from push to live) completes in 2-3 minutes.

For More Information

See the GitHub Repository for:

View Full Automation System →


SimpleStruct - Powered by ConstructiVision | Deployed via CI/CD Pipeline