Jenkins:将工件(jar文件)复制到远程linux服务器,通过SSH插件发布

时间:2019-05-07 07:11:46

标签: jenkins ssh jenkins-pipeline jenkins-plugins

我想将构建jar文件从jenkins(当前安装在我的本地Mac机器上)传输到linux服务器。

我在Jenkins中设置了publishOverSSH plugin,并进行了必要的设置,但是当我进行测试配置时,出现此错误:

  

无法连接或更改目录   jenkins.plugins.publish_over.BapPublisherException:无法连接和初始化SSH连接。消息:[无法为配置[rn-boltd-lappxx.rno.XYZ.com]连接会话。消息[验证失败]]

日志文件显示:

WARNING [Handling POST /jenkins/descriptorByName. /jenkins.plugins.publish_over_ssh.BapSshHostConfiguration/testConnection from 0:0:0:0:0:0:0:1 : http-nio-8080-exec-5] 
jenkins.plugins.publish_over_ssh.BapSshHostConfiguration.connect Failed to connect session for config [rn-boltd-lapp24.rno.apple.com]. Message [Auth fail]
com.jcraft.jsch.JSchException: Auth fail
at com.jcraft.jsch.Session.connect(Session.java:519)
at jenkins.plugins.publish_over_ssh.BapSshHostConfiguration.connect(BapSshHostConfiguration.java:380)
at jenkins.plugins.publish_over_ssh.BapSshHostConfiguration.createClient(BapSshHostConfiguration.java:245)
at jenkins.plugins.publish_over_ssh.BapSshHostConfiguration.createClient(BapSshHostConfiguration.java:234)
at jenkins.plugins.publish_over_ssh.descriptor.BapSshPublisherPluginDescriptor.validateConnection(BapSshPublisherPluginDescriptor.java:180)
at jenkins.plugins.publish_over_ssh.descriptor.BapSshPublisherPluginDescriptor.doTestConnection(BapSshPublisherPluginDescriptor.java:175)
at jenkins.plugins.publish_over_ssh.descriptor.BapSshHostConfigurationDescriptor.doTestConnection(BapSshHostConfi

我正在MAc 10.13.6上运行jenkins。 Jenkins在Tomcat 9.0.1上运行

我能够安排基本的构建作业,与git的连接正常。

我已经使用ssh-keygen工具在本地MAC上生成了id_rsa和id_rsa.pub密钥。

我可以使用jenkins中的简单shell脚本对Linux服务器执行ssh。

当我转到Manage Jenkins>Configure System> Publish Over SSH section时: 密码:我输入了用于登录Linux服务器的LDAP密码。

密钥路径:

  • 我的RSA密钥的路径:/Users/neha922102/.ssh/id_rsa
  • 键:粘贴以上键

SSH服务器部分:

  • 名称:服务器名称
  • 主机名:rn-boltd-lappxx.rno.XYZ.com
  • 用户名:c4986148
  • 远程目录:/tmp

我还已经将is_rsa.pub密钥复制到~/.ssh/authorized_keys下的远程linux服务器上

c4986148@rn-boltd-lappXX(Linux-RENO::DEV):~/.ssh]$ ls -l
total 4
-rw-r--r--. 1 c4986148 aplstaff 745 May  7 05:37 authorized_keys

我不是root用户,因此无法重新启动ssh服务。

配置看起来很好,那我为什么会收到此错误。

我应该能够连接SSH,然后在构建成功后通过SSH复制工件。

0 个答案:

没有答案