Intermediate HCL: Configuration Languages in HCL2

Learn how it's possible to create really powerful configuration languages using HCL.

At HashiCorp we have started using HCL to configure our continuous integration system for Terraform Cloud. Learning HCL and how to write a configuration language for deploys taught us a lot. But not many people have access to the HCL developers at HashiCorp.

There are a lot of examples of simple HCL usage and how to get started parsing simple data structures represented in it. There are some amazing examples of incredibly complicated HCL usage (the source code to Terraform is right there for you!). But for those of us sitting between "Hello World" and HCL expert, there's a lot of ground to cover.

What You'll Learn

Using examples and demos, this talk will walk through leveling up HCL knowledge from level 2 to level 7. You'll see examples of using functions, variables, and polymorphism to work through a "configuration DSL" built using HCL. The example will be fun and simple, but the techniques should be generalizable to a lot of problems.

You'll also see code samples and and a demo of a simple application that uses HCL for configuration.


More resources like this one

  • 3/15/2023
  • Presentation

Advanced Terraform techniques

  • 2/3/2023
  • Case Study

Automating Multi-Cloud, Multi-Region Vault for Teams and Landing Zones

  • 2/1/2023
  • Case Study

Should My Team Really Need to Know Terraform?

  • 1/20/2023
  • Case Study

Packaging security in Terraform modules