Хранилище Azure - загрузка ZIP-файла с помощью PowerShell - PullRequest
0 голосов
/ 17 сентября 2018

У меня есть конвейер сборки Azure DevOps, который включает в себя задачу PowerShell.Эта задача загружает файл в хранилище Azure.В настоящее время я создал следующий сценарий:

Сценарий PowerShell

New-Item -ItemType directory -Path ./test
New-Item -Path ./test -Name "file.txt" -ItemType "file" -Value "hello world"

Compress-Archive -Path ./test/* -DestinationPath ./test.zip

$azureStorageKey = "<MyAccessKey>"
$storage_context = New-AzureStorageContext -StorageAccountName "mystorageaccount" -StorageAccountKey "$azureStorageKey"
Set-AzureStorageBlobContent -Context $storage_context -Container "mycontainer" -File "./test.zip" -Blob "temp/test.zip" -Force

Этот сценарий успешно выполняется на моем локальном компьютере и в DevOps Azure.Хотя я вижу файл test.zip в моей учетной записи хранилища Azure, он кажется поврежденным.

На портале Azure я выбираю «Загрузить» в контекстном меню файлового объекта test.zip.,Файл test.zip загружается на мою машину.Затем я пытаюсь разархивировать файл архива, выбрав «Развернуть все ...» в проводнике Windows.Когда я это делаю, я получаю сообщение об ошибке:

Windows cannot open the folder.

The Compressed (zipped) Folder 'C:\Users\me\Downloads\test.zip' is invalid.

Почему этот архивный файл кажется поврежденным?Это нормально на моей локальной машине.Но когда я загружаю его с портала Azure, я не могу извлечь содержимое архива.Что мне не хватает?Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 18 сентября 2018

Кажется, проблема связана с самим хранилищем больших двоичных объектов, я могу воспроизвести вашу проблему на моей стороне.

Даже если выгрузить и загрузить сжатый файл (иметь тестовый .zip и .rar тип) вручную на портале (также тестировать с уровнем хранения v1 и v2), это также выдает ошибку.

Вы можете открыть проблему в github, кроме того, если это возможно, вы можете использовать хранилище файлов , для этого Управление общими файловыми ресурсами Azure с помощью Azure PowerShell , это будет отлично работает.

Обновление

Это может быть ошибка портала Azure, я загружаю сжатый файл в проводнике и архивирую его, он работает нормально. Таким образом, вы можете попытаться использовать проводник хранения , чтобы сделать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...