从 Azure DevOps 进行新的 ARM 部署后删除了 Azure Function 代码
Azure Function code deleted after a new ARM deployment from Azure DevOps
我正在 运行 使用自定义 ARM 模板来通过 Azure DevOps 管道为 Azure 函数创建基础结构(动态应用服务计划、存储帐户等)。
我还通过 Azure DevOps 从不同的 Github 存储库在不同的 Azure DevOps 管道中部署我的函数代码。
在我成功部署基础设施和代码后,如果基础设施的管道再次 运行s 它会删除代码,即使我对基础设施所做的更改不会影响功能和我 运行 在增量模式下。
原来问题是缺少设置。
https://docs.microsoft.com/en-ca/azure/azure-functions/run-functions-from-deployment-package
当 ARM 模板 运行s 时,它会替换应用程序服务的应用程序设置(也适用于 Functions)。
我没有意识到用于部署函数代码的 Azure Dev Ops 任务实际上是使用这种新的 运行 从包部署方法所以我应该在我的 ARM 模板的应用程序设置部分进行设置.
当我在部署代码后第二次 运行 ARM 模板时,它正在删除 WEBSITE_RUN_FROM_PACKAGE 设置,因此函数不知道代码在哪里。
为了解决这个问题,我只是将 { "name": "WEBSITE_RUN_FROM_PACKAGE", "value": "1" } 添加到我的 ARM 模板中!
注意这与这个问题非常相似。我想指出,函数的 Azure DevOps 任务现在使用包中的 运行:Azure Functions ARM Template deploy deletes Functions
我正在 运行 使用自定义 ARM 模板来通过 Azure DevOps 管道为 Azure 函数创建基础结构(动态应用服务计划、存储帐户等)。
我还通过 Azure DevOps 从不同的 Github 存储库在不同的 Azure DevOps 管道中部署我的函数代码。
在我成功部署基础设施和代码后,如果基础设施的管道再次 运行s 它会删除代码,即使我对基础设施所做的更改不会影响功能和我 运行 在增量模式下。
原来问题是缺少设置。
https://docs.microsoft.com/en-ca/azure/azure-functions/run-functions-from-deployment-package
当 ARM 模板 运行s 时,它会替换应用程序服务的应用程序设置(也适用于 Functions)。
我没有意识到用于部署函数代码的 Azure Dev Ops 任务实际上是使用这种新的 运行 从包部署方法所以我应该在我的 ARM 模板的应用程序设置部分进行设置.
当我在部署代码后第二次 运行 ARM 模板时,它正在删除 WEBSITE_RUN_FROM_PACKAGE 设置,因此函数不知道代码在哪里。
为了解决这个问题,我只是将 { "name": "WEBSITE_RUN_FROM_PACKAGE", "value": "1" } 添加到我的 ARM 模板中!
注意这与这个问题非常相似。我想指出,函数的 Azure DevOps 任务现在使用包中的 运行:Azure Functions ARM Template deploy deletes Functions