👋 Welcome to terraform-boilerplate!

Terraform boilerplate is a repository aiming to help DevOps to deploy infrastructure on AWS

This project is using terraform to deploy infrastructure, you can download it here: https://learn.hashicorp.com/tutorials/terraform/install-cli

📚 Usage

The project is aimed to be used with terraform workspace which is why there is the envs directory. Feel free to create new files in this folder to overwrite default variables defined in tf/2-variables.tf.

envs/qa.tfvars is use in our CI/CD pipeline to make sure the code we want to merge can be deployed.

🚀 Deploy

$ cd ./tf
$ terraform init
$ terraform plan -var-file ../envs/qa.tfvars
$ terraform apply -var-file ../envs/qa.tfvars

💣 Destroy

$ terraform destroy -var-file ../envs/qa.tfvars

💻 Testing

You can find in the .github/workflows folder different QA that you can run to test with Github:

  • terraform.yml: automatically running on master and PR when you push. This make a terraform init & plan
  • terraform-qa.yml: manually triggered in Github Actions. This make a terraform init, plan, apply & destroy
  • terraform-qa-no-destroy: manually triggered in Github Actions. This make a terraform init, plan & apply
  • terraform-qa-only-destroy: manually triggered in Github Actions. This make a terraform init & destroy
  • terraform-everyday-only-destroy: automatically triggered everyday in Github Actions. This make a terraform init & destroy on all workspaces

✅ Services Available

Here are the services that you can deploy using this repository:

🤝 Missing a specific feature?

Feel free to ask for the features you want! Our teams will be happy to add them!

❤️ Show your support

Give a ⭐️ if this project helped you!

✏️ Author

👤 Trackit

👥 About us

We are an Amazon Web Services Advanced Consulting Partner specializing in cloud management, consulting, and software development solutions based in Venice, CA.