У меня есть эта команда в верхней части моего файла конвейера, и моя сборка сразу не удалась в Jenkins при попытке ее решить:
@Library('MyLibrary') _
pipeline{
...
У меня также есть эта настройка библиотеки в моем глобальном конфиге jenkins. Трипл проверил это.
Журнал Дженкинса находится ниже ... в интернете написано, что это происходит, когда git.exe неправильно настроен или не найден. У нас на 100% проверено, git установлен на всех рабах. Тем не менее, я подозреваю, что этот сбойный git-клон работает где-то еще, поскольку конвейер еще официально не запущен (мы не видим RUNNING ON: бла в журнале).
Итак ... на мастере? У нас мастер установлен на 0 исполнителей, и git там не установлен.
Эта проблема решается так же легко, как и установка git на мастер? Или есть какое-то другое волшебное место, где эти @Library включают в себя клонирование?
Вот вывод журнала Дженкинса, имена которого изменены для защиты невинных:
Started by user Me
15:28:23 Connecting to my github url
Obtained Jenkinsfile from blah
Running in Durability level: MAX_SURVIVABILITY
Loading library MyLibrary@master
Examining <my github repo>
Attempting to resolve master as a branch
Resolved master as branch master at revision blah
No credentials specified
Cloning the remote Git repository
Cloning with configured refspecs honoured and without tags
Cloning repository <my repo url>.git
> git init /home/afolder/jenkins/workspace/<git repo name>@libs/MyLibrary # timeout=10
ERROR: Error cloning remote repo 'origin'
hudson.plugins.git.GitException: Could not init /home/afolder/jenkins/workspace/<git repo name>@libs/MyLibrary
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$5.execute(CliGitAPIImpl.java:813)
...
Caused by: java.io.IOException: Cannot run program "git" (in directory
"/home/afolder/jenkins/workspace/<git repo name>@libs/MyLibrary"):
error=2, No such file or directory