【问题标题】:TFS with external GITLAB build failures带有外部 GITLAB 构建失败的 TFS
【发布时间】:2018-09-05 23:52:00
【问题描述】:

我正在尝试在 TFS 中使用 GitLab (CE11.1.4) 外部 GIT 服务端点设置 TFS 2015 更新 4。 当我从 Web 浏览器访问实验室中的 GitLab 服务器时,我使用 https,我收到一个不安全的警告,但我点击它。 如果我尝试通过 http 访问网页,我会被重定向到 https 页面。这是有道理的。

当我在 TFS 中创建服务端点时,我已经以 http 和 https 两种方式输入了 URL。无论哪种配置,我都会遇到构建失败。

对于http://gitlab,我在尝试构建时收到以下错误:

同步存储库:我的 GitLab (Git) 启动克隆 LibGit2Sharp.LibGit2SharpException:不允许跨主机重定向

我认为这是因为我使用的是 http 而不是 https。

我的下一个测试是使用https://gitlab,这给了我这个错误:

同步存储库:我的 GitLab (Git) 启动克隆 LibGit2Sharp.LibGit2SharpException:发送请求失败:与服务器的连接异常终止

这是怎么回事,我已经在网上搜索并没有真正找到任何东西。

后续问题:当您创建服务端点时,TFS 覆盖下发生了什么?我们是否只是存储 URL 以及用户名和密码,以便稍后在构建过程中使用?

【问题讨论】:

  • 您是否成功配置了服务端点?您是否为 TFS 设置了代理?

标签: tfs gitlab


【解决方案1】:

只需尝试在 IE 或任何其他浏览器中将 GitLab 服务器 URL(尝试 httphttps)添加到您的信任站点,然后再试一次。

这也可能是您的服务器的 SSL 问题,请参考此线程:https://github.com/libgit2/libgit2sharp/issues/1524

您可以参考Troubleshoot Build and Release 以使用外部 git 的说明进行故障排除。

对于后续问题,您需要提供 URL 和用户名、密码来创建服务端点。端点仅用于在外部 Git 和 TFS 之间创建连接。创建服务端点后,您可以直接在构建/发布过程中使用它(不再需要输入用户名、密码)。就像在 TFS 本身中使用内部存储库一样......

【讨论】:

  • 为了排除我家庭实验室的证书问题,我决定在我们的生产环境中尝试测试。我在 TFS 中设置了服务端点以使用 https url、我的 gitlab 用户 ID 和我的个人访问令牌。我得到了流动错误:同步存储库:WPS GitLab(Git)开始克隆 LibGit2Sharp.LibGit2SharpException:发送请求失败:与服务器的连接在 LibGit2Sharp.Core.Ensure.HandleError(Int32 结果)处异常终止。 Proxy.git_clone(String url, String workdir, GitCloneOptions& opts)
  • 克隆命令是要使用https传输还是SSH?也许我们没有为 https 配置
  • 我有一个想法,所以通过 git bash 在我的电脑上尝试了以下操作: $ git clone git-corp-p1.wpsic.com/0019247/CSAT_Test.git Cloning into 'CSAT_Test'... 致命:无法访问 'git-corp-p1.wpsic.com/0019247/CSAT_Test.git':SSL 证书问题:无法获取本地颁发者证书
  • 是否有分步文档在 TFS 中为 External Git 配置构建服务器?完成这项工作的先决条件是什么?
  • @PatDelaney 没有分步文档,但是您可以参考Service connections for builds and releasesExternal Git service connection 进行配置。 SSH问题请参考Use SSH key authentication了解详情。
猜你喜欢
  • 1970-01-01
  • 2018-11-17
  • 2011-01-15
  • 1970-01-01
  • 2023-03-04
  • 2020-04-24
相关资源
最近更新 更多