Terraform 我能在地形中避开花括号符号吗?

Terraform 我能在地形中避开花括号符号吗?,terraform,Terraform,我正在使用terraformtemplate\u文件data资源创建一个文件,当我应用堆栈时,该文件应该写入动态创建的EC2实例。换句话说,我希望在新创建的EC2实例的主文件夹中创建此文件。但是,该文件包含曲括号语法${},terraform正在尝试插入该语法。我怎样才能摆脱这些卷曲的括号 作为背景,我正在使用cloud-config语法来编写这些文件 例: ${username}应该写入文件,而不是以terraform插入 即使我使用双美元符号$$,terraform仍然会失败,因为它找不到变

我正在使用terraform
template\u文件
data资源创建一个文件,当我应用堆栈时,该文件应该写入动态创建的EC2实例。换句话说,我希望在新创建的EC2实例的主文件夹中创建此文件。但是,该文件包含曲括号语法
${}
,terraform正在尝试插入该语法。我怎样才能摆脱这些卷曲的括号

作为背景,我正在使用
cloud-config
语法来编写这些文件

例:

${username}
应该写入文件,而不是以terraform插入

即使我使用双美元符号
$$
,terraform仍然会失败,因为它找不到变量:


。。。未能呈现::105,18-26:未知变量;没有名为“username”的变量。

仅供参考,我最终通过将模板写入另一个文件,然后使用
文件
方法将其读入地形堆栈来解决此问题:

data "template_file" "config" {
  template = "${file("./user_data.tpl")}"
}

Terraform为花括号使用了一个相当独特的转义:

序列 替换 $${ 文字${,不开始插值序列。 %%{ 文本%{,不开始模板指令序列。
您能在问题中包含几行模板文件脚本吗?谢谢没有大括号的$username这似乎不适用于
NAME\u模板:%{{service\u NAME}.%{environment\u NAME}