Windows 从机上的 Jenkins Git SSH 密钥

Jenkins Git SSH keys on Windows slave

我们目前在 Windows 上有一个 Jenkins 主服务器、一个 ubuntu 从服务器和一个 Windows 从服务器。我正在尝试在 Windows 从站上设置 git。 msysgit 已安装,我将目录包含在系统路径变量中,以便我可以在任何地方调用 "git.exe" 或 "git.cmd"。

在我的 Jenkins 配置中,我有一个带有 SSH 私钥的凭据。此凭证供 Jenkins 与 Git 一起使用。这适用于主节点和 linux 从节点。我没有将私有 ssh 密钥放在这两个服务器中的任何一个上,Jenkins 为我处理了它。

但是 Windows 奴隶,没那么多。当我 运行 在 windows 奴隶上工作时,我得到的只是 ERROR: Error cloning remote repo 'origin'

如何获得在 Windows 从站上工作的凭据?或者,如果您认为这不是问题所在,我接下来的故障排除步骤是什么?

如果您在此错误后看到任何其他消息,能否更新您的问题以包含它们?

没有看到它们,我只能怀疑你的 Windows slave 上的 git 找不到 .ssh 文件夹(这个文件夹包含你的密钥)。

您已经看过 Git Plugin page 上的注释了吗?

请使用 C:\Program Files\git\Cmd\git.exe 作为 Jenkins windows slave 配置的 git 环境变量。

1) 管理詹金斯 2)管理节点 3) Select Windows slave -> 去配置 4) 为 GIT 添加环境变量,如上完整路径。

此外,转到全局安全设置 -> 启用从站 -> 主站。

这应该有效。

干杯, 阿育王.

您可能需要在位于 C:\Windows\System32\config\systemprofile 的 windows 服务的主文件夹中创建并填充 ssh 文件夹。

来源:https://www.techcoil.com/blog/home-directory-of-the-localsystem-account-in-windows-server-2012/

我遇到了同样的问题。解决方案是在 .ssh/config 中添加以下行,它让 ssh 再次支持 rsa。密钥无需放入 .ssh。 Jenkins 将从 master 端处理密钥。

PubkeyAcceptedKeyTypes +ssh-rsa