amazon-web-services - Terraform - 将变量输出为引用值
问题描述
我正在使用 Terraform 构建我们的 AWS 基础设施项目。我需要能够将多个变量输出到一个文件,然后将该文件加载回另一个 Terraform 脚本。
现在,我可以输出变量,但它们的值没有被引用:
variable = value
但是,当将变量文件加载到 Terraform 中时,它需要引用所有值,如下所示:
variable = "value"
所以我不明白为什么 Terraform 一开始不只是以这种方式导出变量。
有没有什么方法可以做到这一点而不需要我做额外的工作?
编辑:我正在使用 Terraform v0.11.13,由于安全限制无法升级
解决方案
以 JSON 格式输出并使用 JQ 转换为您喜欢的内容。
terraform output -json
主文件
output "hogehoge" {
value = "hogehoge"
}
执行
$ terraform apply
Outputs:
hogehoge = hogehoge
$ terraform output -json
{
"hogehoge": {
"sensitive": false,
"type": "string",
"value": "hogehoge"
}
}
但是,正如@ydaetskcoR 评论的那样,为什么不使用data.terraform_remote_state
?
推荐阅读
- java - 试图在子类中调用超类方法
- python-3.x - Python 3 跳转表
- symfony - Symfony 3.4 中 ArrayCollection / OneToMany 关系的类型错误
- node.js - How to control the inner join query in sequelize using node.js?
- javascript - 你如何让javascript(包括带有数组和返回的函数)在按钮点击时写入div而不转到另一个页面
- javascript - 使用 angularjs 触发 HTML 属性而不使用按钮
- javascript - 什么是`vsc-initialized`?
- android - :app:transformClassesWithDexBuilderForDebug 添加领域后异常
- ruby-on-rails - 红宝石正则表达式匹配
- mysql - MySQL:语句中有两个计数