After upgrading to 0.12 I receive a lots of error like:
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.
Here is from my main.ft:
connection_strings_mongodb_standalone = join(
"\n",
formatlist(
"%s ansible_host=%s ansible_user=ubuntu",
module.mongodb.instance_names,
module.mongodb.private_ip,
),
And module:
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
}
from ../modules/mongodb output.tf:
output "instance_names" {
value = [
"${data.template_file.instance_tags_name.*.rendered}",
]
}
As I correct understend need to set type of output value, but can't find how, hope someone can help me. Thanks in advance.