Получить подстроку из списка строк в terraform

Существует список строк, которые являются выходными данными пиринга vnet. Мне нужно извлечь все имена исходных виртуальных сетей в один список и имена целевых виртуальных сетей в другой список. Мои имена пиринга vnet, как показано ниже

      Peer =["vnet1tovnet2",
       "vnet1tovnet3",
       "vnet4tovnet5"]

Мне нужно два списка в формате ниже

      source=["vnet1","vnet1",vnet4"]
dest=["vnet2","vnet3","vnet5"]

Как это может быть достигнуто в terraform

1 ответ

Вы можете сделать это следующим образом:

      locals{

  Peer =["vnet1tovnet2",
         "vnet1tovnet3",
         "vnet4tovnet5"]
    
  source = [for v in local.Peer: split("to", v)[0]]
  dest = [for v in local.Peer: split("to", v)[1]]

}
Другие вопросы по тегам