Функция Azure исчезает при применении терраформ - PullRequest
0 голосов
/ 15 февраля 2019

Мы предоставили решение с помощью terraform в Azure. Одним из шагов является предоставление приложения-функции

. Отдельные конвейеры устанавливают программную функцию в приложение-функцию

, когда я перезапускаю приложение terraform (дляобновление чего-либо) функции программного обеспечения удалены из приложения Azure Function

При использовании terraform версии 1.22 это ожидаемое поведение?

Продолжение исходного вопроса.Я полагаю, что изменение сегодня с terraform 1.21 до 1.22 добавило дополнительный набор приложений в приложение-функцию.который, казалось, заново развернул все приложение функции вместо того, чтобы просто добавить настройку приложения и тем самым разрушить функциональность, потому что функции исчезли.

Я не уверен, является ли это ошибкой или ожидаемым поведением, но по крайней мереэто то, чего мы не ожидали.

Поскольку я не хочу развертывать что-либо снова только из-за изменения набора приложений.Кто-нибудь сталкивается с этим, и у вас есть обходной путь, или это рабочий процесс, который я пропустил в документации terraform.

Дополнительная информация Edit 2:

Функция Azure, созданная следующим образом

resource "azurerm_function_app" "xxx"{
name = "xxx-status2signalr-func"
location = "${var.region}"
resource_group_name = "${azurerm_resource_group.xxx.name}"
app_service_plan_id = "${azurerm_app_service_plan.xxx.id}"
storage_connection_string = "${azurerm_storage_account.xxx.primary_connection_string}"
enable_builtin_logging = "false"
app_settings {      
  "blabladosmomethingEventhub" = "${var.blabla-something-eventhub}"
  "blabladosomethingChangedEventhubConsumer" = "${var.blabla-dosomething-eventhub-consumer}"
  "blablasomethingEventhubConnectionkeyListen" = "${var.xxxblabladosomethingchangedlisten}"
  "AzureSignalRConnectionString" = "${azurerm_signalr_service.xxx.primary_connection_string}"
  "WEBSITE_RUN_FROM_PACKAGE" = "1"
}
enabled="true"
version="~2"

}

Прекрасно создана функция Мы развернули программную часть функции, в настоящее время использующую Visual Studio. Щелкните правой кнопкой мыши развернуть

Все работает

Теперь мы сделалипосле изменения ключа appsettings

resource "azurerm_function_app" "xxx"{
name = "xxx-status2signalr-func"
location = "${var.region}"
resource_group_name = "${azurerm_resource_group.xxx.name}"
app_service_plan_id = "${azurerm_app_service_plan.xxx.id}"
storage_connection_string = "${azurerm_storage_account.xxx.primary_connection_string}"
enable_builtin_logging = "false"
app_settings {
  "APPINSIGHTS_INSTRUMENTATIONKEY" = "${azurerm_application_insights.xxx.instrumentation_key}"
  "blabladosmomethingEventhub" = "${var.blabla-something-eventhub}"
  "blabladosomethingChangedEventhubConsumer" = "${var.blabla-dosomething-eventhub-consumer}"
  "blablasomethingEventhubConnectionkeyListen" = "${var.xxxblabladosomethingchangedlisten}"
  "AzureSignalRConnectionString" = "${azurerm_signalr_service.xxx.primary_connection_string}"
  "WEBSITE_RUN_FROM_PACKAGE" = "1"
}
enabled="true"
version="~2"

}

вывод плана показал обновление 1 "APPINSIGHTS_INSTRUMENTATIONKEY" = "$ {azurerm_application_insights.xxx.instrumentation_key}"

При проверке ключ appsetting был приятно добавлен, но развернутое программное обеспечение исчезло.

Любые указатели на это очень приветствуются.

...