Хотя мне, вероятно, следует просто удалить этот вопрос (после обнаружения «ответа»), я полагаю, что я предоставлю то, что нашел после дополнительной отладки и т. Д.
TLDR; -По большей части я не понимаю концепцию, согласно которой подписка Azure (контекст) не соотносится с хранилищем Azure (контекст).
Это ожидаемое поведение?
Да,Просто наличие текущей установленной подписки не означает, что в данный момент установлен контекст хранения.
Приходите, чтобы узнать, что у нашей компании есть несколько учетных записей хранения в подписке, которую я использовал.
Может быть, если подписка имеет только одну учетную запись хранения, функция будет выполнена успешно без указания контекста?Может быть, я исследую это позже.
Можно ли как-то заново создать и передать контекст, когда выясняется, что он уже существует?
Нет (возможно, из-за нескольких учетных записей хранения в подписке).
Мне нужно будет указать / выбрать текущий контекст хранения из текущей подписки (как я делал в части «Передача в контексте работает» в моем вопросе).
Вот как я пришел к этому:
Сначала я проверил, что на самом деле было установлено (если что-нибудь) в качестве текущего контекста [подписки], а затемявно (пере) установка.
Выполнение команды все еще не удалось.
Итак, подписка не была установлена (так как она была).
$current = (Get-AzureSubscription -Current).SubscriptionName
Write-Host "current subscription is $current"
$setCurrent = $false
Write-Host "setCurrent is $setCurrent"
$setCurrent = Select-AzureSubscription -Current -SubscriptionName "CDN Subscription" -PassThru
if ($setCurrent)
{
Write-Host "current set"
$current = (Get-AzureSubscription -Current).SubscriptionName
Write-Host "current subscription is $current"
}
else
{
Write-Host "current not set"
}
Затем меня осенило, что, возможно, «подписка» не соответствует «хранилищу».Чтобы убедиться в этом, я запустил следующее:
$current = (Get-AzureSubscription -Current).SubscriptionName
Write-Host "current subscription is $current"
$table = Get-AzureStorageAccount | Format-Table -AutoSize -Property @{Label="Name";Expression={$_.StorageAccountName}},"Label","Location" | Out-String
Write-Host "$table"
Результат - 4 учетных записи хранения в подписке.Поэтому мне нужно будет указать аккаунт, который я хочу загрузить на