terraform - Terraform,将用户输入变量转换为类型列表
问题描述
在 Terraform 中,我希望用户输入变量(类型列表)的值,而不必过多担心列表变量的语法。例如,Terraform 需要以下列表语法:
Enter value: ["value1", "value2", "value3"]
如果用户只需要输入一个逗号分隔的列表而不必担心添加引号和括号,那就太好了。例如:
Enter value: value1, value2, value3
从逗号分隔的字符串中,我想将其转换为具有正确语法的类型列表。
我当前的代码看起来像这样,我认为我什至还没有弄清楚。任何帮助表示赞赏!
variable "subnetNames" {
description = "Enter value:"
default = "value1, value2, value3"
}
output "test" {
value = "${join(",", list("[", var.subnetNames, "]"))}"
}
解决方案
您想使用该split
功能。
variable "subnetNames" {
default = "value1,value2,value3"
}
output "test" {
value = "${split(",", var.subnetNames)}"
}
$ terraform init && terraform apply
Apply complete! Resources: 0 added, 0 changed, 0 destroyed.
Outputs:
test = [
value1,
value2,
value3
]
推荐阅读
- javascript - 如何等待包含异步函数调用的 forEach 完成
- javascript - 比较运算符 false
- android - 带导航栏的键盘向上移动 framelayout
- mysql - MySQL SELECT JSON 数组中的所有 id 和子 id
- c - 枚举长度的数组大小会导致编译错误
- vue.js - VueJS在新页面中编辑表格中的数据
- python - 如何在熊猫中指定确切的列数
- llvm - 如何使用 LLVM C++ API 实现函数指针?
- python-3.x - pandas 更改列值并基于此更改另一个列值
- javascript - Javascript:for循环检索和打印一定数量的API数据