Error de authentication al configurar a Jenkins para trabajar con el repository de Git Bitbucket

Estoy tratando de configurar a Jenkins en un entorno de Windows 7 para que trabaje con el repository de Git en Bitbucket, pero cuando bash hacer una compilation, obtengo el siguiente error.

Esta es la URL del repository que estoy usando:

https://<MY_ID>:<MY_PASSWORD>@bitbucket.org/<MY_ID>/<MY_REPO_NAME>.git 

No estoy seguro de si necesito generar keys para Jenkins-Bitbucket; en caso afirmativo, ¿puede alguien dar instrucciones detalladas sobre cómo hacerlo en Windows?

 Started by user anonymous Building in workspace C:\Users\<MY_NAME>\.jenkins\workspace\<MY_PROJECT> Fetching changes from the remote Git repository Fetching upstream changes from https://<MY_ID>@bitbucket.org/<MY_ID>/<MY_REPO_NAME>.git FATAL: Failed to fetch from https://<MY_ID>@bitbucket.org/<MY_ID>/<MY_REPO_NAME>.git hudson.plugins.git.GitException: Failed to fetch from https://<MY_ID>@bitbucket.org/<MY_ID>/<MY_REPO_NAME>.git at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:612) at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:836) at hudson.plugins.git.GitSCM.checkout(GitSCM.java:861) at hudson.model.AbstractProject.checkout(AbstractProject.java:1414) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:652) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:561) at hudson.model.Run.execute(Run.java:1678) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:231) Caused by: hudson.plugins.git.GitException: Command "git fetch --tags --progress https://<MY_ID>@bitbucket.org/<MY_ID>/<MY_REPO_NAME>.git +refs/heads/*:refs/remotes/<MY_ID>/*" returned status code 128: stdout: stderr: fatal: Authentication failed for 'https://<MY_ID>@bitbucket.org/<MY_ID>/<MY_REPO_NAME>.git/' at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1098) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCnetworkingentials(CliGitAPIImpl.java:984) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$200(CliGitAPIImpl.java:68) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:217) at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.fetch(CliGitAPIImpl.java:223) at hudson.plugins.git.GitAPI.fetch(GitAPI.java:229) at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:610) ... 10 more 

OK, esto es lo que funcionó para mí, pero primero, mi configuration fue la siguiente:

  1. Windows 7
  2. Jenkins (con el plugin de Git)
  3. Git
  4. Cuenta en Bitbucket

Empecé siguiendo este tutorial . Funciona en Windows, todo lo que tiene que hacer es hacer doble clic en "Git Bash" en "C: \ Archivos de progtwig (x86) \ Git" y seguir las instrucciones para generar keys ssh. Solo tuve que hacer el Paso 2 y el Paso 3.

NOTA: ¡Genere keys sin una frase de contraseña! Esta era la única forma en que podía hacerlo funcionar …

A continuación, abra el file de key pública "id_rsa.pub" que se generó en "C: \ Users \ YOUR_WINDOWS_USER_NAME \ .ssh" con un editor de text y copie el contenido. Una vez que tenga la key pública, debe registrarla en Bitbucket, vaya a "Administrar count" -> "Teclas SSH" -> "Agregar key". Pega tu key pública y guárdala.

Para probar las keys, ejecuté este command:

 $ ssh -T git@bitbucket.org logged in as <USER_ID>. You can use git or hg to connect to Bitbucket. Shell access is disabled. 

Ahora necesita registrar su key privada con Jenkins: vaya a "Cnetworkingenciales" -> "Cnetworkingenciales globales" -> "Agregar cnetworkingenciales", ingrese su Nombre de usuario, Descripción (opcional), select "De un file en Jenkins maestro" e ingrese C: \ Users \ YOUR_WINDOWS_USER_NAME \ .ssh \ id_rsa.

El último paso es configurar el trabajo de Jenkins. En "Gestión de código fuente", select "Git", debajo de "URL del depósito", ingrese:

 git@bitbucket.org:<USER_ID>/<REPO_NAME>.git 

En "Cnetworkingenciales", select la cnetworkingencial que acaba de crear.

NOTA: asegúrese de que cuando vaya a "Administrar Jenkins" -> "Configurar sistema" -> "Git", "Archivo ejecutable de Path to Git" esté configurado como "C: \ Archivos de progtwig (x86) \ Git \ cmd \ git.exe ".

Siguiendo estos pasos, pude sacar mi código del repository.

No estoy seguro de si necesito generar keys para Jenkins-Bitbucket

¿Llaves? Como en "ssh keys"? Ciertamente no si está usando una URL https (como en esta pregunta ). El inicio de session y la contraseña deberían ser suficientes.

Revise su nombre de usuario / contraseña y url: distingue entre mayúsculas y minúsculas.

Asegúrese de que su contraseña no tenga ningún carácter especial (que necesitaría codificar porcentualmente , como en este caso ).


Para usar una url ssh, puede seguir " Usar el protocolo SSH con Bitbucket " (después de configurar ssh ).
Asegúrese de modificar la URL de su repository git en su configuration de trabajo de Jenkins a:

 git@bitbucket.org:accountname/reponame.git # or ssh://git@bitbucket.org/accountname/reponame.git 

Pero asegúrese de que Jenkins se ejecute como el usuario donde se almacenan las keys ssh: consulte " Jenkins encuentra que no puede encontrar la key ssh " y esta cadena BitBucket . ( Verifique también su firewall )