This repository contains all the code I use to deploy my website. This site is hosted on AWS, uses terraform to manage the infrastructure, and Hugo as the website content mangement system.
I'm in the market for a new job and rather than follow the basic route of applying to everything I see I read my friend's blog post at https://landadevopsjob.com/blog/terraform-certification-the-last-resort/ This inspired me to give the Cloud Resume Challenge a go. This repository is the result of that. I opted for the [AWS]https://cloudresumechallenge.dev/docs/the-challenge/aws/ with terraform challenge because I have expereince with these tools. I many try the Kubernetes challenge soon.
- The domain and route53 zone must be registered manually in AWS
- Create a file at
terraform/terraform.tfvarsand set theaws_primary_regionanddomain_namevariables - AWS cli setup on your PC
The Build and deployment is managed by the make utility. Run make apply to deploy your site
Other make options are:
make build: Build the hugo sitemake clean: Cleanup generated htmlmake serve: Generate all html and run a local development server. Access at https://localhost:1313make plan: Runterraform plandry run deployment.make apply: Runterraform applyand deploy the site
- Move terraform state to S3
- Add a real time visitor counter: https://cloudresumechallenge.dev/docs/extensions/realtime-counter/
- Write some tests for any Python code.
- CI/CD with GitHub Actions. I am quite familiar with Jenkins but have never used GitHub Actions.
- Secure the Software supply chain: https://cloudresumechallenge.dev/docs/extensions/supply-chain/
- Create a Blog post and publish it. See https://cloudresumechallenge.dev/docs/the-challenge/aws/#16-blog-post for details