2011-06-07 39 views
5

有沒有辦法檢測工作人員角色是否處於暫存或生產階段。Azure Detect Staging與生產

我想這樣做,以便在分階段環境中抑制功能,直到它被交換到生產,然後在「反生產」版本中抑制相同的功能。

只存在交錯的環境,以便可以預先上傳新版本以確保交換是按時且零停機時間,然後停止先前的版本,同時執行額外的QA並刪除。

感謝

韋恩

+1

http://stackoverflow.com/questions/4328462/staging-or-production-instance – 2011-06-07 07:05:22

+1

我認爲這已經在這裏回答 - http://stackoverflow.com/questions/4328462/staging-or-production-實例 – vonLochow 2011-10-12 20:32:55

回答

2

您可以通過使用服務管理REST API調用這樣做。您可以使用embed-details = true查詢參數獲取託管服務的屬性(http://msdn.microsoft.com/en-us/library/ee460806.aspx)。這將爲您提供有關託管服務部署的詳細信息。你感興趣的是「」節點下的部署,它會給你你的部署ID。您可以將其與來自RoleEnvironment類(http://msdn.microsoft.com/en-us/library/microsoft.windowsazure.serviceruntime.roleenvironment_members.aspx)的部署ID進行比較,並使用它們可以確定您的部署是在分段還是生產槽中運行。

希望這會有所幫助。

0

節點在Windows Azure SDK會給你你正在尋找的信息 - https://github.com/WindowsAzure/azure-sdk-for-node

具體 - azure.RoleEnvironment.getCurrentRoleInstanceazure.RoleEnvironment.getRoles應該給你觸發功能所必需的信息。

如果有人需要區分Azure雲/ Azure模擬器,仿真器將配置在天藍色模擬器下運行時可從process.env訪問的EMULATED環境變量。如果您試圖區分模擬器和內置節點服務器,這也很有幫助。

+1

'azure.RoleEnvironment.getCurrentRoleInstance'和'azure.RoleEnvironment.getRoles'都不會告訴當前實例在哪個部署插槽中。 – Compulim 2014-09-11 09:54:56