使用由现场TFS2015提供的PowerShell脚本配置构建代理时,脚本会因为无法在服务器上找到代理池而出错。
但是,代理池'default'肯定存在。在另一台服务器上,相同的脚本按预期工作,并且构建运行。请参阅下面的脚本输出。
我试过跟随:
导致代理池验证时脚本失败的原因是什么?
PS C:\ Windows \ system32> E:\ Build \ agentConfigureAgent.ps1
输入此代理的名称(默认为Agent-SRV001):BUILD002
输入Team Foundation Server的URL(默认为:http://[ip-address]:8080/tfs
针对哪个代理池配置此代理? (默认池名称为'default'):
输入此代理的工作文件夹路径(默认为'E:\ Build \ agent_work'):E:\ Build \ Work
是否要将代理安装为Windows服务(是/否)(默认为Y):n
是否要取消配置任何现有代理(Y / N)(默认为N;代理将更新):
配置代理商
取消阻止文件呼叫代理配置不带/ RunningAsService
呼叫代理配置无/强制 无法找到名称为agent的代理池 警告:配置代理失败,但您可以通过使用/ Force配置来解决此问题。
您想尝试使用参数-Force(Y / N)再次尝试代理配置:y
呼叫代理配置没有/ RunningAsService
呼叫代理配置/强制 无法找到名称为agent的代理池 E:\ Build \ agent \ ConfigureAgent.ps1:配置代理失败。在行:1 char:1
+ E:\ Build \ agent \ ConfigureAgent.ps1 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:NotSpecified:(:) [Write-Error],WriteErrorException
+ FullyQualifiedErrorId:Microsoft.PowerShell.Commands.WriteErrorException,ConfigureAgent.ps1
答案 0 :(得分:13)
运行构建过程脚本的用户帐户必须是Agent Pool Administrator Accounts
的一部分。
脚本中的错误消息具有误导性。
答案 1 :(得分:4)
要解决此错误,我必须将运行TFS构建代理的Windows用户添加到“高级”访问级别。这可以在根TFS管理服务器(右上角)>下完成。访问级别UI。 (http://your-tfs-server-here:8080/tfs/_admin/_licenses)我的服务器默认访问级别设置为利益相关者。
答案 2 :(得分:3)