- 21, Oct 2024
- #1
;
После обновления до 0.12 я получаю множество ошибок, например:
output "instance_names" { value = [ "${data.template_file.instance_tags_name.*.rendered}", ] }
Вот с моего main.ft:
module "mongodb" {
source = "../modules/mongodb"
instance_count = "1"
environment = var.env
instance_type = "i3.large"
subnet_id = element(tolist(data.aws_subnet_ids.private.ids), 0)
associate_public_ip_address = false
vpc_id = data.aws_vpc.vpc.id
tags = merge(
{
"Environment" = var.env
},
var.default_tags,
)
iam_instance_profile = var.iam_instance_profile
route53_zone_id = data.aws_route53_zone.zone.zone_id
ami = var.ami
}
output "mongodb_private_ip" {
value = module.mongodb.private_ip
}
output "tags" {
value = module.mongodb.instance_names
}
И модуль:
connection_strings_mongodb_standalone = join(
"\n",
formatlist(
"%s ansible_host=%s ansible_user=ubuntu",
module.mongodb.instance_names,
module.mongodb.private_ip,
),
из ../modules/mongodb output.tf:
Error: Error in function call
on main.tf line 136, in data "template_file" "inventory":
136: formatlist(
137:
138:
139:
140:
|----------------
| module.mongodb.instance_names is tuple with 1 element
| module.mongodb.private_ip is list of string with 1 element
Call to function "formatlist" failed: error on format iteration 0: unsupported
value for "%s" at 0: string required.
Как я правильно понимаю, нужно установить тип выходного значения, но не могу найти, как это сделать, надеюсь, кто-нибудь мне поможет.
Заранее спасибо.