Mac*_*iej 5 amazon-web-services terraform terraform-provider-aws
我想知道如何从以下输出中访问该值:
output "backend_tg_arn" {
value = var.backend_tg_needed ? aws_lb_target_group.backend_tg[*].arn : null
}
Run Code Online (Sandbox Code Playgroud)
它是用以下代码生成的:
resource "aws_lb_target_group" "backend_tg" {
count = var.backend_tg_needed ? 1 : 0
name = "${var.client_code}-${var.environment}-backend-tg"
port = var.backend_port
protocol = "HTTP"
target_type = var.backend_target_type
vpc_id = aws_vpc.main_vpc.id
}
Run Code Online (Sandbox Code Playgroud)
上面的输出作为变量传递给另一个模块:
backend_tg_arn = module.network.backend_tg_arn
Run Code Online (Sandbox Code Playgroud)
我试图将其分配给 alb 侦听器的默认操作:
default_action {
type = "forward"
target_group_arn = var.backend_tg_arn
}
}
Run Code Online (Sandbox Code Playgroud)
出现错误:
var.backend_tg_arn 是有 1 个元素的元组
属性“target_group_arn”的值不合适:需要字符串。
我正在努力如何访问这个arn
值...它应该通过某种循环来完成,但无法弄清楚。
您始终将计数设置为 1,这样您就可以只输出第一个元素(如果已创建):
output "backend_tg_arn" {
value = var.backend_tg_needed ? aws_lb_target_group.backend_tg[0].arn : null
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
28541 次 |
最近记录: |