Terraform Using terraform-docs to keep your module documentation in sync While watching this talk from Hashiconf 2017 [https://www.hashiconf.com/] - Terraform Abstractions for Safety and Power [https://www.youtube.com/watch?v=IeweKUdHJc4] by Calvin French-Owen [https://github.com/calvinfo], I learned about this lovely tool: terraform-docs [https://github.com/segmentio/terraform-docs], which generates documentation based on the
Packer Connecting Packer and Terraform with Data Sources When I first started using Packer I couldn't find any good information on how to automate the workflow with Terraform. So I just reached into my favorite toolbox Bash, and whipped together some scripts (details on this approach here [https://dolore.ghost.io/packer-and-terraform/]). However since my initial
bash Updating Terraform Modules versions with Bash Splitting your Terraform [https://www.terraform.io/] setup into versioned modules can provide many benefits like DRYer code, decoupling updates to modules from updates to infrastructure and the ability to use different versions of modules for different environments. This all makes working with Terraform a much more enjoyable experience. However
Terraform A Project Structure for Packer and Terraform Being relatively new tools, I have not found a lot of common conventions around how to structure projects that use both Terraform [https://www.terraform.io/] and Packer [https://www.packer.io/]. This has lead me to do some experimenting, and so far I have come up with a system
AWS Using SCP to transfer files to a private EC2 instance through a Bastion Host I have a private EC2 instance and I need to transfer GPG keys onto it (my particular use case is for Vault [https://www.vaultproject.io/]. But I am sick of having to first transfer files to my Bastion host, and then onto to my private instance. I wanted to
Terraform Building and connecting to a Mysql Database on Aurora with Terraform I can never remember how to connect to a MYSQL Database deployed with RDS and Aurora in a VPC. As my setup inevitably gets more complex, I can't seem figure out the right combination of security groups, VPC settings, and SSH tunneling flags, that lets me magically connect.
Terraform Packer and Terraform I have Terraform [https://www.terraform.io/] provisioning my EC2 instances, and Packer [https://www.packer.io/] building AMIs, but how do you get those AMI's onto the EC2 instances Terraform deployed? ....and without copy and pasting the AMI IDs Packer spits out into my terraform files. I
Terraform Creating a Bastion Host with Terraform (in AWS) Let's pretend you have these beautiful secure AWS resources. Off some where in a Private subnet hidden away. Then one day something goes wrong with one of your EC2 instances, and you have to actually get on the server and run commands....So how do you get access.
Terraform Prettier Diffing of Terraform policy changes I love Terraform [https://www.terraform.io/]. It makes managing complex infrastructure and keeping track of what changes are happening infinitely easier........except if you are changing AWS IAM [https://aws.amazon.com/iam/] policies. UPDATE: Someone has made an excellent tool that takes care of this for you! terraform-landscape
AWS The most minimal AWS Lambda + Python + Terraform setup I want to write and deploy the simplest function possible on AWS Lambda [https://aws.amazon.com/lambda/], written in Python [https://www.python.org/], using Terraform [https://www.terraform.io/]. Here is what I figured out so far: Note: These are instructions for OSX. Note: I assume that you
Terraform Featured Deploying a React App with S3 and Terraform If you want a deployed static React App [https://facebook.github.io/react/] quickly: S3 [https://aws.amazon.com/s3/], Terraform [https://www.terraform.io/] and create-react-app [https://github.com/facebookincubator/create-react-app] make it quite painless. The following are instructions for creating a new React and making publicly addressable, using