webentwicklung-frage-antwort-db.com.de

Jenkins geben Fehler beim Klonen von gitHub aus

Ich bin neu bei Jenkins und erhalte folgende Fehlermeldung beim Klonen des Repositorys aus GitHub.

Ich habe versucht, alle relevanten Probleme hier zu suchen, konnte aber die genaue stacktstrace mit Antworten finden.

Ich versuche, das Repository zu klonen, für das Benutzername und Kennwort erforderlich sind. Ich gebe SSH:// repository-path in den Jobkonfigurationseinstellungen für meinen Job an. Ich habe noch keine .ssh-bezogenen Einstellungen vorgenommen, da dies ein anderes Problem darstellt als das Sicherheitsproblem mit GIT-Repository. 

Ich konnte nicht herausfinden, welchen Kommentar Jenkins auszuführen versucht, welche Datei/Verzeichnis es nicht ratlos findet.

Hier ist meine genaue Stapelverfolgung von Jenkins Job:

Verursacht durch: Java.io.IOException: Programm kann nicht ausgeführt werden: Fehler beim Versuch mit bestimme die git version: Fehler beim Ausführen des Befehls: --version Angenommen 1.6 FEHLER: Fehler beim Klonen des Remote-Repos 'myRE': [email protected] konnte nicht geklont werden: myORG/RVL.myProj.git hudson.plugins.git.GitException: [email protected] konnte nicht geklont werden: myORG/RVL.myProj.git at hudson.plugins.git.GitAPI.clone (GitAPI.Java:268) at hudson.plugins.git.GitSCM $ 2.einmal (GitSCM.Java:1122) at hudson.plugins.git.GitSCM $ 2.einmal (GitSCM.Java:1064) at hudson.FilePath.act (FilePath.Java: 842) at hudson.FilePath.act (FilePath.Java:824) at hudson.plugins.git.GitSCM.checkout (GitSCM.Java:1064) at hudson.model.AbstractProject.checkout (AbstractProject.Java:1256) at hudson.model.AbstractBuild $ AbstractBuildExecution.defaultCheckout (AbstractBuild.Java:589) bei jenkins.scm.SCMCheckoutStrategy.checkout (SCMCheckoutStrategy.Java:88) at hudson.model.AbstractBuild $ AbstractBuildExecution.run (AbstractBuild.Java:494) at hudson.model.Run.execute (Run.Java: 1502) at hudson.maven.MavenModuleSetBuild.run (MavenModuleSetBuild.Java:477) at hudson.model.ResourceController.execute (ResourceController.Java:88) at hudson.model.Executor.run (Executor.Java:236) Verursacht durch: hudson.plugins.git.GitException: Fehler beim Ausführen des Befehls: clone -o RVL.myProj [email protected]: myORG/RVL.myProj.git /var/lib/jenkins/jobs/myProj/workspace at hudson.plugins.git.GitAPI.launchCommandIn (GitAPI.Java:862) at hudson.plugins.git.GitAPI.access $ 000 (GitAPI.Java:40) at hudson.plugins.git.GitAPI $ 1.einmal (GitAPI.Java:264) at hudson.plugins.git.GitAPI $ 1.einmal (GitAPI.Java:244) at hudson.FilePath.act (FilePath.Java: 842) at hudson.FilePath.act (FilePath.Java:824) at hudson.plugins.git.GitAPI.clone (GitAPI.Java:244) ... 13 mehr Verursacht durch: Java.io.IOException: Programm "" kann nicht ausgeführt werden : error = 2, Keine solche Datei oder Verzeichnis at Java.lang.ProcessBuilder.start (unbekannte Quelle) at hudson.Proc $ LocalProc. (Proc.Java:244) at hudson.Proc $ LocalProc. (Proc.Java:216) at hudson.Launcher $ LocalLauncher.launch (Launcher.Java:709) at hudson.Launcher $ ProcStarter.start (Launcher.Java:338) at hudson.Launcher $ ProcStarter.join (Launcher.Java:345) at hudson.plugins.git.GitAPI.launchCommandIn (GitAPI.Java:843) ... 19 mehr Verursacht durch: Java.io.IOException: Fehler = 2, Keine solche Datei oder Verzeichnis at Java.lang.UNIXProcess.forkAndExec (Native Method) at Java.lang.UNIXProcess (unbekannte Quelle) bei Java.lang.Pro

25
Sagar

Ich habe das gleiche Problem gefunden und behoben :)

Es gibt zwei Möglichkeiten, den Pfad von git zu konfigurieren:

  1. Auf Jenkins Master

    ein. Jenkins-Systemkonfiguration eingeben (Jenkins -> Jenkins verwalten -> System konfigurieren)

    b. Finden Sie das Git-Element und konfigurieren Sie die Git-Installation (geben Sie den Git-Pfad auf Jenkins Master an).

  2. Auf Jenkins Slave

    ein. Geben Sie die Konfiguration von Jenkins Slave ein

    b. Aktivieren Sie das Kontrollkästchen "Tool Locations" und geben Sie den Pfad von git auf dem Jenkins Slave an.

In meiner Situation habe ich nicht das Recht, auf den Jenkins Master zuzugreifen. Also installiere ich das Git auf dem Jenkins Slave und füge es zu Jenkins Slave's Configure hinzu. 

48
superlee

Dies scheint ein Fehler zu sein, siehe JENKINS-16523 wo ich eine Problemumgehung veröffentlicht habe.

3
Martin

Ich habe das gleiche Problem durchgemacht.

Ich habe die Mischung der Git-Konfiguration in den einzelnen Jobs "/var/lib/jenkins/jobs/job_name/config.xml" bemerkt:

[[email protected] 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>

Also habe ich den Namen von gitTool festgelegt und die Jenkins neu gestartet. Es sieht so aus, als würde die Git-Konfiguration nicht richtig funktionieren und die Änderung von Git wird nicht auf alle Jobs übertragen.

Beachten Sie auch, dass sich die git-Konfiguration in der .xml-Datei mit der Konfiguration und der Konfiguration in der Weboberfläche des Jenkins unterscheiden kann !!!

2
kayn

Es kann verschiedene Ursachen haben.

  1. Möglicherweise haben Sie git nicht installiert
  2. Jenkins kann die Git-Binärdatei nicht verwenden
  3. Berechtigungsfrage.

Dieses Blog, Jenkins Git Clone Error , erläutert alle Szenarien dieses Fehlers und seine Lösung.

0
Bibin Wilson

Nachdem ich eine neue JOB erstellt hatte, bin ich auf dasselbe Problem gestoßen und habe den Slave-Namen (mit GIT Installed) in Label Expression unter Restrict where this project can be run behoben.

0
Arpit
  1. Führen Sie git --version entweder auf Master oder Slave aus
  2. Wenn Sie nichts erhalten, bedeutet dies, dass Git nicht installiert ist
  3. Wenn Sie der Meinung sind, dass Git installiert ist, fügen Sie der Umgebungsvariable PATH den Pfad der ausführbaren Git-Datei (z. B. C:\Programme\Git\cmd) hinzu
  4. Führen Sie git --version entweder auf Master oder Slave aus und stellen Sie sicher, dass Sie die gültige Version erhalten
0
Ritesh

Mit Ausnahme des von superlee beantworteten Schrittes benötigen Sie die Konfiguration Ihrer Knoteneigenschaften für Ihre Serverseite und die Werkzeugspeicherorte, falls es sich bei Ihrem lokalen System um ein Windows-System handelt. Siehe Abbildung unten:

Werkzeugstandort für Ihre Serverseite

0
Hailin Tan