Развертывание приложения Terraform Azure Function - Представление настроек
Я пытаюсь развернуть приложение-функцию Azure через Terraform
Я получаю следующие ошибки при попытке представить настройки приложения-функции:
Ошибка: azurerm_function_app.func-app-1: неверный или неизвестный ключ: always_on
Ошибка: azurerm_function_app.func-app-1:: неверный или неизвестный ключ: use_32_bit_worker_process
Ошибка: azurerm_function_app.func-app-1:: неверный или неизвестный ключ: websockets_enabled
Ниже приведен код, который я использую:
resource "azurerm_function_app" "func-app-1" {
name = "${var.func_app_1}"
location = "${data.azurerm_resource_group.core-rg.location}"
resource_group_name = "${data.azurerm_resource_group.core-rg.name}"
app_service_plan_id = "${data.azurerm_app_service_plan.app-service-plan-1.id}"
storage_connection_string = "${data.azurerm_storage_account.storage-account-1.primary_connection_string}"
version = "~1"
https_only = "true"
enabled = "true"
always_on = "true"
use_32_bit_worker_process = "false"
websockets_enabled = "true"
client_affinity_enabled = "false"
app_settings {
"FUNCTIONS_EXTENSION_VERSION" = "~1"
"KeyVaultURI" = “”
"WEBSITE_NODE_DEFAULT_VERSION" = "6.5.0"
}
}
Любая помощь будет оценена
Спасибо
1 ответ
Я считаю, что вам нужно добавить те значения, которые содержат ошибки в блоке site_config, в соответствии с документами здесь: https://www.terraform.io/docs/providers/azurerm/d/app_service.html
Вам нужно определить настройки приложения в variables.tf
resource "azurerm_function_app" "func-app-1" {
name = "${var.func_app_1}"
location = "${data.azurerm_resource_group.core-rg.location}"
resource_group_name = "${data.azurerm_resource_group.core-rg.name}"
app_service_plan_id = "${data.azurerm_app_service_plan.app-service-plan-1.id}"
storage_connection_string = "${data.azurerm_storage_account.storage-account-1.primary_connection_string}"
version = "~1"
https_only = "true"
enabled = "true"
always_on = "true"
use_32_bit_worker_process = "false"
websockets_enabled = "true"
client_affinity_enabled = "false"
app_settings = "${var.app_settings}"
}
В variables.tf
variable "app_settings" {
description = "A key-value pair of App Settings"
default = {
"FUNCTIONS_EXTENSION_VERSION" = "~1",
"KeyVaultURI" = “”,
"WEBSITE_NODE_DEFAULT_VERSION" = "6.5.0"
}
}
Пожалуйста, определите то же самое в site_config. Пожалуйста, обратитесь к приведенному ниже коду. Вы можете добавить дальше
resource "azurerm_function_app" "prod" {
name = "${var.function_app_name}"
location = "${azurerm_resource_group.prod.location}"
resource_group_name = "${azurerm_resource_group.prod.name}"
app_service_plan_id = "${azurerm_app_service_plan.prod.id}"
storage_connection_string = "${azurerm_storage_account.prod.primary_connection_string}"
version = "~2"
app_settings = {
APPINSIGHTS_INSTRUMENTATIONKEY = "${azurerm_application_insights.prod.instrumentation_key}"
FUNCTIONS_EXTENSION_VERSION = "~2"
FUNCTIONS_WORKER_RUNTIME = "dotnet"
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING = "${azurerm_storage_account.prod.primary_connection_string}"
WEBSITE_CONTENTSHARE = "${var.storage_account_name}"
}
site_config {
always_on = "true"
}
}