我目前正在使用 TFS 2013(本地安装)尝试使用 LDAP 身份验证从内部 GitHub Enterprise 安装构建。
我遇到的问题是它无法访问源代码,如何配置 TFS Build 以使用特定的身份验证?
从 TFS 构建日志
异常消息:libgit2 引发错误。类别 = 净(错误)。
VS30063:您无权访问https://user:password@githubrepository.corp.company.net。(类型 LibGit2SharpException)
异常数据字典:
libgit2.code = -1
libgit2.category = 11
异常堆栈跟踪:
服务器堆栈跟踪:
在 LibGit2Sharp.Core.Ensure.HandleError(Int32 结果) 在 LibGit2Sharp.Core.Proxy.git_clone(String url, String workdir, GitCloneOptions opts) 在 LibGit2Sharp.Repository.Clone(String sourceUrl, String workdirPath, Boolean bare, Boolean checkout, TransferProgressHandler onTransferProgress, CheckoutProgressHandler onCheckoutProgress, Credentials credentials) 在 Microsoft.TeamFoundation.Build.Activities.Git.GitPull.GitClone.GetRepository(String repositoryUrl, String workingFolder) 在 System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink) 处的 args、对象服务器、Object[]& outArgs)
在 [0] 处重新抛出异常:
在 System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(Message reqMsg, Boolean bProxyCase) 在 System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(Object NotUsed, MessageData& msgData) 在 System.Func
3.EndInvoke(IAsyncResult result) at Microsoft.TeamFoundation.Build.Activities.Git.GitPull.GitRepositoryBase.EndExecute(AsyncCodeActivityContext context, IAsyncResult result) at System.Activities.AsyncCodeActivity
1.System.Activities.IAsyncCodeActivity。在 System.Activities.AsyncCodeActivity.CompleteAsyncCodeActivityData.CompleteAsyncCodeActivityWorkItem.Execute(ActivityExecutor 执行器,BookmarkManager 书签管理器)的 FinishExecution(AsyncCodeActivityContext 上下文,IAsyncResult 结果)
跟进
我已经尝试了用于身份验证的 URL 参数(示例)
更多跟进
完全卸载并更新到 2013 RC,错误消息也已更新,因为它不同。
我还尝试将构建控制器设置为在 github 企业安装中作为经过身份验证的 LDAP 用户运行。