如何解决为现有实例编写Terraform代码aws_lb_target_group_attachment错误不支持的块类型
我正在尝试为aws_lb_target_group_attachment中的现有EC2实例编写代码,但得到了不受支持的块类型。这是代码:
variable "target_id" {
default = [
{
name = "i-123456789abcdefgh"
},{
name = "i-24680bcgdhkij1234"
}
]
}
resource "aws_lb_target_group_attachment" "mytestAlb" {
target_group_arn = aws_lb_target_group.mytestAlb.arn
dynamic "target_id" {
for_each = var.target_id
content {
name = target_id.value["name"]
}
}
}
我遇到两个错误
- 错误:缺少必需的论证,target_id是必需的,但未找到定义
- 错误:不支持的块类型,此处不应该使用target_id类型的块。 我尝试了不同的变量名,但也没有用。抱歉,花了很长时间,所以需要另一双眼睛。这些EC2实例已启动并正在运行。.
解决方法
之所以会这样,是因为target_id
不是障碍。它需要一个实例ID。
因此,您应该这样做:
resource "aws_lb_target_group_attachment" "mytestAlb" {
for_each = {for idx,v in var.target_id: idx => v}
target_group_arn = aws_lb_target_group.mytestAlb.arn
target_id = each.value["name"]
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。