2012-07-12 21 views
4

我試圖讓我的.net網站作爲TFS構建過程的一部分部署到Azure。我正在寫一個PowerShell腳本來做到這一點,但我陷入了set-AzureDeployment -Upgrade命令。我不知道如果有一個更簡單的方法,但我想基於來自Windows Azure的網站代碼來實現上傳: http://www.windowsazure.com/en-us/develop/net/common-tasks/continuous-delivery/#step4無法運行Set-AzureDeployment

當我運行以下命令:

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

您使用SDK 1.6還是1.7? – AvkashChauhan 2012-07-12 22:39:31

+0

我認爲是1.6 – Greg 2012-07-12 22:57:58

回答

5

我能夠看到完全相同的問題,經過一番討論後,我發現這個命令有一些代碼問題,所以當沒有報告正確的錯誤時。

實際的問題是,當您調用Set-AzureDeployment時,它不能使用Windows Azure存儲帳戶臨時上傳您的軟件包,並會失敗並出現一些奇怪的錯誤。

爲了解決這個問題,請先通過先調用Set-AzureSubscription來設置一個有效的Windows Azure存儲帳戶,然後使用相同的Set-AzureDeployment命令。

+0

很酷,今天晚些時候我會試一試,看看會發生什麼 – Greg 2012-07-12 23:46:02

+0

這就是問題所在。全部排序後,我添加了Set-AzureDeployment。感謝您的幫助 – Greg 2012-07-13 22:27:21

+0

我很樂意提供幫助。祝你好運!! – AvkashChauhan 2012-07-14 01:40:28