A static website for the ColorCop project, built with Jekyll and managed using mise for consistent tooling and reproducible development environments.
This project uses mise to configure the development environment.
- Install mise
- Run
mise trustand answer yes. - Run
mise installto install the required tools - Run
bundle install
mise servemise lintThere is a Github Action that runs when code merges to main. It provisions infrastructure with Terragrunt, builds the site, uploads it to S3, and refreshes CloudFront.
The deploy workflow automates the full publishing pipeline:
- Triggered by pushes to
mainordeploy-*, or manually with a selected branch - Checks out the branch and configures temporary AWS credentials
- Runs Terragrunt
init,plan, andapplyto update CloudFront, S3, and related infrastructure - Reads Terragrunt outputs (S3 bucket name and CloudFront distribution ID)
- Builds the Jekyll site using Bundler and
mise build - Validates the CloudFront distribution and S3 bucket
- Syncs the built
_site/directory to the S3 bucket - Invalidates CloudFront so new content is served immediately