Acabo de configurar mi primer esclavo Jenkins. Ejecuto la compilación, y toco problemas con las claves SSH. El servidor maestro de Jenkins se ejecuta bajo el usuario 'jenkins'. Configuré las claves SSH de manera que puedo SSH desde el maestro hasta el esclavo sin una contraseña.Jenkins - No se puede clonar desde el nodo esclavo. Claves SSH
p. Ej. Desde el maestro:
[email protected]:~$ ssh slave
Last login: Tue Apr 17 10:30:22 2012 from masterjenkins.com
$ whoami
jenkins
Así que eso demuestra que el nodo esclavo también se está ejecutando bajo el usuario 'jenkins'. (He copiado la clave pública ssh del jenkins @ slave al servidor git remoto). Y estoy en condiciones de emitir el clon de git manualmente desde el esclavo, pero cuando inicio a la construcción del maestro consigo este tipo de mensajes:
ERROR: Error cloning remote repo 'origin' : Could not clone [email protected]:abc
hudson.plugins.git.GitException: Could not clone [email protected]:abc
Caused by: hudson.plugins.git.GitException: Error performing command: git clone --progress -o origin [email protected]:abc /var/lib/jenkins/workspace/abc_build
Command "git clone --progress -o origin [email protected]:abc /var/lib/jenkins/workspace/abc_build" returned status code 128: Initialized empty Git repository in /var/lib/jenkins/workspace/abc_build/.git/
Host key verification failed.
fatal: The remote end hung up unexpectedly
Caused by: hudson.plugins.git.GitException: Command "git clone --progress -o origin [email protected]:abc /var/lib/jenkins/workspace/abc_build" returned status code 128: Initialized empty Git repository in /var/lib/jenkins/workspace/abc_build/.git/
Host key verification failed.
fatal: The remote end hung up unexpectedly
Trying next repository
ERROR: Could not clone repository
FATAL: Could not clone
por lo que todavía está dando a entender que mis claves SSH no se establecen arriba correctamente ¿Alguien puede decirme qué claves necesito copiar dónde?
Muchas gracias, ns
También la verificación de la clave del host falló y parece indicar que su usuario de Jenkins nunca ha entrado en ese servidor y no ha aceptado la clave de host, intente realizar una llamada desde la CLI como usuario de jenkins para asegurarse de que funciona y acepte la clave de host. – Doon
@Doon Esto podría terminar siendo el problema. Originalmente pensé que intentabas huir de la misma máquina que Jenkins intenta clonar. –
¡Tiene el bastardo! Gracias por todas sus aportaciones. He copiado y pegado el comando que jenkins intentaba ejecutar en el esclavo: git clone --progreso -o origen git @ host: abc/var/lib/jenkins/workspace/abc y resultó que tenía algunas claves ofensivas en /root/.ssh/known_hosts ¡Después de eliminarlos y conectarse al git repo una vez más, funcionó! – nonshatter