我正在尝试的东西看起来很简单,但我真的无法理解我需要做的事情:
在作业中,我有一个执行shell命令的构建步骤。此shell命令尝试使用Jenkins CLI。 所以基本上它说" java -jar theCliFile -s jenkinsURL / command
所以在工作中,我正在尝试与jenkins-server本身建立SSH连接。
此操作失败,控制台输出显示" [WARN]无法使用SSH密钥进行身份验证。以匿名方式进行 您必须通过身份验证才能访问此Jenkins。"。
我可以在shell中提供用户名和密码作为明文,但我想避免这样做。
为了允许自动身份验证,我需要设置什么?我不明白谁需要什么样的钥匙。
Jenkins CLI Wiki表示要配置/ me / configure用户。我只是不知道这有多大意义。我想这是用于有人试图从远程机器而不是Jenkins本身构建SSH连接的用例,就像我的情况一样。
答案 0 :(得分:0)
实际上,我自己解决了这个问题:
我在Jenkins-Server上有一个私钥和公钥(如果你没有那些,只需在Jenkins运行的服务器上生成它们(有很多教程如何这样做)在那里))。
为了允许我在我的问题中尝试,我必须使用公钥并将其输入到jenkins-application现有的某个用户中。 据我所知,在任何用户中输入Jenkins Servers公钥都会使SSH请求作为此用户进行身份验证,因此shell将拥有该用户的权限。