Azure CLI - жесткая связь не удалась - PullRequest
0 голосов
/ 09 ноября 2019

Я пытаюсь загрузить Универсальный пакет , который хранится в DevOps Azure через:

az artifacts universal download --feed my-feed --name my-cool-package --version 1.0.0 --path Downloads

Внутри этого пакета находится один файл my-file.dll. Я получаю сообщение об ошибке:

Encountered an unexpected error.
System.IO.IOException: Hard linking failed!
 Status: Failed
 Path: Downloads\my-file.dll
   at Microsoft.VisualStudio.Services.BlobStore.WebApi.DedupStoreClient.DownloadToFileAsync(DedupNode node, String fullPath, Uri proxyUri, EdgeCache edgeCache, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.BlobStore.WebApi.DedupStoreClientWithDataport.DownloadToFileAsync(IDedupDataPort dataport, DedupNode node, String fullPath, Uri proxyUri, EdgeCache edgeCache, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.BlobStore.WebApi.DedupStoreClientWithDataport.DownloadToFileAsync(IDedupDataPort dataport, DedupIdentifier dedupId, String fullPath, UInt64 fileSize, GetDedupAsyncFunc dedupFetcher, Uri proxyUri, EdgeCache edgeCache, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.BlobStore.WebApi.DedupManifestArtifactClient.<>c__DisplayClass24_0.<<DownloadAsyncWithManifestPath>b__5>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.VisualStudio.Services.Content.Common.NonSwallowingActionBlock.<>c__DisplayClass5_0`1.<<CreateNonSwallowingFunc>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.VisualStudio.Services.Content.Common.TargetBlockExtensions.SendAllAndCompleteAsync[T1,T2](ITargetBlock`1 targetBlock, IEnumerable`1 inputs, ITargetBlock`1 finalBlock, CancellationToken token)
   at Microsoft.VisualStudio.Services.BlobStore.WebApi.DedupManifestArtifactClient.DownloadAsyncWithManifestPath(DownloadDedupManifestArtifactOptions downloadOptions, IEnumerable`1 minimatcherFuncs, Boolean downloadManifestReferences, ISet`1 excludedPaths, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.BlobStore.WebApi.DedupManifestArtifactClient.DownloadSingleManifestAsync(DownloadDedupManifestArtifactOptions downloadOptions, Boolean downloadManifestReferences, ISet`1 excludedPaths, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.BlobStore.WebApi.DedupManifestArtifactClient.DownloadAsync(DownloadDedupManifestArtifactOptions downloadOptions, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.Services.Packaging.UPackClientShared.UPackSharedClient.DownloadAsync(String projectNameOrId, String feedNameOrId, String packageName, String packageVersion, String targetDirectory, IEnumerable`1 minimatchPatterns, CancellationToken cancellationToken)
   at ArtifactTool.Commands.UPackDownloadCommand.<>c__DisplayClass25_0.<<ExecuteAsync>b__0>d.MoveNext() in d:\a\1\s\src\ArtifactTool\Commands\UPack\UPackDownloadCommand.cs:line 60
--- End of stack trace from previous location where exception was thrown ---
   at ArtifactTool.Commands.UPack.UPackExceptionMapper.WithExceptionHandlingAsync(Func`1 act) in d:\a\1\s\src\ArtifactTool\Commands\UPack\UPackExceptionMapper.cs:line 39
   at ArtifactTool.Commands.UPackDownloadCommand.ExecuteAsync() in d:\a\1\s\src\ArtifactTool\Commands\UPack\UPackDownloadCommand.cs:line 64
   at ArtifactTool.Commands.CommandBase.OnExecuteAsync() in d:\a\1\s\src\ArtifactTool\Commands\CommandBase.cs:line 100
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.InvokeAsync(MethodInfo method, Object instance, Object[] arguments) in C:\projects\commandlineutils\src\CommandLineUtils\Conventions\ExecuteMethodConvention.cs:line 77
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.OnExecute(ConventionContext context) in C:\projects\commandlineutils\src\CommandLineUtils\Conventions\ExecuteMethodConvention.cs:line 62
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.<>c__DisplayClass0_0.<<Apply>b__0>d.MoveNext() in C:\projects\commandlineutils\src\CommandLineUtils\Conventions\ExecuteMethodConvention.cs:line 25
--- End of stack trace from previous location where exception was thrown ---
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.<>c__DisplayClass126_0.<OnExecute>b__0() in C:\projects\commandlineutils\src\CommandLineUtils\CommandLineApplication.cs:line 505
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.Execute(String[] args) in C:\projects\commandlineutils\src\CommandLineUtils\CommandLineApplication.cs:line 611
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.Execute[TApp](CommandLineContext context) in C:\projects\commandlineutils\src\CommandLineUtils\CommandLineApplication.Execute.cs:line 57
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.ExecuteAsync[TApp](CommandLineContext context) in C:\projects\commandlineutils\src\CommandLineUtils\CommandLineApplication.Execute.cs:line 145
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.ExecuteAsync[TApp](IConsole console, String[] args) in C:\projects\commandlineutils\src\CommandLineUtils\CommandLineApplication.Execute.cs:line 130
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.ExecuteAsync[TApp](String[] args) in C:\projects\commandlineutils\src\CommandLineUtils\CommandLineApplication.Execute.cs:line 112

Единственный другой экземпляр этой проблемы, который я могу найти, это эта проблема Github , но она не помогла мне решить эту проблему.

Одним интересным примечанием является то, что эта команда будет выполнена успешно, если я выполню ее, указав --path местоположение на диске C:\. Он не работает, когда я выполняю путь, расположенный на внешнем диске (например, E:\).

Я попытался выполнить это в PowerShell администратора, чтобы исключить проблему с разрешениями, но обнаружил ту же ошибку. Я также добавил аргументы --verbose --debug, но не увидел никакой информации, которая помогла бы мне глубже разобраться в этой проблеме.

Кто-нибудь еще сталкивался с этой проблемой? Какие еще у вас есть предложения, чтобы я смог добиться успеха на диске, отличном от C:\?

1 Ответ

0 голосов
/ 13 ноября 2019

Когда я тестирую артефакт сброса на внешний диск со следующим az cli, я получаю ту же ошибку, что и вы: System.IO.IOException: Hard linking failed!. Теперь эта проблема ( Ошибка загрузки артефакта на внешний диск ) была передана в группу продуктов для дальнейшего изучения на форуме сообщества разработчиков. Если будет какой-либо прогресс, я тоже буду здесь синхронизироваться.

cd F:\
az login in  
az artifacts universal download --organization https://dev.azure.com/xxx --feed xx --name xxx --version 1.0.0 --path . 

enter image description here

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