我正在尝试使用VSTS版本管道部署存储在Azure存储帐户的blob容器中的cspkg文件。
我正在尝试模仿使用新版本更新云服务的升级过程,因此我在应用程序中存储了当前的PROD版本。我想将此版本发布到此测试升级云服务,然后将来自TEST的新版本发布到测试升级云服务,然后检查该应用程序是否仍然有效。
我正在使用Azure PowerShell任务执行此过程,该过程类似于我过去用于执行此操作的Azure自动化Runbook。
第一步是获取cspkg文件并获取url
$pkgFile = Get-AzureRmStorageAccount -Name $StorageAccountName -ResourceGroupName $ResourceGroupName | Get-AzureStorageBlob -Container $ContainerName -Blob $BlobNamePackageFull
$package = $pkgFile.ICloudBlob.uri.AbsoluteUri
我还将配置文件写入临时文件夹
$TempFileLocation = "C:\temp\$BlobNameConfiguration"
Get-AzureRmStorageAccount -Name $StorageAccountName -ResourceGroupName $ResourceGroupName | Get-AzureStorageBlobContent -Container $ContainerName -Blob $BlobNameConfiguration -Destination $TempFileLocation -Force
然后我尝试使用New-AzureDeployment
部署云服务New-AzureDeployment -ServiceName "$ServiceName" -Slot "$Slot" -Package "$package" -Configuration $TempFileLocation -Label "$Label" -ErrorAction Stop
我一直收到与未设置默认订阅相关的错误。
Error details = No default subscription has been designated. Use Select-AzureSubscription -Default <subscriptionName> to set the default subscription.
我已经使用此任务运行其他任务而不会弹出此错误。我已尝试使用我用于运行Azure PowerShell任务的订阅ID,即使订阅存在,也会收到以下错误。
The subscription id XXX-XXX-XXXX doesn't exist
如何运行此cmdlet?这在Azure自动化中有效。我应该以不同的方式来部署旧版本的cspkg吗?
答案 0 :(得分:0)
对于New-AzureDeployment命令,它是经典命令,因此您需要选择Azure Classic作为Azure PowerShell任务的Azure连接类型,并指定Classic端点。
因此,您可以使用Azure Classic端点添加另一个PowerShell任务,以调用要部署的New-AzureDeployment。
另一方面,Azure Deployment任务用于部署Cloud Service。