В Terraform у меня возникают проблемы при составлении списка, который будет храниться в переменной.
При выполнении terraform plan
меня спрашивают о cidr_blocks (это должен быть список строк).
Я пытался набрать несколько «форм», которые могут представлять список строк, но всегда получаю ошибку. Примеры:
1-я попытка:
$terraform plan
...
var.monitoring_access_ips_mysystem
Enter a value: "10.180.1.0/24", "10.180.2.0/25", "10.180.3.0/23"
2-я попытка:
var.monitoring_access_ips_mysystem
Enter a value: ["10.180.1.0/24", "10.180.2.0/25", "10.180.3.0/23"]
3-я попытка:
var.monitoring_access_ips_mysystem
Enter a value: '["10.180.1.0/24", "10.180.2.0/25", "10.180.3.0/23"]'
4-я попытка:
var.monitoring_access_ips_mysystem
Enter a value: "["10.180.1.0/24", "10.180.2.0/25", "10.180.3.0/23"]"
5-я попытка:
var.monitoring_access_ips_mysystem
Enter a value: "10.180.1.0/24"
Для любой попытки ошибка всегда одинакова:
Error: Incorrect attribute value type
on ecs/security_group.tf line 10, in resource "aws_security_group" "ecs-cluster-sg":
10: cidr_blocks = var.monitoring_access_ips_mysystem
Inappropriate value for attribute "cidr_blocks": list of string required.
И файл ecs/security_group.tf
выглядит следующим образом ecs / security_group.tf:
resource "aws_security_group" "ecs-cluster-sg" {
name = "${var.app_name}-cluster-sg"
vpc_id = var.vpc_id
ingress {
description = "Ingress from monitoring VPC on custom port"
from_port = 80
to_port = 80
protocol = "tcp"
cidr_blocks = var.monitoring_access_ips_mysystem
}
...
В каком допустимом формате я могу набирать / передавать IP-адреса, чтобы он принимался как «список строк»?