Terraform:将var传递给函数

Terraform:将var传递给函数,terraform,Terraform,我尝试在tf文件中动态创建子网,使用cidrsubnet函数并将cidr作为变量传递给它 然而,以下 cidr_block = "${cidrsubnet(${var.vpc_cidr}, 8, count.index + 1)}" 产生以下错误: 错误:表达式无效 在模块/子网/main.tf第9行的资源“aws_子网”中 “环境专有网络”:9:cidr\U区块= ${cidrsubnet(${var.vpc_cidr},8,count.index+1)} 应

我尝试在
tf
文件中动态创建子网,使用
cidrsubnet
函数并将cidr作为变量传递给它

然而,以下

  cidr_block              = "${cidrsubnet(${var.vpc_cidr}, 8, count.index + 1)}"

产生以下错误:

错误:表达式无效

在模块/子网/main.tf第9行的资源“aws_子网”中

“环境专有网络”:9:cidr\U区块= ${cidrsubnet(${var.vpc_cidr},8,count.index+1)}

应为表达式的开头,但发现无效的表达式 代币


有什么建议吗?

一旦打开插值语法,就不再需要为每个插值指定它

换句话说,不是:

${cidrsubnet(${var.vpc_cidr}, 8, count.index + 1)}
具体说明:

${cidrsubnet(var.vpc_cidr, 8, count.index + 1)}
“无效表达式标记”在
var.vpc_cidr
之前是${。只需将右侧替换为:
“${cidrsubnet(var.vpc_cidr,8,count.index+1)}”