所以我有一个 ecs-task-definition,我想在我的容器中的 hosts 文件中添加一个值。这可以使用额外的主机块来完成:
extraHosts: A list of hostnames and IP address mappings to append to the /etc/hosts file on the container list(string)
有关更多信息,请参阅此处。
我正在尝试让这个额外的主机块在上面链接的 terraform-aws-ecs-task-definition 模块中运行。我拥有的块如下所示:
extraHosts = [
{
"ipAddress": "x.x.x.x",
"hostname": "mongo1"
},
{
"ipAddress": "x.x.x.x",
"hostname": "mongo2"
},
]
但是这个语法让我:
The given value is not suitable for child module variable "extraHosts" defined
at
.terraform/modules/ecs-task-definition/terraform-aws-ecs-task-definition-2.0.1/variables.tf:66,1-22:
element 0: string required.
过去有没有人将extraHosts块用于他们的IaC?你能建议正确的语法吗?
模块请求错误的类型。模块的extraHosts
变量在您尝试传递list(object(...))
时需要list(string)
(。
https://github.com/mongodb/terraform-aws-ecs-task-definition/issues/33 已经存在一个问题,但是将类型更改为list(any)
,或者更准确地说,将模块中的list(object([ipAddress = string, hostname = string]))
切换到应该可以解决它。
很抱歉延迟响应。我已经编写了一个更改来解决此问题。此修复适用于 v2.1.1。