Terragrunt: Add support for basic interpolation functions

Created on 15 Feb 2018  路  5Comments  路  Source: gruntwork-io/terragrunt

At the very least it would be very helpful to be able to use these functions inside terragrunt configurations:

See also - https://www.terraform.io/docs/configuration/interpolation.html

enhancement help wanted

Most helpful comment

Terraform uses the Mozilla License. AFAIK, that means any changes we make to that source code would have to be open sourced as well. However, we're not making changes to Terraform's code, we're just using it as a library in our code, which should be fine. Moreover, Terragrunt is open source already :)

All 5 comments

Agreed, but building them one at a time seems like a never-ending battle.

Thought experiment: is there a way to reuse Terraform's interpolation engine to get all of the functions it supports "for free"?

Yes, this should be possible from what I see in their code. Not sure about licensing or copyrights though. Do you have experience with it?

Terraform uses the Mozilla License. AFAIK, that means any changes we make to that source code would have to be open sourced as well. However, we're not making changes to Terraform's code, we're just using it as a library in our code, which should be fine. Moreover, Terragrunt is open source already :)

As of https://github.com/gruntwork-io/terragrunt/releases/tag/v0.19.0, we use the HCL2 parser, which has native support for built-in functions, and even ships with a collection of them. It should be straightforward to add support for all of these now if someone wants to submit a PR.

As of v0.19.4, all Terraform built-in functions are now supported.

Was this page helpful?
0 / 5 - 0 ratings