【发布时间】:2017-09-06 09:52:08
【问题描述】:
我正在尝试更新云服务以使用 .NET 4.6。我将 .cscfg 文件中的 osFamily="4" 更改为 osFamily="5",如下所示:https://docs.microsoft.com/en-us/azure/cloud-services/cloud-services-guestos-update-matrix
查看我的文件系统,我安装了这个 SDK 版本:
- C:\Program Files\Microsoft SDKs\Azure.NET SDK\v2.9
查看 Web PI,我已经安装了这些:
- VS Community 2105 with Azure SDK - 2.9.6
- VS Community 2105 with Azure SDK - 3.0
- Microsoft Azure SDK for .NET (VS 2015) - 2.9.6
- Microsoft Azure SDK for .NET (VS 2015) - 3.0
我通常使用 Powershell cmdlet 来使用来自构建和部署服务器的 New-AzureDeployment/Set-AzureDeployment 进行部署。我偶尔会使用 powershell 从桌面部署进行测试。
如果我保持 osFamily="4" 不变并使用 Powershell 进行部署,一切都会按预期工作。
如果我使用 VS2015 和 Publish Azure Application 工具进行部署,如果我选择 osFamily="4" 或 osFamily="5",它会按预期成功。
检查使用了哪个模块:
C:\> (Get-Command Set-AzureDeployment).Module.Path
C:\Program Files\WindowsPowerShell\Modules\Azure\3.8.0\Azure.psm1
运行部署 Set-AzureDeployment(假设已部署现有包)给我以下错误 -
Set-AzureDeployment : BadRequest : The OS family 5 you are trying to deploy is not supported by the SDK package. The SDK package supported OS families:3,4,1,2,98. Please try to deploy to a different operating system. To do this specify a different osFamily and/or osVersion in your .cscfg file.
我没有看到命令行开关在抱怨哪个 SDK“包”...有什么想法吗?
【问题讨论】:
-
您还必须使用新的 SDK 创建 cspkg。你有吗?
-
@MartinBrandl 不得使用 SDK v2.9 构建。我会看看我们是否在构建步骤中对 SDK 版本进行硬编码。
-
我读到了同样的错误,解决方案是使用新的 sdk 构建包。
-
New-AzureDeployment 的行为有什么不同吗?
-
@bmoore-msft 我不确定你所说的行为不同是什么意思。我认为 martin-brandl 更接近这个问题。我需要了解基于 MSBUILD 的打包步骤如何决定使用哪个 SDK...
标签: azure azure-cloud-services azure-powershell