我想在具有大量端口组的环境中自动部署 Vmware VM。为了能够选择正确的端口组,最好输入 2 个变量租户和环境。这 2 个变量用于 CMDB 注册和部署目的。
对于部署,需要将变量组合成 1 个新变量以选择正确的端口组。由于插值语法,在查找中使用 2 个组合变量似乎是不可能的。
如何在 Terraform 中将 2 个变量组合为 1?
我还尝试使用正确的字符串制作本地文件,但该文件需要在脚本启动之前存在,terraform plan 会给出该文件不存在的错误消息。
variable "tenant" {
description = "tenant: T1 or T2"
}
variable "environment" {
description = "environment: PROD or TEST"
}
variable "vm_network" {
description = "network the VM will be provisioned with"
type = "map"
default = {
T1_PROD = "T1-PROD-network"
T2_PROD = "T2-PROD-network"
T1_TEST = "T1-TEST-network"
T2_TEST = "T2-TEST-network"
}
}
data "vsphere_network" "network" {
name = "${lookup(var.vm_network, tenant_environment)}"
datacenter_id = "${data.vsphere_datacenter.dc.id}"
}