Я представляю приложение-функцию Azure как модуль в Terraform, в котором я хочу, чтобы модуль позволял пользователю расширять параметр конфигурации:
resource "azurerm_function_app" "test" {
name = "${var.prefix}-listener"
resource_group_name = "${var.resource_group_name}"
location = "${var.resource_group_location}"
app_service_plan_id = "${var.app_service_plan_id}"
storage_connection_string = "${var.storage_account_connection_string}"
app_settings = {
HASH = "${data.archive_file.test.output_base64sha256}"
WEBSITE_USE_ZIP = "https://${var.storage_account_name}.blob.core.windows.net/${azurerm_storage_container.test.name}/${azurerm_storage_blob.test.name}${data.azurerm_storage_account_sas.test.sas}"
}
site_config {
always_on = true
}
}
Однако в этом примере app_settings
является фиксированным, и я бы хотел, чтобы было возможно расширить эту карту. Что-то вроде:
app_settings = ${merge({
HASH = "${data.archive_file.test.output_base64sha256}"
WEBSITE_USE_ZIP = "https://${var.storage_account_name}.blob.core.windows.net/${azurerm_storage_container.test.name}/${azurerm_storage_blob.test.name}${data.azurerm_storage_account_sas.test.sas}"
}, ${var.app_settings})}
Я понял эту идею, прочитав функцию слияния . Однако я получаю Неверное выражение Ошибка.
Какой здесь правильный синтаксис?