Azure DevOps AzurePowershell@5任务创建存储容器报错求助
问题解决思路
核心问题:混用Az模块与AzureRM模块命令
你脚本里用的New-AzureStorageContainer是AzureRM旧模块的命令,而New-AzStorageContext属于Az新模块,两个模块的AzureStorageContext类型分属不同命名空间,直接混用就会触发类型转换错误。修复方案
把旧模块命令替换为Az模块对应的命令New-AzStorageContainer,修改后的完整脚本如下:
- task: AzurePowerShell@5 inputs: azureSubscription: azureServiceConnection scriptType: inlineScript inline: | $storageAccountKey = Get-AzStorageAccountKey -ResourceGroupName $(resourceGroupName) -Name $(commonStorageName) | Where-Object {$_.KeyName -eq "key1"} $sacontext = New-AzStorageContext -StorageAccountName $(commonStorageName) -StorageAccountKey $storageAccountKey.Value New-AzStorageContainer -Context $sacontext -Name $(processingDirectory)
- 补充说明
Azure CLI测试正常是因为CLI命令和PowerShell模块是两套独立体系,不存在模块混用问题。而AzurePowerShell@5任务默认使用Az模块,必须统一使用Az前缀的命令,不能和AzureRM前缀的旧命令混用。
内容的提问来源于stack exchange,提问作者Hydromast
相关产品推荐
相关产品推荐

