DEV Community

Page It to the Limit

Talking Terraform With HashiCorp

“Any time you’re clicking more than five times in a UI you’re attempting to get some job done. And, if that job is modeling an idea…and there is an API addressable layer there, that is an opportunity for Terraform to consume that API and allow you to just say directly in a declarative configuration, this is what I want.” – Paul Hinze, Senior Director of Engineering for Terraform at HashiCorp.

What is Terraform

Robbie Th’ng and Paul Hinze discuss how Terraform provisions infrastructure as well as external development tools.

“To most people, Terraform is the best way to provision infrastructure. That was true for a fairly long time, but I think it’s now the best way to provision external development tools as well as the infrastructure.” - Robbie

Common Myths and Misconceptions Surrounding Terraform

Terraform is a tool that addresses an abstract problem that usually requires trying it out before really “getting it”.

“A lot of those common misconceptions are not having it all click in your brain. For those folks–trying it out–you really get that ‘ah ha’ moment.” - Paul

Robbie talks about how Terraform isn’t always the best tool to use. He said, “people often think that we only think Terraform is the way to do things, and that is definitely not true.”

Both Paul and Robbie talk about the HashiCorp philosophy of building tools.

Common Stumbling Blocks While Learning Terraform

The adoption of Terraform usually travels along the same progression. First, you digest the concept of Infrastructure as Code (IaC). Then, there’s the HashiCorp Configuration Language (HCL), which provides an opinionated approach to IaC. And, finally as your operation scales you need to figure out how to organize and share our code configuration.

Paul said: “Helping people link their brains back to the ways in which they solved these problems for application code [helps] because a lot of those solutions are going to be same.”

Most Unique Use Cases

There is a Terraform provider that allows you to configure and order pizza. No Joke.

“The number of providers is staggering.” - Robbie

Industry has followed Terraform as configuration solutions have become more necessary with the rising complexity of infrastructures and the sheer scale of operations.

“There is no world where there are fewer services. There is no world where there is less software.” - Paul

Building Providers

We discuss the provider development ecosystem in general, and the PagerDuty Provider specifically. We talk about the provider’s origin, being developed by an engineer in Sweden named Alexander Hellbom. He was impressed by the positive and supportive nature of the Terraform development community.

“The providers make Terraform.” - Paul

What’s Next for Terraform

“What’s next for Terraform is trying to give more back to the community, in all honesty.” - Robbie

The team at HashiCorp continue to develop on the Terraform offering. They launched Terraform Cloud last year to help facilitate collaboration.

Additional Resources

Episode source