【发布时间】:2015-10-04 01:42:37
【问题描述】:
我们有一个 Jenkins 服务器,它使用 SSH plugin 在全局 Jenkins 配置中配置 SSH 远程主机。这些 ssh 连接使用公钥/私钥对远程主机进行身份验证。
然后我们在构建步骤“使用 ssh 在远程主机上执行 shell 脚本”(我相信这也是 SSH 插件的一部分)中在许多作业中使用这些配置的 SSH 远程主机。
我遇到的问题是,任何使用 ssh 在远程主机上执行 shell 脚本的作业都必须在 Windows 从属设备上运行,因为我还没有找到一种方法来放入密钥文件的某种相对路径.
在 Windows 上,该文件将位于:C:\Users\<username>\.ssh\
在 linux 上,该文件位于:/home/<username>/.ssh/
我已经尝试了多次使用系统环境变量、在节点配置页面上设置环境变量以及将它们用作密钥文件路径的一部分,但没有任何运气。
我错过了什么吗?有没有更好的处理方法。必须有一种方法来管理跨从属的 ssh 远程主机之间的密钥文件位置和差异。
【问题讨论】:
标签: linux windows ssh jenkins slave