2017-04-11 7 views
0

Ich arbeite mit einem privaten Repository von meiner Organisation und dem Deploy key Ansatz für die Authentifizierung. Thistutorials für die Bereitstellung der Schlüsselkonfiguration sind ziemlich einfach. Es gibt nur eine Verwirrung, die ich habe. Die Slave-Instanzen don't actually have jenkins installed, so ist es nicht möglich, sich im Slave als sudo -u jenkins einzuloggen. Auf der anderen Seite läuft der Job nicht wirklich auf dem Master, sondern auf der Slave-Instanz, so dass der Bereitstellungsschlüssel ein öffentlicher Schlüssel sein müsste, der vom Slave generiert wird. Aber dann, wenn ich versuche, den Job in den Jenkins-Server einzurichten, heißt es Host key verification failed Ich rate, weil es den Schlüssel vom Master-Server nicht erkennt.Github deploy Schlüssel auf Jenkins Master/Slave-Architektur

Was fehlt mir? Ich bin so verwirrt.

enter image description here

EDIT:

Ich dachte, vielleicht der Meister nicht erkennen, dass der Slave die einen laufenden Job sein würde und gibt den Fehler, da versucht, von seinen eigenen zu authentifizieren Öffentlicher Schlüssel. Also habe ich beschlossen, den Job trotzdem zu machen. Und jetzt bin ich noch verwirrter ... der Job läuft erfolgreich, aber gibt immer noch eine timeout (ich weiß nicht, ob es verwandt ist oder nicht, immer noch suchend). Irgendwelche Gedanken?

Started by user User 
Building remotely on android-slave (android) in workspace /home/ubuntu/workspace/android-repo 
> git rev-parse --is-inside-work-tree # timeout=10 
Fetching changes from the remote Git repository 
> git config remote.origin.url [email protected]:Organization/Repo-Droid.git # timeout=10 
Fetching upstream changes from [email protected]:Organization/Repo-Droid.git 
> git --version # timeout=10 
> git fetch --tags --progress [email protected]:Organization/Repo-Droid.git +refs/heads/*:refs/remotes/origin/* 
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10 
> git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 
Checking out Revision 32e37279cb794b9f8eebbdf5f0d47671eea522c7 (refs/remotes/origin/master) 
> git config core.sparsecheckout # timeout=10 
> git checkout -f 32e37279cb794b9f8eebbdf5f0d47671eea522c7 
> git rev-list 32e37279cb794b9f8eebbdf5f0d47671eea522c7 # timeout=10 
Finished: SUCCESS 

Antwort

0

ich überprüft dies nicht wirklich ein Fehler ist, auch wenn ich immer noch wissen möchte, was diese #timeout=10 ist. Ich überprüfte den Arbeitsbereich Ordner auf der Hauptseite der Jobs und ich sehe das Projekt erfolgreich geklont. Ich fügte auch einen gradle clean Befehl der Jobkonfiguration hinzu, um sicherzustellen, dass es ok kompiliert. Alles sieht gut aus.

HINWEIS: ich noch die Host key verification failed Fehler in der Konfiguration des Projekt erhalten, aber wie ich oben gesagt ist wahrscheinlich, weil der Master-Server versucht, das Repository deploy Schlüssel mit seinem eigenen öffentlichen Schlüssel zu entsprechen, und nicht den öffentlichen Schlüssel des Slave. Wenn ich diesen Fehler ignoriert habe und versucht habe, den Job zu erstellen, wird er erfolgreich ausgeführt, da er so konfiguriert ist, dass er immer auf dem Slave-Computer ausgeführt wird.

Verwandte Themen