« How we stay on top of Terraform versions

December 1, 2017 • ☕️ 1 min read

At Labrador we have all our infrastructure in code, we use AWS and love Terraform.

In my previous gig I’ve been trough the pains of upgrading Terraform and here I’ve (almost accidentally) found a way to stay on top of the versions.

We run our plan and apply continuously (git push on master) on Concourse CI: we love this CI/CD tool, it’s so command line, API, configuration, container driven, it enables us to do the right thing, by default.

On Concourse we always pull the latest hashicorp/terraform image from docker hub to run the plan/apply: that way we will fail fast the build if the new version introduces some regression bugs on our infrastructure code.

On local development we use tfenv, and we have a .terraform-version file on git, if you try to plan after the CI applied with a higher version of terraform you will get an error, that way it’s easy to keep that file and the terraform version locally up to date.

I’ve updated today my terraform to 0.11.1, what’s your version? ;)