一尘不染

如何为Hudson / Jenkins设置私钥SSH密钥以访问Bitbucket?

jenkins

我正在尝试使用Apache2设置Debian服务器作为运行Jenkins的Tomcat 7的前端-这正在工作-
但我希望Jenkins监视托管在bitbucket上的私有Mercurial存储库,并且我想使用SSH。(我曾尝试使用简单的https,但仍然没有喜悦-
SO上有一个问题答案,建议使用ssh)

通过将Jenkins .WAR文件拖放到/
webapps中,我已经使用Tomcat的热部署功能部署了Jenkins。我可以在服务器上生成一个公钥/私钥对,并将我的公钥添加到Bitbucket帐户中-
但是,当我访问Bitbucket上的私有存储库时,如何让Jenkins使用我的私钥进行身份验证?

我看过一篇博客文章,其中使用apt-get在Debian上安装Hudson会创建一个Hudson用户(因此我可以为此用户添加私钥),但是通过tomcat
autodeploy安装它并不会添加Jenkins用户。如果没有为Jenkins设置unix用户,我可以配置Jenkins在身份验证时使用的用户吗?


阅读 306

收藏
2020-07-25

共1个答案

一尘不染

如果可以在Jenkins中控制mercurial命令行,则可以传递--ssh命令以告诉mercurial调用什么ssh命令。这样的事情可能会起作用:

hg --ssh '/usr/bin/ssh -i /path/to/private/key' ...

或者,您可以弄清楚Jenkins是以哪个用户身份运行的(必须是 某个
用户),然后将文件放入该用户的文件夹中,~/.ssh即使/root/.ssh/

2020-07-25