Дженкинс не может получить код из удаленного Git
Моя сборка jenkins теперь внезапно не работает. Ошибка заключается в следующем:
Fetching changes from the remote Git repository
> git config remote.origin.url <url> # timeout=10
ERROR: Error fetching remote repo 'origin'
hudson.plugins.git.GitException: Failed to fetch from <url>
at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:735)
at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:983)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1016)
at hudson.scm.SCM.checkout(SCM.java:484)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1270)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:622)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:528)
at hudson.model.Run.execute(Run.java:1759)
at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:529)
at hudson.model.ResourceController.execute(ResourceController.java:89)
at hudson.model.Executor.run(Executor.java:240)
Caused by: hudson.plugins.git.GitException: Command "git config remote.origin.url <url> returned status code 4:
stdout:
stderr: error: failed to write new configuration file .git/config.lock
Я не могу понять причину. Я проверил разрешение и право собственности на домашнюю папку jenkins, которая является /var/lib/jenkins:- drwxrwxrwx 17 jenkins jenkins 4096 25 июня, 04:30 jenkins
Права доступа и владение папкой.git внутри рабочей папки jenkins:- drwxrwxrwx 8 jenkins jenkins 4096 30 июня 21:51 .git
Пожалуйста, помогите мне решить проблему.
11 ответов
Я видел ту же проблему, но дисковое пространство и память виртуальной машины не были проблемой. То, что исправило это для меня, заставляло работу перекодировать на билде:
- Перейти на страницу "Настройка" задания
- В разделе "Управление исходным кодом" → "Git" - "Дополнительные поведения" добавьте поведение "Очистить репозиторий и принудительно клонировать".
- Сохранить
- строить
Это произошло, когда на виртуальной машине Jenkins не хватило места на диске. Вычистил, больше не вижу этой проблемы.
В моем случае загрузка / загрузка удаленного кода была довольно медленной и была прервана из-за тайм-аута. Поэтому я увеличил "Время ожидания (в минутах) для операций клонирования и извлечения" до 20 минут.
В моем случае обнаружил, что член моей команды по инфраструктуре изменил владельца рабочего пространства. После смены владельца папки (в моем случае это jenkins:apache) начинает работать.
Спасибо и С уважением Джайсвар Випин Кумар Р.
Я исправил проблему с очисткой каждого каталога git, хранящегося в /var/lib/jenkins/caches:
ls
git-18890751adbbb4acf793765536038794 git-4e3aa803edee6bea2129fd817c36f896 git-9f242af77f8053aed6fedce8d0a76e3d git-e41ee04648298b79b4c7743c24ef70bd git-fceab3b3b569be214a737dca642e9276
git-18890751adbbb4acf793765536038794@tmp git-4e3aa803edee6bea2129fd817c36f896@tmp git-9f242af77f8053aed6fedce8d0a76e3d@tmp git-e41ee04648298b79b4c7743c24ef70bd@tmp git-fceab3b3b569be214a737dca642e9276@tmp
git-3733802e4022f95fbc60b4cb18a03217 git-551e81c26de5bcb6a5378e19af1e1be6 git-abf9e4e7e290be76e1f5b71ec660963e git-e707f9321b2bb37b96406ef713030927
git-3733802e4022f95fbc60b4cb18a03217@tmp git-551e81c26de5bcb6a5378e19af1e1be6@tmp git-abf9e4e7e290be76e1f5b71ec660963e@tmp git-e707f9321b2bb37b96406ef713030927@tmp
git-383d5f162d992a4ab05c37bf92f5a6a6 git-778102e2deb4f6ba3addd2a6598b243c git-c0a299dd0e54280fdc284e0f84116c25 git-ee5e64ec787f47fcbc3d1fb72b7f3431
git-383d5f162d992a4ab05c37bf92f5a6a6@tmp git-778102e2deb4f6ba3addd2a6598b243c@tmp git-c0a299dd0e54280fdc284e0f84116c25@tmp git-ee5e64ec787f47fcbc3d1fb72b7f3431@tmp
sh-4.2$ rm -rf git*
Мы удалили ветви из gitlab, но ведомые не были обновлены, поэтому мы увидели эту ошибку. Мы удалили рабочую область, и она выглядит нормально
Я решил эту ошибку, установив для параметров контроля учетных записей пользователя значение "Никогда не уведомлять", перезапустив компьютер и повторно подключив узел к Jenkins.
При использовании jenkins. Просто wipeout и force clone должны это сделать. у меня тоже была эта проблема раньше.
Сделать его доступным в любое время. Пожалуйста, увеличьте также тайм-аут. это действительно помогает.
В моем случае я просто переименовал baseDir в агенте Jenkins, с которым синхронизировался мой код сценария конвейера. Итак, я фактически удалил каталог. После этого эта работа пошла совершенно нормально.
Итак, я предполагаю, что есть проблема с правами доступа, но на самом деле я не вижу ее, когда сравниваю переименованный каталог с тем, который автоматически заменил его.
Ниже упомянутые шаги, которые я выполнил
- Удалить временные файлы
- Удалить все файлы из папки «jenkins\workspace».
- Запустите сборку.