Terraform, строка в список ошибок при подсчете - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь создать пьесу Terraform, которая создает маршруты Azure через цикл.

Конечной целью является то, что пользователь будет вводить свои пункты назначения в списке через запятую. Например:

Enter route destinations: 0.0.0.0/0,192.168.0.0/16

Из этой переменной azurerm_route будет проходить через эту функцию и создавать маршруты.

variable "destinations" {
  default = "0.0.0.0/0,192.168.0.0/16"
}

resource "azurerm_route" "route" {
  name                    = "route-${count.index}"
  resource_group_name     = "resourcegroup"
  route_table_name        = "table"
  address_prefix          = "${split(",", var.destinations)}[count.index]"
  next_hop_type           = "Internet"
  count                   = "${length(split(",", var.destinations))}"
}

Однако у меня проблема с подсчетом по списку префиксов, и я получаю следующую ошибку:

* azurerm_route.route[1]: At column 1, line 1: output of an HIL 
expression must be a string, or a single list (argument 1 is 
TypeList) in:

${split(",", var.destinations)}[count.index]

* azurerm_route.route[0]: At column 1, line 1: output of an HIL 
expression must be a string, or a single list (argument 1 is 
TypeList) in:

${split(",", var.destinations)}[count.index]

1 Ответ

0 голосов
/ 09 января 2019

Разобрался. Вы должны использовать элемент интерполяции.

resource "azurerm_route" "route" {
  name                    = "route-${count.index}"
  resource_group_name     = "resourcegroup"
  route_table_name        = "table"
  address_prefix          = "${element(split(",",var.destinations),count.index)}"
  next_hop_type           = "Internet"
  count                   = "${length(split(",",var.destinations))}"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...