Azure DevOps – 到 Intranet TFS 2018 的管道:SSL_ERROR_SYSCALL

Azure DevOps – Pipelines to intranet TFS 2018: SSL_ERROR_SYSCALL

我正在设置 Azure Pipelines,我几乎没有从 GitHub 获取资源并尝试设置管道以在一段时间内到达 Intranet 上的 TFS。

我重新开始,我在 TFS 中创建了一个具有完全访问权限的新 PAT 令牌。 我创建了一个类型为“Azure Repos/Team Foundation Server”的新服务连接,使用 URL: https://tfs.myCie.com/defaultcollection/MyProject 和来自上面 TFS 的 PAT 令牌。

我创建了一个新管道,select连接其他 Git 并使用新的服务连接。我不知道使用什么作为默认分支,因为我在 TFS 上没有看到任何分支,所以我使用了 master。

我使用空作业选项并再次输入服务连接名称和主分支。当我尝试 select YAML 模板时,它无法将其保存到存储库中,我是否应该为 Yaml 文件创建一个不同的存储库到 TFS?

我注意到我的 .proxy 文件已填充并且 .proxybypass 文件有 TFS 服务器 URL。

当我 运行 管道时,在 UI 的早期给出了超时,但在 6-7 分钟后,我的日志显示:

正在同步存储库:存储库(外部Git) ##[调试]存储库url=https://tfs.myCie.com/defaultcollection/myProject/ ##[调试]targetPath=D:\Agent_work\s git 版本 2.26.2.windows.1 git 远程添加来源 https://tfs.myCie.com/defaultcollection/myProject/ ##[调试]已完成进程 6888,退出代码为 0。

git 配置 --get-all http.https://tfs. myCie.com/defaultcollection/myProject/.extraheader 如果我测试这个 .ExtraHeader URL,它要么不存在,要么我没有访问权限!

git 配置 --get-all http.proxy git 远程设置-url 来源 https://emptyusername:***@tfs. myCie.com/defaultcollection/myProject/ 致命:无法访问 'https://tfs.myCie.com/defaultcollection/myProject/':OpenSSL SSL_connect:SSL_ERROR_SYSCALL 连接到 tfs.oecd.org:443

可能是代理错误或用户访问帐户?
在后一种情况下,我需要什么访问权限?
在 TFS 中创建 PAT 令牌时应该使用哪些设置? 谢谢

恐怕您使用了错误的服务连接类型。

Azure Repos/Team Foundation Server服务连接用于yaml管道中的repositories resources部分,你可以使用服务连接引用其他组织中的存储库。有关详细信息,请参阅 this document

resources:
  repositories:
  - repository: otherrepo
    name: ProjectName/RepoName
    endpoint: newTFSServiceConnection
steps:
- checkout: self
- checkout: otherrepo

如果您想在另一个 TFS 服务器中为存储库设置管道。您需要创建类型为 Other Git

的新服务连接

并在编辑页面输入tfs repo url和用户名/密码

然后你可以select这个Other git创建管道时类型服务连接。

如果您无法通过 PAT 连接到您的 tfs 存储库。可能是因为在您的 windows 计算机上启用了 IIS 基本身份验证,它阻止您使用个人访问令牌 (PAT) 作为身份验证机制。请参见 here,您可以尝试使用基本的身份验证方法(用户名和密码)来代替

请注意,您需要在 self-hosted 代理上 运行 此管道。当您尝试连接到您的 tfs Intranet 服务器上的 repo 时。云 Microsoft 托管代理无法连接到您的 Intranet tfs 服务器。除非在public网络中可以访问。