小编Ben*_*eke的帖子

使用 terraform apply 时 Azure Function 消失

我们在 azure 中使用 terraform 提供了一个解决方案,其中一个步骤是提供一个函数应用程序

单独的管道在函数应用程序中安装软件函数

当我重新运行 terraform apply (用于更新某些内容)时,软件功能将从 azure 功能应用程序中删除

使用 terraform 版本 1.22 这是预期的行为吗?

从原来的问题延伸出来。我相信今天从 terraform 1.21 到 1.22 的更改为函数应用程序添加了额外的应用程序设置。这似乎重新部署了整个功能应用程序,而不是仅仅添加应用程序设置,并因此破坏了功能,因为功能消失了。

我不确定这是否是一个错误或预期的行为,但至少这是我们没有预料到的。

因为我不想仅仅因为应用程序设置的更改而再次部署某些内容。有人遇到这个问题吗?你有解决办法吗?或者他们的工作流程是我在 terraform 文档中错过的。

额外信息编辑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"
Run Code Online (Sandbox Code Playgroud)

}

功能创建得很好我们部署了当前使用Visual Studio右键部署功能的软件部分

一切正常

现在我们对 appsettings 键进行了以下更改

resource "azurerm_function_app" "xxx"{ …
Run Code Online (Sandbox Code Playgroud)

azure terraform azure-functions terraform-provider-azure

6
推荐指数
2
解决办法
2593
查看次数