Jenkins: скопировать артефакты (jar-файл) на удаленный сервер Linux, плагин Publish Over SSH - PullRequest
1 голос
/ 07 мая 2019

Я хочу перенести файл jar сборки из jenkins (в настоящее время установлен на моем локальном компьютере Mac) на сервер linux.

Я установил publishOverSSH plugin в Jenkins и выполнил необходимую настройку, но когда я делаю тестовую настройку, я получаю эту ошибку:

Не удалось подключиться или сменить каталог 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. Дженкинс работает на Apache Tomcat 9.0.1

Я могу планировать основные задания по сборке, соединение с git работает нормально.

Я сгенерировал ключи id_rsa и id_rsa.pub на своем локальном MAC с помощью инструмента ssh-keygen.

Я могу сделать SSH на моем Linux-сервере, используя простой сценарий оболочки в jenkins.

Когда я иду на Manage Jenkins>Configure System> Publish Over SSH section: Ключевая фраза: я ввел пароль LDAP, который я использую для входа на мой сервер Linux.

Путь к ключу:

  • Путь к моему ключу RSA: /Users/neha922102/.ssh/id_rsa
  • Ключ: вставил вышеуказанный ключ

Раздел SSH-сервера:

  • Имя: имя сервера
  • Имя хоста: rn-boltd-lappxx.rno.XYZ.com
  • имя пользователя: c4986148
  • Удаленный каталог: /tmp

Я также скопировал ключ is_rsa.pub на удаленный сервер Linux под ~/.ssh/authorized_keys

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, когда сборка будет успешной.

...