DEV Community

loading...

Enabling Remote State with Terraform

documentednerd profile image Kevin Mack Originally published at welldocumentednerd.com on ・1 min read

So I’ve made no secret of my love of TerraForm. Honestly, I really like TerraForm for using infrastructure as code. Now one of the features that I really like about TerraForm, is the ability to execute a plan and see what’s going to change.

What is state in Terraform?

Terraform leverages using state to enable the ability to have the “plan/apply” functionality. Which makes it such that you can see the changes before they are applied.

How do we enable remote state?

So the process of enabling state remotely isn’t necessarily hard, and is requires a simple piece of code. For my projects, I add a “Terraform.tf”, that contains this information. NOTE: I do usually add this to the gitignore, so that I’m not checking in the keys:

terraform { backend "azurerm" { resource\_group\_name = "..." storage\_account\_name = "..." container\_name = "..." key = "..." } }
Enter fullscreen mode Exit fullscreen mode

It really is that simple, and the key part of this is it becomes very important if you are working with more than one person on deploying to the same environment. In that scenario, if you have two developers using local state, then your state can become out of sync. But this is an easy way to make sure that you manage state in a way that allows collaboration.

Discussion

pic
Editor guide