2017-10-14 42 views
2

我刚开始尝试使用Azure功能,并试图了解如何根据环境控制应用程序设置。Azure函数:如何控制开发/生产/分段应用程序设置?

在dotnet核心,你可以有appsettings.json,appsettings.development.json等等。当你在不同的环境中移动时,配置会改变。

然而,从Azure功能文档中我可以发现,您可以在Azure门户中设置配置,但在解决方案中无法看到有关设置配置的任何信息?

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

在此先感谢:-)

回答

4

的最佳方式,在我看来,使用适当的构建和发布系统,如VSTS

我在我的一个解决方案中完成的工作是创建我的Function App的ARM模板,并使用VSTS RM的发布管道部署此模板。

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

"appSettings": [ 
    // other entries 
    { 
     "name": "MyValue", 
     "value": "[parameters('myValue')]" 
    } 

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

{ 
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", 
    "contentVersion": "1.0.0.0", 
    "parameters": { 
     "name": {}, 
     "storageName": {}, 
     "location": {}, 
     "subscriptionId": {} 
    } 
} 

回到VSTS中,您可以更改/覆盖入口中这些参数的值。 override parameters

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

+0

谢谢!我已经做了一些进一步的阅读以寻找答案,并且似乎尽管使用ARM网络核心风格的appsettings在微软工作列表上是他们解决问题的答案。 看起来像一个很好的DevOps方法呢! –

相关问题