我们有一个Azure应用服务(网站),它有一个名为离线的额外部署插槽,我们希望在主网站离线进行维护时使用。
我正在尝试编写一个PowerShell脚本,该脚本将在此脱机插槽和生产槽之间切换,反之亦然,具体取决于传递给脚本的参数。但是,脚本还必须在切换发生时执行其他操作,因此了解当前哪个插槽"活动"。
非常重要。问题在于我无法找到确定这一点的方法。我使用的是资源管理器cmdlet(<input ng-class="{ 'myClass': model. Something != somethingElse }">
),虽然我可以打电话:
*-AzureRm*
根据我的判断,这个返回的对象中没有任何内容可以帮助我。这是Get-AzureRmWebAppSlot -ResourceGroupName xxx -Name websitename -Slot offline
返回的对象的相同故事。
由于似乎没有资源管理器cmdlet,我还可以使用其他任何技术吗?我现在所能想到的只是拥有一个只存在于离线网站上的特定网页,并通过查询实时网站来检查该网页的存在:这应该告诉我当前有哪个插槽。这看起来有点像hacky。
答案 0 :(得分:1)
您可以设置标识应用的非插槽专用应用设置。在进行交换时,这将与应用程序交换。
E.g。在生产广告位上使用密钥 AppVersion 和值生产设置应用设置,并在离线状态下使用相同的密钥和值离线设置应用设置槽。
您可以使用PowerShell访问应用设置,如下所示:
(Get-AzureRmWebApp -ResourceGroupName your-resource-group -Name your-webapp).SiteConfig.AppSettings