Создание пользовательских переменных Terraform при использовании Count для функций AWS Lambda

#variables #aws-lambda #count #terraform

#переменные #aws-lambda #количество #terraform

Вопрос:

Я пытаюсь сгенерировать переменную для лямбда-функции, основанной на настройке из шлюза API, созданного одновременно с использованием Terraform. Я использую trimprefix и trimsuffix для изменения настроек, которые я получаю от api gateway, которые затем я устанавливаю в качестве переменной среды, которая будет использоваться кодом функции Lambda.

Изначально я работал с использованием операторов вывода, поскольку изначально использовал модули. С тех пор я решил отойти от модулей, чтобы упростить код. Однако моя реальная проблема заключается в том, как мне выполнить действия trimprefix и trimsuffix, когда я также использую функцию подсчета.

Вот мой исходный код, когда я все еще использовал модули, и он успешно создал окончательный «invoke_url» после обрезки «https: //» с начала и «/ default» с конца.

 ## Obtain the rest_api_id
output "rest_api_id" {
  value = aws_api_gateway_deployment.retaildiscount[count.index].rest_api_id
}

## Trim the https prefix from the invoke URL and store in var.invoke_url_tmp
output "invoke_url_tmp" {
  value = trimprefix(aws_api_gateway_deployment.retaildiscount[count.index].invoke_url, "https://")
}

## Trim the /default suffix from var.invoke_url_tmp and output as var.invoke_url to be used
## by the retailorderprice function
output "invoke_url" {
  value = trimsuffix(var.invoke_url_tmp, "/default")
}
  

Сейчас я пытаюсь сделать то же самое, но при использовании «count» для создания нескольких копий одних и тех же лямбда-функций и шлюзов API (это для создания нескольких экземпляров для семинара в лабораторном стиле, каждая функция будет иметь уникальное имя, извлеченное из файла aito.tfvars

Ни за что на свете я не могу понять, как сгенерировать измененную переменную и связать ее с соответствующей функцией

Комментарии:

1. Могу ли я спросить, зачем вам нужен URL-адрес invoke внутри лямбда-функции, которая вызывается шлюзом API?