Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Terraform 输出null_数据_源输出为平面地图,而不是地形中的地图数组_Terraform - Fatal编程技术网

Terraform 输出null_数据_源输出为平面地图,而不是地形中的地图数组

Terraform 输出null_数据_源输出为平面地图,而不是地形中的地图数组,terraform,Terraform,如何获得所需的输出,我缺少什么您需要flatte()函数 使用函数concat() 这是输出 variable "vpc1" { type = "list" default = [ "name1:ip1:az1:dedicated", "name2:ip2:az2:dedicated", ] } variable vpc2 { type = "list" default = [ "foo:10.1:east:yes", "bar:10.2

如何获得所需的输出,我缺少什么

您需要
flatte()函数

使用函数
concat()

这是输出

variable "vpc1" {
  type = "list"

  default = [
    "name1:ip1:az1:dedicated",
    "name2:ip2:az2:dedicated",
  ]
}

variable vpc2 {
  type = "list"

  default = [
    "foo:10.1:east:yes",
    "bar:10.2:west:no",
  ]
}

output "mappings" {
  value = "${flatten(concat(var.vpc1, var.vpc2))}"
}
参考:


谢谢。。尝试对第一种情况的输出“mappings”{value=“${flatte(concat(data.null\u data\u source.values.*.outputs))}使用展平选项。无效。以与嵌套列表相同的方式应用完整的打印!资源:0已添加,0已更改,0已销毁。输出:mappings=[{name1=foo},{name2=bar}当我从var.vpc1中筛选出第一个字段(name1,name2)和(foo,bar)中相应的值时从var.vpc2它把它放在一个带有花括号的数组中,这不是我想要的,展平只在它们位于方括号内时有效。这里的示例与您正在测试的文件不同。我猜不出您的原始地形文件。如果您放的是真实的,我们应该可以修复
  output  "mappings" {
    value = "${flatten(data.null_data_source.values.*.outputs)}"
  }
variable "vpc1" {
  type = "list"

  default = [
    "name1:ip1:az1:dedicated",
    "name2:ip2:az2:dedicated",
  ]
}

variable vpc2 {
  type = "list"

  default = [
    "foo:10.1:east:yes",
    "bar:10.2:west:no",
  ]
}

output "mappings" {
  value = "${flatten(concat(var.vpc1, var.vpc2))}"
}
$ terraform apply

Apply complete! Resources: 0 added, 0 changed, 0 destroyed.

Outputs:

mappings = [
    name1:ip1:az1:dedicated,
    name2:ip2:az2:dedicated,
    foo:10.1:east:yes,
    bar:10.2:west:no
]