Git|Jenkins|权限被拒绝(公钥)



我们有一个通用的LDAP帐户/用户。我们计划使用这个用户为我们的团队配置Jenkins。

  1. 我使用登录名登录到机器/VM并安装了Jenkins
  2. 然后,我只从我的帐户生成ssh密钥,但我在生成ssh密钥时提供的电子邮件id是普通用户
  3. 然后我将公共ssh密钥添加到GitHub(在GitHub中,我使用普通用户登录)
  4. 为Jenkins SSH凭据插件添加了私钥
  5. 创建了一个轮询SCM的作业,并且运行良好
  6. 我需要执行一些git命令(例如pull、checkout、tag等)。因此,我正在编写ant脚本来实现这一点
  7. 当我通过Jenkins执行GIT ant target[1]时,我得到以下错误:

获取:[echo]-----------------------------------------------------------

[echo]正在从获取最新git@github.XYZ.com:XYZ/ABC主

[echo]-----------------------------------------------------------

[执行]git@github.XYZ.com:权限被拒绝(公钥)。

[exec]致命:无法从远程存储库中读取。

[执行]

[exec]请确保您拥有正确的访问权限

[exec]并且存储库存在。


我是否必须使用公共帐户/用户登录到VM并生成ssh密钥,然后使用这些密钥?如果是,那么为什么第5点工作良好?如果没有,我在这里做什么不对?

[1] -在Jenkins git插件中指定git命令

Jenkins将使用与作业关联的私钥来读取远程回购。

但是:在作业本身中执行的脚本将使用在运行Jenkins本身的用户中找到的默认SSH密钥:~user/.SSH/id_rssa

确保默认私钥是该作业所需的私钥(或者可以通过~/.ssh/config设置私钥):关键是,它不再与Jenkins SSH凭据插件相关。

相关内容

  • 没有找到相关文章

最新更新