我正在尝试将我的.net网站部署到azure,作为TFS构建过程的一部分。我正在编写一个PowerShell脚本来执行此操作但我仍然卡在set-AzureDeployment -Upgrade
命令上。我不确定是否有更简单的方法,但我正在尝试根据windows azure站点的代码实现上传:
http://www.windowsazure.com/en-us/develop/net/common-tasks/continuous-delivery/#step4
当我运行以下内容时:
Set-AzureDeployment -Upgrade -SERVICENAME "MYSVC" -Mode Auto -Package D:\MYSVC\Drops\Azure.cspkg -configuration D:\MYSVC\Drops\ServiceConfiguration.Cloud.cscfg -Slot Staging -Force
我收到此错误:
Set-AzureDeployment : The path variable 'SERVICENAME' in the
UriTemplate must be bound to a non-empty string value.
Parameter name:
parameters At line:1 char:20
+ Set-AzureDeployment <<<< -Upgrade -SERVICENAME "MYSVC" -Mode Auto -Package D:\MYSVC\Drops\Azure.cspkg -Configuration D:\MYSVC\Drops\ServiceConfiguration.Cloud.cscfg -Slot Staging -Force
+ CategoryInfo : CloseError: (:) [Set-AzureDeployment], ArgumentException
+ FullyQualifiedErrorId : Microsoft.WindowsAzure.Management.ServiceManagement.HostedServices.SetAzureDeploymentCommand
我已经检查了所有的parementers,据我所知,它们都是正确的(当我拨打Get-AzureDeployment -ServiceName MYSVC
时,我正在使用的服务名称)。我做错了什么?
答案 0 :(得分:5)
我能够看到完全相同的问题,经过一些讨论后我发现这个命令存在一些代码问题,所以当没有报告正确的错误时。
实际问题是,当您调用Set-AzureDeployment时,它无法使用Windows Azure存储帐户临时上传您的程序包并因某些奇怪的错误而失败。
要解决此问题,请首先调用Set-AzureSubscription设置有效的Windows Azure存储帐户,然后使用相同的Set-AzureDeployment命令。