2017-10-14 47 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方法呢! –

相關問題