Плагин Jenkins s sh agent накапливается, нет ошибок, нет проблем с тайм-аутом - PullRequest
0 голосов
/ 08 января 2020

Я установил jenkins s sh Плагин агента . Я создал закрытый ключ s sh на сервере linux (с помощью команды s sh -keygen -t rsa ). Я пытаюсь подключиться. Затем в Jenkins Creditintials добавлено S SH Имя пользователя с закрытым ключом со всеми необходимыми полями. В jenkinsfile добавлена ​​простая команда для запуска поверх s sh:

pipeline {
   agent any
   stages {
       stage('---doingsomething---') {
            steps {
                sshagent (credentials: ['jbowner-195']) {
                    sh 'ssh -o StrictHostKeyChecking=no -l jbowner 10.10.23.195 uname -a'
                }
            }
       }

   }
}

Когда я нажимаю кнопку сборки, процесс запускается и никогда не заканчивается. Нет ошибок, нет времени ожидания. Вот часть вывода, на котором Дженкинс складывает

[Pipeline] }
[Pipeline] // stage
[Pipeline] withEnv
[Pipeline] {
[Pipeline] stage
[Pipeline] { (---echoing---)
[Pipeline] sshagent
[ssh-agent] Using credentials jbowner (jbowner 10.10.23.195)
[ssh-agent] Looking for ssh-agent implementation...
[ssh-agent]   Exec ssh-agent (binary ssh-agent on a remote machine)
$ ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-XSQPEUHOqZQR/agent.10226
SSH_AGENT_PID=10229
Running ssh-add (command line suppressed)
Identity added: /home/jenkins/.jenkins/workspace/Eformgenerator-Prod@tmp/private_key_5151715321960722060.key (/home/jenkins/.jenkins/workspace/Eformgenerator-Prod@tmp/private_key_5151715321960722060.key)
[ssh-agent] Started.
[Pipeline] {
[Pipeline] sh
+ ssh -o StrictHostKeyChecking=no -l jbowner 10.10.23.195 uname -a

какие-нибудь идеи?

1 Ответ

0 голосов
/ 08 января 2020

Плагин Jenkins s sh не работает для меня. Мое решение -

  1. создать ключи rsa на исходном компьютере, используя s sh -keygen -t rsa
  2. s sh -copy-id username@destination_ip. Затем введите целевой пароль. Это добавит IP-адрес назначения в качестве известного хоста и добавит ключ источника на целевой машине в качестве авторизованного ключа.

, затем вместо агента jenkins s sh я использовал стандартную команду s sh вот так.

pipeline {
   agent any
   stages {
       stage('---echoing---') {
            steps {
                sh 'ssh -o StrictHostKeyChecking=no jbowner@10.10.23.195 uptime'
            }
       }

   }
}

Это работает, потому что серверы доверяют друг другу, используя s sh key

...