此解决方案here不适合我。
// my tf file:
variable "myvar" {type = "list"}
module "my-module" {
blah = "${var.myvar}"
source = "path/to/module"
}
各种命令行尝试:
terraform plan -var myvar="zzzz"
should be type list, got string
terraform plan -var myvar=["zzzz"]
invalid value "myvar=[zzzz]" for flag -var: Cannot parse value for variable ("[zzzz]") as valid HCL: At 1:6: unexpected token while parsing list: IDENT
terraform plan -var 'myvar=["zzzz"]'
invalid value "myvar=[zzzz]" for flag -var: Cannot parse value for variable ("[zzzz]") as valid HCL: At 1:6: unexpected token while parsing list: IDENT
最佳答案
奇怪。
我使用了以下main.tf
variable "test" {
type = "list"
}
并运行:
$ terraform version
Terraform v0.11.1
$ terraform plan -var 'test=["vvv"]'
成功完成。
您的文件/模块中的其他位置可能存在不正确的IDENT
。请尝试运行以下命令来验证除未设置变量之外的所有内容:
$ terraform validate -check-variables=false
关于terraform - 如何传递列表作为参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48086957/