2016-06-08 2 views
0

Я пытаюсь получить сборник Jenkins, чтобы вытащить из своего репозитория Gerrit с помощью SSH. Я создал пользователя с именем jenkinsbuild в Gerrit и ввел открытый ключ для пользователя.Gerrit Code Reivew не принимает учетные данные ssh от Jenkins

Я использую параметр Git SCM и используя плагин Credentials. Для моих учетных данных я установил имя пользователя jenkinsbuild и напрямую ввел закрытый ключ (вместо указания на файл ключа).

Моя конфигурация SCM выглядит следующим образом

Repository URL: SSH: //[email protected]: 29418/тест/testgit

Полномочия jenkinsbuild (Jenkins) Полномочия

Когда я запускаю сборку, она зависает, пытаясь извлечь из репозитория GIT. Он проводит опрос в течение 10 минут, затем процесс истекает. Я смотрел/вар/Журнал/подстраховка на сервере Геррит и видел ошибки как:

Jun 8 11:06:25 xxxxx sshd[9887]: Invalid user jenkinsbuild from xx.xx.xxx.xxx 
Jun 8 11:06:25 xxxxx sshd[9887]: debug3: mm_answer_pwnamallow: sending MONITOR_ANS_PWNAM: 0 
Jun 8 11:06:25 xxxxx sshd[9887]: debug3: mm_request_send entering: type 8 
Jun 8 11:06:25 xxxxx sshd[9888]: input_userauth_request: invalid user jenkinsbuild 

Для того, чтобы отладить эту проблему, я зашел на сервер Jenkins как jenkinsbuild и попытался сделать GIT клон репозиторий. Он работал (после некоторого возиться). Я не уверен, почему я могу клонировать прямо с сервера, но не от Дженкинса.

Есть ли у кого-нибудь советы о том, как я могу отладить эту проблему?

+0

Вы просматривали файлы gerrit/log/error_log и gerrit/log/sshd_log на сервере Gerrit? Любые подсказки? –

+0

Файл sshd_log, похоже, регистрирует успешные логины. Когда я пытаюсь сделать это из своей сборки (где она не работает), я не вижу никаких новых записей. В журнале ошибок есть много ошибок, но единственное, что соответствует срокам моих запросов, - «[2016-06-08 15: 14: 02,673] ERROR com.googlesource.gerrit.plugins.replication.ReplicationQueue: Can not реплицировать ххххх: /opt/git/ttadd/qcegpos.git org.eclipse.jgit.errors.TransportException: ххххх: /opt/git/ttadd/qcegpos.git: Missing неизвестный bc751a060521b1b4e23795464a3fd398fbd09996 " – bsayegh

+0

хмм ... может быть Дженкинс ждет ответа пользователя вроде: Подлинность хоста : не может быть установлена. Отпечаток ключа RSA - SHA256: . Вы действительно хотите продолжить подключение (да/нет)? –

ответ

0

Оказывается, что GIT-плагин для Jenkins (по крайней мере, версия, на которой я включен) не поддерживает ssh-ключи с кодовыми фразами. Кажется странным, поскольку он использует плагин Credentials, который позволяет вам предоставлять кодовую фразу.

Есть много ошибок, открытых для него, в том числе JENKINS-20879

Решение было регенерировать ключей SSH без пароля.

Смежные вопросы