Jenkins donnant une erreur lors du clonage de gitHub

Je suis nouveau à Jenkins, Je reçois une erreur suivante lors du clonage du référentiel à partir de GitHub.

J'ai essayé de rechercher tous les problèmes pertinents ici mais j'ai pu trouver stacktstrace exact avec des réponses.

J'essaie de cloner le référentiel qui nécessite un nom d'utilisateur et un mot de passe, je fournis SSH:// repository-path dans les paramètres de configuration du travail pour mon travail. Je n'ai pas fait tout .SSH paramètres liés encore que cela semble être un problème différent de problème de sécurité avec Git repository.

Je impossible de comprendre quel commentaire Jenkins essaie d'exécuter, quel fichier/répertoire il ne trouve pas désemparé.

Voici ma trace de pile exacte du travail Jenkins:

Causé par: java. io. IOException: impossible D'exécuter le programme: erreur en essayant de déterminer la version git: erreur lors de l'exécution de la commande: -- version En supposant 1.6 Erreur: Erreur de Clonage repo distant 'myRE': impossible de cloner git@github.com:myORG/RVL.myProj.git Hudson.greffon.Git.GitException: Impossible de cloner git@github.com:myORG/RVL.myProj.git à hudson.greffon.Git.GitAPI.clone (GitAPI.java: 268) à hudson.greffon.Git.GitSCM $ 2.invoke (GitSCM.java: 1122) à hudson.greffon.Git.GitSCM $ 2.invoke (GitSCM.java: 1064) à hudson.Chemin d'accès du fichier.loi (FilePath.java: 842) à hudson.Chemin d'accès du fichier.loi (FilePath.java: 824) à hudson.greffon.Git.GitSCM.checkout(GitSCM.java: 1064) à hudson.modèle.AbstractProject.commander (AbstractProject.java: 1256) à Hudson.modèle.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java: 589) chez jenkins.SMC.SCMCheckoutStrategy.commander (SCMCheckoutStrategy.java: 88) à hudson.modèle.AbstractBuild$AbstractBuildExecution.exécuter (AbstractBuild.java: 494) à hudson.modèle.Exécuter.Exécuter (Exécuter.java: 1502) à hudson.maven.MavenModuleSetBuild.exécuter (MavenModuleSetBuild.java: 477) à hudson.modèle.ResourceController.exécuter (ResourceController.java: 88) à Hudson.modèle.Exécuteur.exécuter(exécuteur.java: 236) Causés par: baie d'hudson.greffon.Git.GitException: erreur lors de l'exécution de la commande: clone-o RVL.myProj git@github.com:myORG/RVL.myProj.git /var/lib/jenkins/emplois/myProj/espace de travail à hudson.greffon.Git.GitAPI.launchCommandIn (GitAPI.java: 862) à hudson.greffon.Git.GitAPI.accès $ 000 (GitAPI.java: 40) à hudson.greffon.Git.GitAPI $ 1.invoke (GitAPI.java: 264) à hudson.greffon.Git.GitAPI $ 1.invoke (GitAPI.java: 244) à Hudson.Chemin d'accès du fichier.loi (FilePath.java: 842) à hudson.Chemin d'accès du fichier.loi (FilePath.java: 824) à hudson.greffon.Git.GitAPI.clone (GitAPI.java: 244) ... 13 plus causé par: java. io. IOException: impossible D'exécuter le programme "": error=2, aucun fichier ou répertoire de ce type à java.lang.ProcessBuilder.démarrer (Source inconnue) à hudson.Proc $ LocalProc.(Proc.java: 244) à hudson.Proc $ LocalProc.(Proc.java: 216) à Hudson.Lanceur $ LocalLauncher.lancement du Lanceur.java: 709) à hudson.Lanceur $ ProcStarter.start(Lanceur.java: 338) à hudson.Lanceur $ ProcStarter.join(Lanceur.java: 345) à hudson.greffon.Git.GitAPI.launchCommandIn (GitAPI.java: 843) ... 19 plus Causé par: java. io. IOException: error=2, aucun fichier ou répertoire de ce type à java.lang.UNIXProcess.forkAndExec (méthode Native) à java.lang.UNIXProcess.(Source Inconnue) à java.lang.Pro

24
demandé sur Arpit 2012-08-30 21:13:09

6 réponses

J'ai rencontré et corrigé le même problème:)

Il y a deux façons de configurer le chemin de git:

  1. Sur Jenkins Master

    A. Entrez Jenkins System Configure (Jenkins -> Gérer Jenkins -> Configurer Le Système)

    B. recherchez L'élément Git et configurez l'installation git (spécifiez le chemin git sur Jenkins Master)

  2. Sur Jenkins Esclave

    A. entrez Configure{[1 de L'esclave Jenkins]}

    B. cochez la case" Emplacements des outils " et spécifiez le chemin de git sur L'esclave Jenkins.

Dans Ma situation, je n'ai pas le privilège d'accéder au maître Jenkins. J'installe donc le git sur L'esclave Jenkins et l'ajoute à la configuration de L'esclave Jenkins.

44
répondu superlee 2013-04-18 05:57:34

Cela semble être un bug, voir JENKINS-16523 où j'ai posté une solution de contournement.

3
répondu Martin 2013-01-29 16:48:36

Je suis passé par le même problème.

J'ai remarqué le mélange de configuration git dans les travaux individuels "/var/lib / jenkins/jobs/job_name / config.xml":

[root@jenkins.example.com jobs]# find . -maxdepth 2 -name     config.xml|xargs grep '<gitTool>'
./job1/config.xml:    <gitTool>git</gitTool>
./job2/config.xml:    <gitTool>Default</gitTool>
./job3/config.xml:    <gitTool>git</gitTool>
./job4/config.xml:    <gitTool>Default</gitTool>

J'ai donc fixé le nom de gitTool et redémarré les Jenkins. Il semble que la configuration git ne fonctionne pas correctement et le changement de git n'est pas propagé à tous les travaux.

Sachez également que la configuration git peut différer .fichier xml avec configuration et la configuration en webface du Jenkins!!!

2
répondu kayn 2015-06-11 22:17:18

Je suis tombé sur le même problème après avoir créé un nouveau JOB, l'ai corrigé en corrigeant le nom de l'esclave (avec GIT installé) dans Label Expression sous Restrict where this project can be run.

0
répondu Arpit 2017-03-09 08:39:08
  1. Exécuter {[0] } sur Maître ou esclave
  2. Si vous n'obtenez rien, cela signifie que Git n'est pas installé
  3. Si vous pensez que Git est installé, ajoutez le chemin de l'exécutable Git (par exemple C:\Program fichiers \ Git \ cmd) à la variable d'environnement PATH
  4. Exécuter git --version soit Maître ou Esclave et assurez-vous que vous obtenez la version valide
0
répondu Ritesh 2018-07-12 20:39:00

Sauf pour l'étape répondue par superlee, vous avez besoin de config vos propriétés de noeud pour votre côté serveur, les emplacements D'outil si votre système local est windows, reportez-vous à la capture d'écran ci-dessous:

Emplacement de L'outil Côté Serveur

0
répondu Hailin Tan 2018-09-03 03:25:04