2013-03-16 17 views
5

Vorrei utilizzare Jenkins con un repository su Bitbucket. Per questo, ho creato una chiave ssh con l'utente jenkins e il comando ssh-keygen -t rsa -C "my_email". Ho aggiunto la chiave pubblica su Bitbucket e posso clonare un progetto con git clone ....Autenticazione con Jenkins e Git

Ma quando ho configurare il progetto di Jenkins, ho messo l'url [email protected]:my_username/my_repository.git

Ecco l'errore:

Failed to connect to repository : Command "git ls-remote -h [email protected]:skurty/ma-carte-augmentee-bo.git HEAD" returned status code 128: 

stdout: 

stderr: ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory 
Permission denied (publickey). 
fatal: The remote end hung up unexpectedly 

Se lo faccio ssh [email protected], ottengo:

PTY allocation request failed on channel 0 
conq: logged in as my_username. 

You can use git or hg to connect to Bitbucket. Shell access is disabled. 
Connection to bitbucket.org closed. 

Ho anche provato a creare il file ~/.ssh/authorized_keys e inserire la chiave pubblica, ma lo stesso problema.

I Jenkins anche rinnovate con sudo /etc/init.d/jenkins restart

Grazie per il vostro aiuto :)

PS: Sono su una Debian Squeeze 64 bit

risposta

0

È il id_rsa o qualunque sia la chiave privata viene chiamato , nella directory home dell'utente jenkins?

Se è stato installato con un pacchetto nativo, il file deve essere posizionato in /var/lib/jenkins/.ssh e le autorizzazioni per /var/lib/jenkins/.ssh dovrebbe essere 700 mentre i permessi di /var/lib/jenkins/.ssh/id_rsa dovrebbero essere 600

+0

Sì, ho creato la chiave con le Jenkins utente in/home/Jenkins /.ssh e id_rsa si trova in /var/lib/jenkins/.ssh (con authorized_hosts ...). I diritti sulla cartella e sul file sono ok. – skurty

0

Potrebbe essere necessario aggiungere la chiave SSH sul vostro BitBucket conto anche in Manage_Account >> SSH_Keys >> Aggiungi chiave

Tuttavia, se si trovano ancora ad affrontare qualsiasi problema: provare il tutorial passo passo a:

http://777chmod.wordpress.com/2013/07/28/jenkins/

http://777chmod.wordpress.com/2013/08/01/ssh/

+0

Grazie per aver postato la tua risposta! Si prega di notare che è necessario inserire le parti essenziali della risposta qui, su questo sito, o il tuo post rischia di essere cancellato [Vedi le FAQ dove si parla di risposte che sono 'a mala pena più di un link'.] (Http: // StackOverflow. com/faq # eliminazione) È possibile includere il collegamento, se lo si desidera, ma solo come "riferimento". La risposta dovrebbe essere autonoma senza bisogno del collegamento. – Taryn

3

L'unico modo che ho trovato per farlo funzionare stava rimuovendo la passphrase dalle mie chiavi SSH. Immagino che il plugin git di Jenkins abbia avuto problemi a fornire la passphrase, anche quando l'ho impostato nella sezione avanzata del plugin Credentials.

$ ssh-keygen -p

fornire la posizione della vostra chiave privata, digitare la propria password corrente e lasciare il nuovo vuota.

+0

Hai ragione, ho visto che su una documentazione Jenkins NON riesce a usare i passphrase sulle chiavi – aorfevre

3

I problemi deriva dal fatto che non hai mai effettuato l'accesso con l'utente JENKINS su GIT

Pertanto, si dovrebbe effettuare le seguenti operazioni:

log in macchina JENKINS: accesso

sudo su jenkins 
ssh [email protected] 

validate .

Ora si dovrebbe essere in grado di eseguire Jenkins costruire con git

Problemi correlati