下午好,
我的任务是找出如何修复阻碍 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 创建的文件时,目录名称为什么会无效吗?我愿意提供任何可能需要的附加信息。我感谢所有坚持读完这段文字的人。
克里斯
答案1
MSDN 上一位非常热心的人指出,我的复制根值必须是一个文件夹,而不是一个特定的文件。一旦我修复了这个错误,它就变得非常有效。