Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Проблема с запуском проекта в Jenkins (credential issue)


(Sergey_Kot) #1

Наткнулся на проблему с запуском проекта (джоба) в Jenkins (см. скрин).
До этого (на другой машине) все ок было, но сейчас упустил, видимо, какой-то нюанс в настройке, скорее всего с ключами проблема.

Сделал все как тут описано: http://habrahabr.ru/post/125799/

После в настройках проекта в Jenkins: Управление исходным кодом -> Git: указал корректный Repository URL и добавил в Credentials новый SSH Username with private key - > Private key -> Enter directly и в поле скопировал ключ, который я получил при генерации.

Вот пример private key, который я сохранил в файле:

PuTTY-User-Key-File-2: ssh-rsa
Encryption: aes256-cbc
Comment: rsa-key-20141226
Public-Lines: 6
AAAAB3NzaC1yc2EAAAABJQAAAQEApeec2GstM5pwCNSK616ACFdUQTYAlFpWxtAh
FiOzn8nhJyix/ZCuUFOHmisAbUo3GOk/jrN2+xKp0TR9evtpr55QiIAjuKgobZdd
4MXPpvrZpz0si4tJMh0yPW67lrIRRht0Ox9LV/Jm4zxauKvVHjkHioRMmFuDZ5ES
Uoemu3IDFAmDdNaYkUmy6Ceus7icqF7442NF0/Bl+NVNvHMJNMwvERRtg6SCmOB+
GtM32a49PEd/FW9Va040nTmzUQR4ebeelOdo6aV3aA4FXrKCjGyRTNV2MZ5MhPYS
uh971C+nsyGPMHzhn3yz36HG7JamrQlBsKcYv8yf/deM5fiN0w==
Private-Lines: 14
xjseqb86IGP9wN1aQund64M1EVnA4QbzUA47vkilxcyDw1ScbIbX7ANeihyMXPPE
uj/oGmsZI5b4FWTscskG1sXgvbBFbZXh9hDhX+/VQQXtKsIrUxI7gMkhlXQyQ/Mp
6er8MpQy8wH3e5VGNwUyvb9/qNANg424fLKLdjYsRui+CHaN2jQqkOhpi/vIqehB
K4PbTFSAXYCXEBVmZUa4g1mkPjWffQIhqqtHXJxhBBQ9h3vdYCE9PBO5CkA1Rtic
WCRAzar8msVUyHVGBerhZZ6SlT85SniQ/7F27uaFfreuWKyhaUJejutDf9IrogjR
3BjV6Two9YnWULn6gFsddq6jUop9QBAAXRNsrp+6JH4ENmhBxFBPNa2gsGfW3xKU
JzL6ZQGPkWBa6gigwKn7ObRWR5NbP8AlsOVfT+dlB76jsyzoH5EYzwNFSOlVuvYs
68ovEvz8cFL6rwmKCKRTJwU8f+sjBkPuxbof7vqaZoGJPQHrfRe6laSgMl/juGXQ
Z+LdltLlL08zo15IDzGbvR2zh1bzK0GUN7hZBAPXae300WaZkQMjF5mIOvQXTfKp
DBAlFlEKligwXOmPj/IIY4UlTJZtPjE6lqhYBYgmQVbGXC6NkmmZDjDr50uNI9pi
G+JAvHzVSv8BQiq8bgkU2PZRZPI1WcEzN+Oa4nCNNYxknR9c9MesSQx5rBs1Gwoz
Zyr2FMgkXY1/mhK1tgD1pOkJkgf89MyioWTV01DcymtO3YhV7KXbUEOhQcz3VR5S
mAzvmONwlltTMOW+rhCZ1K/6etyH3WxbIuEd3UwUZJvzxRuNKcKZ/oa1qcJlFDwc
+AdRlUVOrVHaHPSW3sqhco3h2voFmIVxNYXEdfbICSCl5n83wiX8Aa6odzskfWYa
Private-MAC: 2c44a6c246c2a89eaafe3b3aac3cdd94990671e5

Вообщем, как по мне, проблема какае-то с ключами, что-то неверно сделал. Пробовал по-разному, не решил проблему.

Скрин запуска джоба, зависает и ничего не происходит:


(Дмитрий Жарий) #2

Причин у проблемы может быть множество.
Я бы удалил все ключи (тем более, что вы уже зачем-то засветили их в интернетах), и следовал бы официальному гайду. И выполнял бы команды из commandline.
Для Windows, при генерации ключей, нужно использовать Git Bash, которая ставится вместе с Git и позволяет симулировать окружение unix .

https://help.github.com/articles/generating-ssh-keys/

В итоге, после генерации ключей, зайдите в папку workspace, и попытайтесь клонировать репозиторий в ту папку, куда пытался клонировать Jenkins.

типа
git clone git@github.com:dzharii/swd-recorder.git

часто бывает, что после того как проект клонируется руками, Jenkins потом сможет его обновлять без проблем


(Sergey_Kot) #3

Добрый день.
Спасибо за второй способ, но до этого инцидента у меня выходило все корректно подключить (я про ключи) и запустить проект.
Хотелось бы разобраться именно с вариантом, который изначальный. Т.е. генерация ключей с помощь puttygen и добавление ключей в Git и в проекте в Jenkins.
Больше интересует что именно нужно добавить в Jenkins (какое именно значение туда скопировать нужно - у меня есть два ключа, которые я сгенерил: паблик и приват - паблик добавил в Git - все ок, приват - указал, когда сливал локально с Git’a):



(Дмитрий Жарий) #4

Хорошо, что у вас получилось с ключами.

А то, что git будет работать с ключами, сгенерированными через putty – никто официально не обещал. Я знаю, что у Putty есть некий Agent, отдельная утилита для авторизации. Может быть стоит посмотреть туда, но сам я этим puttём никогда не ходил.


(Sergey_Kot) #5

У меня еще не получилось, немного новичок в этом.
Вы не подскажите какое именно значение нужно вставить в Jenkins в раздел Add Credentials?
Публичный ключ, который я получил?


(Дмитрий Жарий) #6

Я бы ничего никуда не вставлял

Еще раз скажу, что самый протоптанный путь, это когда вы сгененируете ssh ключи при помощи ssh-keygen
Тогда они появятся в папке .ssh текущего пользователя.

Например:

В таком случае, вам нужно их только раз сгенерить для машины и добавить pub ключ на гитхаб.

В Дженкинсе можно указать так:

Как видите, Jenkins тут хочет только приватный ключ.

Отступление:

  1. Для Github – используйте github plugin
  2. Если вы собираетесь клонировать публичный проект, то авторизация вам вовсе не нужна
  3. Если у вас не получится настроить SSH, то вы можете использовать HTTPS соединение. Оно требует логин/пароль вместо ключей.

Ссылка по теме
https://gist.github.com/tehfoo/3708738


(Влад) #7

Была такая проблема. Симптомы сходятся. Ответил, как решилось тут.