t.me/atinfo_chat Telegram группа по автоматизации тестирования

Ошибка при сборке проекта на Jenkins ERROR: Error cloning remote repo 'origin'

Теги: #<Tag:0x00007f748b4bb908> #<Tag:0x00007f748b4bb7c8>

Всем привет! Разбираюсь со сборочной машиной на jenkins. При сборке проекта задача падает

17:41:54 Started by user Bezpalko Pavel
17:41:54 Running as Bezpalko Pavel
17:41:54 Building remotely on Build CentOS (centos) in workspace /home/jenkins/workspace/roschat-ms
17:41:54 [WS-CLEANUP] Deleting project workspace...
17:41:54 [WS-CLEANUP] Deferred wipeout is used...
17:41:54 [WS-CLEANUP] Done
17:41:54 No credentials specified
17:41:54 Cloning the remote Git repository
17:41:54 Cloning repository ssh://bezpalko_p@10.10.199.35/opt/git/firelink/managment-system-server
17:41:54  > git init /home/jenkins/workspace/roschat-ms # timeout=10
17:41:54 Fetching upstream changes from ssh://bezpalko_p@10.10.199.35/opt/git/firelink/managment-system-server
17:41:54  > git --version # timeout=10
17:41:54  > git fetch --tags --progress ssh://bezpalko_p@10.10.199.35/opt/git/firelink/managment-system-server +refs/heads/*:refs/remotes/origin/* # timeout=10
17:41:54 ERROR: Error cloning remote repo 'origin'
17:41:54 hudson.plugins.git.GitException: Command "git fetch --tags --progress ssh://bezpalko_p@10.10.199.35/opt/git/firelink/managment-system-server +refs/heads/*:refs/remotes/origin/*" returned status code 128:
17:41:54 stdout: 
17:41:54 stderr: Permission denied, please try again.
17:41:54 Permission denied, please try again.
17:41:54 Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
17:41:54 fatal: Could not read from remote repository.
17:41:54 
17:41:54 Please make sure you have the correct access rights
17:41:54 and the repository exists.
17:41:54 
17:41:54 	at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:2372)
17:41:54 	at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1985)
17:41:54 	at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$500(CliGitAPIImpl.java:80)
17:41:54 	at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:563)
17:41:54 	at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:787)
17:41:54 	at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$GitCommandMasterToSlaveCallable.call(RemoteGitImpl.java:161)
17:41:54 	at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$GitCommandMasterToSlaveCallable.call(RemoteGitImpl.java:154)
17:41:54 	at hudson.remoting.UserRequest.perform(UserRequest.java:212)
17:41:54 	at hudson.remoting.UserRequest.perform(UserRequest.java:54)
17:41:54 	at hudson.remoting.Request$2.run(Request.java:369)
17:41:54 	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
17:41:54 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
17:41:54 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
17:41:54 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
17:41:54 	at java.lang.Thread.run(Thread.java:745)
17:41:54 	Suppressed: hudson.remoting.Channel$CallSiteStackTrace: Remote call to Build CentOS
17:41:54 		at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1743)
17:41:54 		at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
17:41:54 		at hudson.remoting.Channel.call(Channel.java:957)
17:41:54 		at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.execute(RemoteGitImpl.java:146)
17:41:54 		at sun.reflect.GeneratedMethodAccessor960.invoke(Unknown Source)
17:41:54 		at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
17:41:54 		at java.lang.reflect.Method.invoke(Method.java:498)
17:41:54 		at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.invoke(RemoteGitImpl.java:132)
17:41:54 		at com.sun.proxy.$Proxy91.execute(Unknown Source)
17:41:54 		at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1105)
17:41:54 		at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1145)
17:41:54 		at hudson.scm.SCM.checkout(SCM.java:504)
17:41:54 		at hudson.model.AbstractProject.checkout(AbstractProject.java:1209)
17:41:54 		at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:574)
17:41:54 		at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
17:41:54 		at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499)
17:41:54 		at hudson.model.Run.execute(Run.java:1816)
17:41:54 		at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
17:41:54 		at hudson.model.ResourceController.execute(ResourceController.java:97)
17:41:54 		at hudson.model.Executor.run(Executor.java:429)
17:41:54 ERROR: Error cloning remote repo 'origin'
17:41:54 Finished: FAILURE

Настройки задачи

Настройки Node (сама сборочница)

Что-то мне подсказывает, что гит урл должен заканчиваться на .git

1 Симпатия

тут даже в самом логе пишется, что проблема в git, не может выкачать репо
там URL не правильный

Это не обязательно условие

вообще-то написано permission denied, то есть Дженкинсу прав не хватает выкачать репозиторий

Если я всё правильно понимаю, читая логи

  1. Building remotely on Build CentOS (centos) in workspace /home/jenkins/workspace/roschat-ms - определяем, что директория, с которой будет работать Jenkins находится на удалённой машине, которая настроена здесь

2. [WS-CLEANUP] Deleting project workspace... 17:41:54 [WS-CLEANUP] Deferred wipeout is used... 17:41:54 [WS-CLEANUP] Done
Здесь мы удаляем предыдущую сборку

3.git init /home/jenkins/workspace/roschat-ms # timeout=10 - здесь мы создаём новый репозиторий

4.git fetch --tags --progress ssh://bezpalko_p@10.10.199.35/opt/git/firelink/managment-system-server +refs/heads/:refs/remotes/origin/ # timeout=10 - и наконец фиаско(

НО, если я пытаюсь проделать всё тоже самое из дженкинса вручную, то ошибок не возникает

jenkins@3c1e2cd587c6:/$ ssh root@10.10.199.105 rm -rf /home/jenkins/workspace/roschat-ms
jenkins@3c1e2cd587c6:/$ ssh root@10.10.199.105 git init /home/jenkins/workspace/roschat-ms # timeout=10
Initialized empty Git repository in /home/jenkins/workspace/roschat-ms/.git/
jenkins@3c1e2cd587c6:/$ ssh root@10.10.199.105 git fetch --tags --progress ssh://bezpalko_p:123456@10.10.199.35/opt/git/firelink/managment-system-server +refs/heads/*:refs/remotes/origin/* # timeout=10
jenkins@3c1e2cd587c6:/$ echo $?
0

Возникаем закономерный вопрос, что делаю не так?

разница вроде есть

Дело совсем не в этом оказалось. Оказалось нужно было другого пользователя выбирать для работы с репозиторием

Как говорится, разница очевидна)

если честно, вы с какими-то детскими ошибками на форум приходите

явно же было написано, что прав дженкинсу не хватает, чтобы выкачивать репозиторий

дайте ему эти права, а не давайте свои учетные данные