git - TFS 构建 - 与外部 Git 存储库的持续集成
问题描述
我在 Gitlab 本地服务器上托管了一个 Git 存储库,我需要使用 TFS 构建设置 CI。我设法设置了一个手动 TFS 构建,它成功地从我的 Git 存储库中提取了源代码。我在我的 TFS 构建定义中添加了一个 CI 触发器,并且构建实际上为每个提交触发,但失败并出现以下错误:
轮询存储库时发生异常。错误:Microsoft.TeamFoundation.Build2.Server.Extensions.ExternalConnectorException:基本身份验证需要与服务器的安全连接
有任何想法吗?
解决方案
根据错误消息,此问题是由身份验证问题引起的。
你是如何设置端点服务的?
不要在 TFS 上创建的“服务”端点上使用http来访问 GitLab 存储库,而是在 URL 中使用HTTPS。
除了启用对存储库的 HTTPS 访问之外,请记住在您的 GitLab 帐户上设置密码,然后在 TFS 上设置的“服务”端点上使用该密码以及您的用户名(电子邮件地址)。
您还可以尝试Personal Access Token
在 Gitlab 中创建一个并将其添加到构建定义中的存储库 URL(在获取任务和服务端点定义中)。
然后尝试触发 CI 构建并再次测试。
更新:
根据我对HTTPS的测试,在提交对 Gitlab 的更改时,CI 的一切都按预期工作(对于 PAT 和基本用户名和密码)。
在 TFS 2015 Update4.1 和 TFS2017Update3.1 上对此进行了测试...
因此,只需尝试我上面提到的解决方案。
推荐阅读
- swiftui - 为什么 SwiftUI @main App 中的实例化不创建 EnvironmentObject?
- c++ - 如何使用 OpenCV C++ 在图像上以 3D 透视图绘制平面
- tableau-desktop - 如何让前 N 个过滤器与 LOD calc 一起使用
- swift - 在横向使用相机的图像选择器无法正常工作(SwiftUI)
- web-scraping - 网页抓取问题
- android - buildConfigField 没有被拾取
- javascript - 价值改变,但视觉表现不变
- anaconda - Anaconda:没有正确使用自定义安装目录?
- azure - 使用 TransciptLogger 中间件存储 Root-Skill 对话
- python - 将需要身份验证的网页转换为 PDF