Terraform This 2

The domain Ok, today we welcome the gonzague.dev domain! Another opportunity to use Terraform πŸ‘ First of all I revised my way to organize terraform folder, passing variables between modules became painful. Now every service I want to leverage is in a specific file with explicit name like this : terraform β”œβ”€β”€ certificate.tf β”œβ”€β”€ cloudfront.tf β”œβ”€β”€ codebuild.tf β”œβ”€β”€ main.tf β”œβ”€β”€ output.tf β”œβ”€β”€ route53.tf β”œβ”€β”€ s3.tf └── variables.tf I don’t know if it’s the best practice, it’s easier but it can’t build a single module with -target parameter

Terraform this

For now this blog is hosted with AWS on different services like S3 or Cloudfront (CDN) but these were made manually on the AWS console, It’s easy but not repeatable automatically. The other bad side with this “test” infrastructure is the state, you cannot know if it has been modified and who did it making the reproducibility even harder. Terraform joined the game, the best feature of this tool is the idempotency, if you apply twice the same infrastructure description, the first time it will create it and the next apply will do nothing, whenever you plan or apply, Terraform compare the local .

How This Blog Is Made

Idea behind I wanted something simple, using github and aws, a simple workflow : write then push and voila. This exercise was for experience and knowledge, structuring ideas, formatting markdowns and much more It will help me to share some content and practice my written english too, hope you will like. Getting started The main component is gohugo, a simple framework written in golang, it is easy to use the binary let you