読者です 読者をやめる 読者になる 読者になる

Azure AutomationでAzure Storage Contextをコマンドレットに引き渡せない

こちらの記事にも書きましたが、Azure AutomationではPowerShell Workflowが使われている関係で、通常のPowerShellと少し違うところがあります。

このように書いて実行したところ、

$context = New-AzureStorageContext -StorageAccountName $srcStorageAccount -StorageAccountKey $srcStorageKe $destStorageKey
Get-AzureStorageContainer -Context $context

 
 
以下のようなエラーが出てしまいました。

Cannot bind parameter 'Context'. 
Cannot convert the "Microsoft.WindowsAzure.Commands.Common.Storage.AzureStorageContext" value of type "Deserialized.Microsoft.WindowsAzure.Commands.Common.Storage.AzureStorageContext" to type "Microsoft.WindowsAzure.Commands.Common.Storage.AzureStorageContext".


解決方法としては変数を介さないでやりとりする方法があります。

Get-AzureStorageContainer -Context (New-AzureStorageContext -StorageAccountName $srcStorageAccount -StorageAccountKey $srcStorageKe $destStorageKey)


どうも変数を介してのやりとりすると、Serializeされてしまうのかなと思いました。