Дженкинс на Docker не смог клонировать репозиторий из GitLab, вернул код состояния 128 - PullRequest
0 голосов
/ 13 октября 2018

Jenkins, работающий на Docker trow returned status code 128 после попытки клонировать удаленное репо на GitLaB

Jenkins on a Docker unable to clone / fetch repository from GitLab returned status code 128

Моя настройка

  • Cent OS

  • Версия Docekr: 18.06.0-ce

  • Jenkins: 2.121.2, 2.146,

Шаги для настройки Jenkins

  1. Создание контейнера с объемом docker run -it --name jenkins -p 8080:8080 --mount source=jenkins_vol,target=/var/jenkins_home IageId
  2. Установите рекомендуемые плагины.
  3. Перейдите в volime под пользователем jenkins, создайте ключ SSH.
  4. Добавлен открытый ключ к GitLAb
  5. Run ssh -T git@gitlab.domain.comот объема, чтобы освободить связь.Работает нормально.
  6. Создание проекта вольным стилем
  7. Добавлен URL репо git@gitlab.domain.com:ProjectName/automated-testing-qa.git в проект вольного стиля
  8. Добавлен закрытый ключ и парольная фраза для Jenkins.При запуске Jenkins build он пытается клонировать репо в течение ~ 10-15 минут, а затем завершается неудачно с сообщением, которое вы видите выше.

Когда вместо URL-адреса SSH я использую URL-адрес https, он также завершается неудачей.

Ответы [ 2 ]

0 голосов
/ 15 октября 2018

Я решил эту проблему просто используя ключ SSH без ключевой фразы .

Когда вы генерируете SSH pare, просто нажмите Enter, когда он попросит вас ввести фразу-пароль.Затем в учетных данных Jenkins при установке закрытого ключа SSH просто пропустите поле пароля.

Я также заметил, что при использовании той же настройки учетных данных и только что отредактированных значений проблема все еще возникала.Поэтому обязательно создайте новый набор учетных данных для частного SSH без ключевой фразы, не используйте повторно уже существующий.

0 голосов
/ 13 октября 2018

Вы пытались клонировать свое хранилище, используя URL-адрес SSH из контейнера Docker напрямую?Это работает?

Когда вы используете HTTPS URL, он не запрашивает пароль?Попробуйте клонировать репозиторий, используя HTTPS URL из контейнера Docker, при этом вам будет предложено ввести пароль и посмотреть, работает ли он, когда вы вводите правильный пароль?

Пожалуйста, опубликуйте результаты своих попыток здесь, чтобы мы могли видеть, что происходитна.

...