2015-09-10 36 views
2

我決定開始使用TFS構建vNext管道,並在配置構建代理時遇到了一個奇怪的問題。我想知道是否有其他人可以複製這個,如果是的話,我怎樣才能解決這個問題。TFS vNext構建代理安裝

我將代理安裝在以下目錄D:\ TFS Build Agent \ agent中並執行配置。程序進行得很順利,代理程序在給定的池中正確添加。此服務在我的構建機器上正確運行。 然而,一旦我開始一個簡單的構建我得到以下錯誤:

09:10:23.570390 System.Management.Automation.ProviderInvocationException: Attempting to perform the NormalizeRelativePath operation on the 'FileSystem' provider failed for path 'D:\TFS Build Agent\agent\tasks\VSBuild\1.0.11'. Access is denied ---> System.UnauthorizedAccessException: Access is denied ---> System.ComponentModel.Win32Exception: Access is denied 
    --- End of inner exception stack trace --- 
    at Microsoft.PowerShell.Commands.FileSystemProvider.GetFileSystemInfo(String path, Boolean& isContainer) 
    at Microsoft.PowerShell.Commands.FileSystemProvider.NormalizeThePath(String basepath, Stack`1 tokenizedPathStack) 
    at Microsoft.PowerShell.Commands.FileSystemProvider.NormalizeRelativePathHelper(String path, String basePath) 
    at Microsoft.PowerShell.Commands.FileSystemProvider.NormalizeRelativePath(String path, String basePath) 
    at System.Management.Automation.SessionStateInternal.NormalizeRelativePath(ProviderInfo provider, String path, String basePath, CmdletProviderContext context) 
    --- End of inner exception stack trace --- 
    at System.Management.Automation.SessionStateInternal.NormalizeRelativePath(ProviderInfo provider, String path, String basePath, CmdletProviderContext context) 
    at System.Management.Automation.SessionStateInternal.NormalizeRelativePath(String path, String basePath, CmdletProviderContext context) 
    at System.Management.Automation.SessionStateInternal.SetLocation(String path, CmdletProviderContext context) 
    at System.Management.Automation.PathIntrinsics.SetLocation(String path) 
    at Microsoft.TeamFoundation.DistributedTask.Handlers.PowerShellHandler.Execute(ITaskContext context, CancellationToken cancellationToken) 
    at Microsoft.TeamFoundation.DistributedTask.Worker.JobRunner.RunTask(ITaskContext context, TaskWrapper task, CancellationTokenSource tokenSource) 
09:10:23.570390 BaseLogger.LogConsoleMessage(scope.JobId = 88ecf41a-efe1-48d4-b67a-462b166f2b4c, message = ##[error]Attempting to perform the NormalizeRelativePath operation on the 'FileSystem' provider failed for path 'D:\TFS Build Agent\agent\tasks\VSBuild\1.0.11'. Access is denied) 

我試圖以確保給所有的全套權限下該我的服務正在運行到上述文件夾中的帳戶,但它沒有改變任何東西。

現在我將代理的文件移動到C盤到C:\ agent文件夾,並重新執行相同的確切設置,並突然全部按假定工作。

即使這解決了我的問題,我想知道更多關於這個問題。這是一個錯誤還是我錯過了一些特定的權限?

任何人都可以複製此問題嗎?

感謝

+0

可能是拒絕更高級別文件夾否決允許。 – jessehouwing

+0

嗨,傑西,我檢查並確保我取代了所有的子對象權限,但沒有幫助。我將在下週添加另一位代理,看看我是否可以複製。 –

回答

-1

我試着再次複製這個,但沒有成功。當時我的機器似乎出現了一些問題。

0

禁用UAC - 使用PowerShell,而不是控制面板。

喜歡的東西:

新ItemProperty -Path HKLM:軟件\微軟\的Windows \ CurrentVersion \政策\系統雜牌EnableLUA -PropertyType雙字 - 值0 -Force

我剛剛也有類似的問題。嘗試設置服務給本地管理員,沒有這樣做。禁用UAC似乎是原因。

或者直接在註冊表中我猜。重新啓動將需要生效。

+0

嗨@Calvin,對於遲到的回覆感到抱歉。我會在今晚測試你的建議並讓你知道。謝謝 –