Venta de Berkshelf de libro de cocina en el repository de Bitbucket privado

Me estoy tirando de pelos tratando de que Berkshelf descargue un libro de cocina de la compañía de nuestro repository privado BitBucket (git). Esto está en un host de Windows 8.1.

Encontré esta pregunta y he intentado lo que se describió en la respuesta. También jugué con las instrucciones que Atlassian aconseja aquí y especialmente en su página sobre ssh para múltiples identidades .

  • He generado una key pública con Puttygen y la he agregado como key de implementación para el repository Bitbucket.
  • C:\Users\MyUser\.ssh\mykey.ppk la key privada en C:\Users\MyUser\.ssh\mykey.ppk .
  • C:\Users\MyUser\.ssh\config con los siguientes contenidos:

    Host mycompany HostName bitbucket.org IdentityFile ~/.ssh/mykey.ppk

  • Intento include el libro de cocina en berksfile así:

    cookbook 'mycookbook', git: "git@mycompany:myteam/mycookbook.git", protocol: :ssh

Cuando ejecuto $ berks install -d obtengo:

 Fetching 'mycookbook' from git@mycompany:myteam/mycookbook.git (at master) Enter passphrase for key '/c/Users/MyUser/.ssh/mykey.ppk': Git error: command `git clone git@mycompany:myteam/mycookbook.git "C:/Users/MyUser/.berkshelf/.cache/git/6d5b957656d1bda26bf05aea558176c86db263f2" --bare --no -hardlinks` failed. If this error persists, try removing the cache directory at 'C:/Users/MyUser/.berkshelf/.cache/git/6d5b957656d1bda26bf05aea558176c86db263f2'.Output from the command: Cloning into bare repository 'C:/Users/MyUser/.berkshelf/.cache/git/6d5b957656d1bda26bf05aea558176c86db263f2'... Permission denied (publickey). fatal: Could not read from remote repository. 

¿Alguna idea de por qué esto no está funcionando?

¿Tengo que replace 'git' en frente del @ con mi nombre de usuario?

Además, tenga en count que me pide la frase de paso de la ppk, que acabo de confirmar con 'enter' como lo dejé en blanco. ¿Pero no debería simplemente leerlo sin pedirlo?

Aquí hay un par de sugerencias:

  • Asegúrese de que la variable de entorno HOME esté configurada en C:\Users\MyUser cuando esté ejecutando el command berks .
  • Use una ruta completa para la key privada

     Host mycompany HostName bitbucket.org IdentityFile /C/User/MyUser/.ssh/mykey.ppk 
  • intente y use las teclas rsa en lugar de las keys privadas de masilla (ppk)

     ssh-keygen -t rsa 

( id_rsa reference a la key privada en IdentityFile : id_rsa , agregue la pública al repository BitBucket)

El OP phpphil confirma en los comentarios :

Resultó que el último punto lo solucionó: utilicé la interfaz de usuario Puttygen para exportar la key Conversions -> Export OpenSSH key como mykey.pub , luego simplemente cambié la configuration a IdentityFile ~/.ssh/mykey.pub .
Funcionó con la ruta relativa también.

Intereting Posts