如何使用 terraform 生成 yml 配置文件

Posted

技术标签:

【中文标题】如何使用 terraform 生成 yml 配置文件【英文标题】:How to generate yml config file using terraform 【发布时间】:2021-09-25 08:39:32 【问题描述】:

我想使用 terraform 生成 yml 配置文件,谁能帮帮我? 假设我希望我的 config.yml 文件内容为

this is a line
this is 2nd line

我该怎么做

【问题讨论】:

为什么要用terraform创建一个yml文件?你的用例是什么? 您如何传递数据以在 yaml 配置中对其进行编码?数据是通过标准输入还是来自其他来源? @aashitvyas 我有一个 variable.tf 文件,它为我提供了带有 IP 地址列表的变量我还有一个模板文件,我正在其中运行 for 循环以列出我 variables.tf 中的 IP 地址。在我的 main.tf 中,我使用 templatefile() 函数来使用我的 template.tpl 文件,它工作正常我在 块中编写了代码。 现在的问题是我有多行输出,输出格式是 heredoc,在输出周围打印出 但是,在使用 -raw 选项时,我们不能一起打印每个输出。我们必须一一提到每个标签才能以 -raw 格式打印。我在想我是否可以在输出块中只使用一个“值”键,它将包含字符串和 templatefile() 函数。 我知道我的解释有点混乱,很抱歉我是 terraform 的新手,所以我尽力解释了情况 【参考方案1】:

您可以使用 yamlencode 函数来制作格式正确的 yaml ,但不能使用文件。您可以在 here 找到有关如何使用它的示例。

【讨论】:

我也是这么想的,但是我刚开始学习 terraform,我对块感到困惑。我不知道在哪个块中或如何在 main.tf 中使用 yamelencode

以上是关于如何使用 terraform 生成 yml 配置文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在 terraform 中导入生成的 Kubernetes 集群的命名空间

如何使用 Spring Boot 配置文件

如何使用 Terraform 公开具有公共 IP 地址的 Azure Kubernetes 集群

AWS on Terraform - 如何避免“强制使用新资源”

引用 IP 地址生成配置文件时的 Terraform 循环依赖问题

如何使用 Terraform 配置 AWS EKS 自动扩缩器?