我正在尝试让 TeamCity 构建我的私人 GitHub 存储库。当我显式设置密钥文件的路径时,我能够成功让我的 VCS 根通过连接测试;然而,尽管进行了大量的谷歌搜索,当我使用“默认私钥”选项时,我无法让它工作。我明白了com.jcraft.jsch.JSchException: Auth fail
.
我的 TeamCity 服务器和构建代理都以名为 (gasp) teamcity
,以及内容C:\users\teamcity\.ssh\
包括两个config
和一个密钥文件,其中配置指向密钥文件。我的配置包含:
Host *
IdentityFile ~/.ssh/github.key
我尝试过各种不同的路径样式,包括 Windows 和 Unix 样式,但似乎都不起作用。
再说一遍,如果我使用的话,效果很好private key
设置并显式设置密钥文件的路径,但当我使用default private key
,我显然需要它来让我的构建代理工作。
对我来说最简单的解决方案是:
-
在管道的项目设置“SSH Keys”下上传您的(OpenSSH)密钥(如下所示):
查看 OpenSSH 信息的资源链接(原因/方式)
-
然后在 VCS 根设置中,更新“身份验证设置”,如下所示:
-
note:用户名是; ”git“(参见第三个资源)
确保您的“获取 URL”类似于“[电子邮件受保护] /cdn-cgi/l/email-protection:项目名称/存储库名称.git" - (Note:此处需要 Github 等效项)
添加您的新密钥(请参阅第一个资源)
资源:
- 这是帮助我找到解决方案的链接(请参阅 Putty keygen 部分) http://laurentkempe.com/2012/08/24/TeamCity-and-Gitlab-working-together-with-SSH-Keys/
- 有关 SSH 密钥的 TeamCity 文档 https://confluence.jetbrains.com/display/TCD9/SSH+Keys+Management
- 用户名应该是“git” https://teamcity-support.jetbrains.com/hc/en-us/community/posts/206933505-Help-Configuring-git-cvs-root-with-ssh
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)