как развернуть существующую функцию Azure, используя Terraform - PullRequest
0 голосов
/ 05 июня 2019

У меня есть функция Azure, созданная с использованием Visual Studio локально. Я пытаюсь развернуть функцию Azure с помощью terraform, но выдает ошибку

Код, который я пробую, показан ниже:

resource "azurerm_function_app" "testDeployTF" {
  name                      = "testDeployADddecendant"
  location                  = "${azurerm_resource_group.rg-testDeployTF.location}"
  resource_group_name       = "${azurerm_resource_group.rg-testDeployTF.name}"
  app_service_plan_id       = "${azurerm_app_service_plan.sp-testDeployTF.id}"
  storage_connection_string = "DefaultEndpointsProtocol=https;AccountName=xxxx;AccountKey=xxxxxxxxxxx;EndpointSuffix=core.windows.net"

  app_settings {
    HASH            = "${base64sha256(file("FunctionApp1.zip"))}"
    WEBSITE_USE_ZIP = "https://${decendant.sa-testDeployTF.name}.blob.core.windows.net/${azurerm_storage_container.sc-testDeployTF.name}/${azurerm_storage_blob.sb-testDeployTF.name}${data.azurerm_storage_account_sas.sas-testDeployTF.sas}"

  }
}

Если я удаляю app_setting, код создает новую пустую функцию, но я хочу, чтобы мне нужна новая функция с кодом, который у меня есть в моем локальном.

При использовании app_seettings приведенный выше код выдает следующую ошибку:

Ошибка: неподдерживаемый тип блока

в строке 78 terraformscript.tf в ресурсе "azurerm_function_app" "testDeployTF": 78: app_settings {

Блоки типа "app_settings" здесь не ожидаются.

1 Ответ

1 голос
/ 05 июня 2019

Для вашей проблемы вы можете просто использовать Terraform для создания пустой функции Azure, а не с вашим кодом. Кроме того, когда вы используете Visual Studio локально, она создает пустую функцию для вас, а затем использует инструмент Azure-Function-Core-Tool для копирования кода для вас.

Вы можете ознакомиться с подробной информацией о azure-function-core-tool . И когда вы используете интерфейс командной строки Azure, ему также необходимо использовать инструмент, см. Шаги в Создание первой функции из командной строки .

...