Ошибка сборки TFS 2015

Добрый день,

Мне было поручено выяснить, как исправить ошибки, которые мешают TFS быть полностью успешными в наших сборках.

Сначала у меня создалось впечатление, что это была ошибка разрешения безопасности, но я добавил разрешения для учетной записи пользователя TFS, чтобы обеспечить доступ ко всем необходимым дискам. Я включил подробный режим в журнале ошибок и получил следующее:

Starting task: Publish Artifact: drop
******************************************************************************
Executing the powershell script: C:\Agent\tasks\CopyPublishBuildArtifacts\1.0.20\CopyPublishBuildArtifacts.ps1
Preparing artifact content in staging folder C:\Agent\_work\1\a...
**System.IO.IOException: The directory name is invalid.**

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileSystemEnumerableIterator`1.CommonInit()
at System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
at System.IO.Directory.EnumerateFileSystemEntries(String path, String searchPattern, SearchOption searchOption)
at Microsoft.TeamFoundation.DistributedTask.Task.Internal.PowerShell.CopyBuildArtifactCmdlet.ProcessRecord()
System.UnauthorizedAccessException: Access is denied ---> System.ComponentModel.Win32Exception: Access is denied
--- End of inner exception stack trace ---

Я просмотрел MSDN и не нашел ничего, что позволяло бы устранить эту ошибку даже окольным путем.

Сначала у меня создалось впечатление, что это была ошибка разрешения безопасности, но я добавил разрешения для учетной записи пользователя TFS, чтобы обеспечить доступ ко всем необходимым дискам. Я включил подробный режим в журнале ошибок и получил следующее:

Starting task: Publish Artifact: drop
******************************************************************************
Executing the powershell script: C:\Agent\tasks\CopyPublishBuildArtifacts\1.0.20\CopyPublishBuildArtifacts.ps1
Preparing artifact content in staging folder C:\Agent\_work\1\a...
**System.IO.IOException: The directory name is invalid.**

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileSystemEnumerableIterator`1.CommonInit()
at System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
at System.IO.Directory.EnumerateFileSystemEntries(String path, String searchPattern, SearchOption searchOption)
at Microsoft.TeamFoundation.DistributedTask.Task.Internal.PowerShell.CopyBuildArtifactCmdlet.ProcessRecord()
System.UnauthorizedAccessException: Access is denied ---> System.ComponentModel.Win32Exception: Access is denied
--- End of inner exception stack trace ---

Я просмотрел MSDN и не нашел ничего, что позволяло бы устранить эту ошибку даже окольным путем.

Сначала у меня создалось впечатление, что это была ошибка разрешения безопасности, но я добавил разрешения для учетной записи пользователя TFS, чтобы обеспечить доступ ко всем необходимым дискам. Я включил подробный режим в журнале ошибок и получил следующее:

Starting task: Publish Artifact: drop
******************************************************************************
Executing the powershell script: C:\Agent\tasks\CopyPublishBuildArtifacts\1.0.20\CopyPublishBuildArtifacts.ps1
Preparing artifact content in staging folder C:\Agent\_work\1\a...
**System.IO.IOException: The directory name is invalid.**

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileSystemEnumerableIterator`1.CommonInit()
at System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
at System.IO.Directory.EnumerateFileSystemEntries(String path, String searchPattern, SearchOption searchOption)
at Microsoft.TeamFoundation.DistributedTask.Task.Internal.PowerShell.CopyBuildArtifactCmdlet.ProcessRecord()
System.UnauthorizedAccessException: Access is denied ---> System.ComponentModel.Win32Exception: Access is denied
--- End of inner exception stack trace ---

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

Крис

0
задан 22 April 2017 в 17:39
1 ответ

https://social.msdn.microsoft.com/Forums/en-US/b88408db-194c-407e-8b4f-f71cfbb0c703/build-error?forum=tfsbuild#a9ddf632-2c34-46d0-992e-4c93b3d0ffb7

Очень полезный человек в MSDN указал на то, что корневое значение моей копии должно быть папкой, а не конкретным файлом. Как только я исправил эту ошибку, она сработала, как шарм.

.
0
ответ дан 5 December 2019 в 08:18

Теги

Похожие вопросы