如何我執行復位-RoleInstance,等待操作完成...使用PowerShell的Windows Azure命令行開關,如何我執行復位-RoleInstance,等待操作完成
我一直在嘗試使用windows azure powershell命令行程序執行Reset-RoleInstance,後跟| Get-OperationStatus -WaitToComplete。
因此,文檔中提到「此操作異步執行,要確定管理服務是否已完成處理請求,請使用由Reset-RoleInstance返回的操作標識調用Get-OperationStatus cmdlet,並可選擇等待完成-WaitToComplete參數。「
我已經試過這個版本:
Reset-RoleInstance -ServiceName MyTodo -DeploymentSlot production -SubscriptionId $subsId -Certificate $cert –reboot | GetOperationStatus -WaitToComplete
但是這有一個類型的 「GetOperationStatus」。所以當我用「Get-OperationStatus」取代時,PS會抱怨OperationId爲空或爲空。
「Get-OperationStatus:無法驗證參數'OperationId'的參數,參數 爲空或空,請提供非空或空的參數,然後再次嘗試命令 d。
所以,下次我試試這個版本的PS腳本...
Reset-RoleInstance -ServiceName $serviceName -DeploymentSlot Production -InstanceName $i.InstanceName -SubscriptionId $subid -Certificate $cert -Reboot -OutVariable out | Get-OperationStatus -OperationId out.OperationId -WaitToComplete
這一次,獲取-OperationStatus開始引發錯誤...
GET-OperationStatus:HTTP狀態代碼:錯誤請求 - HTTP錯誤消息:該操作請求ID沒有被發現 ...在Microsoft.WindowsAzure.Samples.ManagementTools.PowerShell.Services.Common.GetOperationStatusCommand
的Get- OperationStatus:對象引用未設置爲一個對象的實例 ....在Microsoft.WindowsAzure.Samples.ManagementTools.PowerShell.Services.Common.GetOperationStatusCommand「*
我也設法打印$ out和OperationId是INFACT空但在輸出的RoleInstances成員有這樣的價值... RoleInstances:{實例名稱:MyService.MyWorker_IN_0 - 操作ID:6e87a07fb9a5474499aed3f9ebe99129}
這裏是$ out變量的輸出.. 「RoleInstances:{Instance Name:MyService.MyWorker_IN_0 - Operation Id:6e87a07fb9a5474499aed3f9ebe99129} S erviceName:......我的服務名稱 SubscriptionId:......我的訂閱ID 證書:......我的證書信息
OperationId: 「
好的,這是有道理的。謝謝。 – CedricB 2012-04-18 20:19:01