首先,对不起 - 我非常新手(只有3个小时!)使用terraform。
我想尝试在另一个变量的声明中使用变量的值。
以下是我的代码 - 我做错了什么?
variables.tf:
variable "EnvironmentName" {
type = "string"
}
variable "tags" {
type = "map"
default = {
Environment = "${var.EnvironmentName}"
CostCentre = "C1234"
Project = "TerraformTest"
Department = "Systems"
}
}
变量-dev.tfvars:
EnvShortName = "Dev"
EnvironmentName = "Development1"
#Location
Location = "westeurope"
main.tf:
resource “azurerm_resource_group” “TestAppRG” {
name = “EUW-RGs-${var.EnvShortName}”
location = “${var.Location}”
tags = “${var.tags}”
}
我遇到了以下错误:
Error: Variables not allowed on variables.tf line 18, in variable
“tags”: 18: Environment = “${var.EnvironmentName}”
在此处不允许使用变量。
我知道这个错误信息本身已经很清楚了,很可能是我的方法有误——但我该如何在定义另一个变量映射时使用变量呢?这是否可能?
我将建立多个资源,因此希望将标记构建为一个映射,并将其传递到每个资源中,但我还想通过其他tfvars文件循环使用该映射以部署多个实例供不同团队使用。