Azure Functions:如何控制开发/生产/暂存应用程序设置?

Ale*_*itt 3 json azure devops azure-functions visual-studio-2017

我刚刚开始试验 Azure 函数,我正在尝试了解如何根据环境控制应用程序设置。

在 dotnet 核心中,您可以拥有 appsettings.json、appsettings.development.json 等。当您在不同环境之间移动时,配置会发生变化。

但是,通过查看 Azure 功能文档,我发现您可以在 azure 门户中设置配置,但在解决方案中看不到任何有关设置配置的信息?

那么管理构建环境的最佳方法是什么?

提前致谢 :-)

Jan*_*n_V 5

在我看来,最好的方法是使用合适的构建和发布系统,例如VSTS

我在我的一个解决方案中所做的是创建我的函数应用程序的 ARM 模板,并使用带有 VSTS RM 的发布管道部署它。

这样您就可以向 中添加一个值template.json,就像下面的那个。

"appSettings": [
    // other entries
    {
        "name": "MyValue",
        "value": "[parameters('myValue')]"
    }
Run Code Online (Sandbox Code Playgroud)

您将需要另一个名为的文件,parameters.json该文件将保存值。这个文件看起来像这样(目前)。

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "name": {},
        "storageName": {},
        "location": {},
        "subscriptionId": {}
    }
}
Run Code Online (Sandbox Code Playgroud)

回到 VSTS,您可以更改/覆盖门户中这些参数的值。 覆盖参数

通过使用这样的工作流程,您将获得专业的 CI/CD 实施,无需任何人为实际的秘密而烦恼。它们只有系统管理员知道。