Size: a a a

2020 October 21

DB

Dmitry Burmistrov in jenkins_ru
давно не интересовался этой темой. но на глаза не попадалось.
источник

mm

myname mylastname in jenkins_ru
Периодически возникает ошибка 128 при  checkout из github. Поделитесь пожалуйста своими решениями этой проблемы.
источник

JR

Jürgen Romins in jenkins_ru
myname mylastname
Периодически возникает ошибка 128 при  checkout из github. Поделитесь пожалуйста своими решениями этой проблемы.
Логи будут?
источник

mm

myname mylastname in jenkins_ru
Jürgen Romins
Логи будут?
Ошибка описана среди issue в Jenkins и пути ее решения тоже указываются различные, но ни один способ не решает пока проблемы (привожу полный текст и ссылки):

hudson.plugins.git.GitException: Command "/usr/bin/git checkout -f XXX" returned status code 128:
stdout: stderr: fatal: reference is not a tree:

LINKS:
https://issues.jenkins-ci.org/browse/JENKINS-46183
https://issues.jenkins-ci.org/browse/JENKINS-45997
источник

JR

Jürgen Romins in jenkins_ru
myname mylastname
Ошибка описана среди issue в Jenkins и пути ее решения тоже указываются различные, но ни один способ не решает пока проблемы (привожу полный текст и ссылки):

hudson.plugins.git.GitException: Command "/usr/bin/git checkout -f XXX" returned status code 128:
stdout: stderr: fatal: reference is not a tree:

LINKS:
https://issues.jenkins-ci.org/browse/JENKINS-46183
https://issues.jenkins-ci.org/browse/JENKINS-45997
а полный лог ошибки?
источник

mm

myname mylastname in jenkins_ru
Jürgen Romins
а полный лог ошибки?
hudson.plugins.git.GitException: Command "git checkout -f e2e9e77016bed68aab01dcde2ace277e90ac8e97" returned status code 128:
stdout:
stderr: fatal: reference is not a tree: e2e9e77016bed68aab01dcde2ace277e90ac8e97

 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:2450)
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$1100(CliGitAPIImpl.java:84)
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$9.execute(CliGitAPIImpl.java:2767)
Also:   hudson.remoting.Channel$CallSiteStackTrace: Remote call to node2
   at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1800)
   at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
   at hudson.remoting.Channel.call(Channel.java:1001)
   at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.execute(RemoteGitImpl.java:146)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:498)
   at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.invoke(RemoteGitImpl.java:132)
   at com.sun.proxy.$Proxy110.execute(Unknown Source)
   at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1347)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:125)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:93)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:80)
   at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
Also:   hudson.AbortException: script returned exit code 2
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.handleExit(DurableTaskStep.java:659)
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.check(DurableTaskStep.java:605)
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.run(DurableTaskStep.java:549)
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
   at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
   at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
Caused: hudson.plugins.git.GitException: Could not checkout e2e9e77016bed68aab01dcde2ace277e90ac8e97
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$9.execute(CliGitAPIImpl.java:2791)
 at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$GitCommandMasterToSlaveCallable.call(RemoteGitImpl.java:161)
 at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$GitCommandMasterToSlaveCallable.call(RemoteGitImpl.java:154)
 at hudson.remoting.UserRequest.perform(UserRequest.java:211)
 at hudson.remoting.UserRequest.perform(UserRequest.java:54)
 at hudson.remoting.Request$2.run(Request.java:375)
 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:73)
 at java.util.concurrent.FutureTask.run(FutureTask.java:266)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 at java.lang.Thread.run(Thread.java:748)
Finished: FAILURE
источник

JR

Jürgen Romins in jenkins_ru
myname mylastname
hudson.plugins.git.GitException: Command "git checkout -f e2e9e77016bed68aab01dcde2ace277e90ac8e97" returned status code 128:
stdout:
stderr: fatal: reference is not a tree: e2e9e77016bed68aab01dcde2ace277e90ac8e97

 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:2450)
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$1100(CliGitAPIImpl.java:84)
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$9.execute(CliGitAPIImpl.java:2767)
Also:   hudson.remoting.Channel$CallSiteStackTrace: Remote call to node2
   at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1800)
   at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
   at hudson.remoting.Channel.call(Channel.java:1001)
   at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.execute(RemoteGitImpl.java:146)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:498)
   at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.invoke(RemoteGitImpl.java:132)
   at com.sun.proxy.$Proxy110.execute(Unknown Source)
   at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1347)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:125)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:93)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:80)
   at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
Also:   hudson.AbortException: script returned exit code 2
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.handleExit(DurableTaskStep.java:659)
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.check(DurableTaskStep.java:605)
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.run(DurableTaskStep.java:549)
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
   at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
   at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
Caused: hudson.plugins.git.GitException: Could not checkout e2e9e77016bed68aab01dcde2ace277e90ac8e97
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$9.execute(CliGitAPIImpl.java:2791)
 at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$GitCommandMasterToSlaveCallable.call(RemoteGitImpl.java:161)
 at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$GitCommandMasterToSlaveCallable.call(RemoteGitImpl.java:154)
 at hudson.remoting.UserRequest.perform(UserRequest.java:211)
 at hudson.remoting.UserRequest.perform(UserRequest.java:54)
 at hudson.remoting.Request$2.run(Request.java:375)
 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:73)
 at java.util.concurrent.FutureTask.run(FutureTask.java:266)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 at java.lang.Thread.run(Thread.java:748)
Finished: FAILURE
для начала добавить в старт дженкинса -Dhudson.plugins.git.GitSCM.verbose=true и посмотреть полный выхлоп гита
источник

JR

Jürgen Romins in jenkins_ru
myname mylastname
hudson.plugins.git.GitException: Command "git checkout -f e2e9e77016bed68aab01dcde2ace277e90ac8e97" returned status code 128:
stdout:
stderr: fatal: reference is not a tree: e2e9e77016bed68aab01dcde2ace277e90ac8e97

 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:2450)
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$1100(CliGitAPIImpl.java:84)
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$9.execute(CliGitAPIImpl.java:2767)
Also:   hudson.remoting.Channel$CallSiteStackTrace: Remote call to node2
   at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1800)
   at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
   at hudson.remoting.Channel.call(Channel.java:1001)
   at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.execute(RemoteGitImpl.java:146)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:498)
   at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler.invoke(RemoteGitImpl.java:132)
   at com.sun.proxy.$Proxy110.execute(Unknown Source)
   at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1347)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:125)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:93)
   at org.jenkinsci.plugins.workflow.steps.scm.SCMStep$StepExecutionImpl.run(SCMStep.java:80)
   at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
Also:   hudson.AbortException: script returned exit code 2
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.handleExit(DurableTaskStep.java:659)
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.check(DurableTaskStep.java:605)
   at org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep$Execution.run(DurableTaskStep.java:549)
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
   at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
   at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
Caused: hudson.plugins.git.GitException: Could not checkout e2e9e77016bed68aab01dcde2ace277e90ac8e97
 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$9.execute(CliGitAPIImpl.java:2791)
 at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$GitCommandMasterToSlaveCallable.call(RemoteGitImpl.java:161)
 at org.jenkinsci.plugins.gitclient.RemoteGitImpl$CommandInvocationHandler$GitCommandMasterToSlaveCallable.call(RemoteGitImpl.java:154)
 at hudson.remoting.UserRequest.perform(UserRequest.java:211)
 at hudson.remoting.UserRequest.perform(UserRequest.java:54)
 at hudson.remoting.Request$2.run(Request.java:375)
 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:73)
 at java.util.concurrent.FutureTask.run(FutureTask.java:266)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 at java.lang.Thread.run(Thread.java:748)
Finished: FAILURE
чекаут просто или джоба для пр? воспроизводиться только для одного репа?
источник

mm

myname mylastname in jenkins_ru
Jürgen Romins
чекаут просто или джоба для пр? воспроизводиться только для одного репа?
Вызов в пайплайне делается этой конструкцией:

checkout ([
 $class: 'GitSCM',
 branches: [[name: '"*/"${params.branch_name}']],
 doGenerateSubmoduleConfigurations: 'false',
 extensions: [[$class: 'CloneOption', depth: 1, noTags: false, reference: '', shallow: true, , timeout: 180]],
 submoduleCfg: [],
 userRemoteConfigs: [[url: 'https://github.com/org/repo.git', credentialsId: 'github-PAT']]])
источник

JR

Jürgen Romins in jenkins_ru
myname mylastname
Вызов в пайплайне делается этой конструкцией:

checkout ([
 $class: 'GitSCM',
 branches: [[name: '"*/"${params.branch_name}']],
 doGenerateSubmoduleConfigurations: 'false',
 extensions: [[$class: 'CloneOption', depth: 1, noTags: false, reference: '', shallow: true, , timeout: 180]],
 submoduleCfg: [],
 userRemoteConfigs: [[url: 'https://github.com/org/repo.git', credentialsId: 'github-PAT']]])
shallow: false поставь) попробуй
источник

mm

myname mylastname in jenkins_ru
Jürgen Romins
shallow: false поставь) попробуй
но он мне нужен.
Также прошу высказаться про целесообразность установки depth: 0 - пишут, что это то же самое, что и depth: 1
источник

JR

Jürgen Romins in jenkins_ru
myname mylastname
но он мне нужен.
Также прошу высказаться про целесообразность установки depth: 0 - пишут, что это то же самое, что и depth: 1
Зачем он тебе нужен?
источник

mm

myname mylastname in jenkins_ru
Jürgen Romins
Зачем он тебе нужен?
Большие репозитории и это экономит время и уменьшает вероятность проблем с сетью.
Есть ли смысл использовать конструкцию checkout scm ?
источник

JR

Jürgen Romins in jenkins_ru
myname mylastname
Большие репозитории и это экономит время и уменьшает вероятность проблем с сетью.
Есть ли смысл использовать конструкцию checkout scm ?
мы используем на репах больше 5 гигов
источник

JR

Jürgen Romins in jenkins_ru
ios репа на 7 гигов с шало
checkout([$class: 'GitSCM', branches: [[name: 'dev']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'CheckoutOption', timeout: 180], [$class: 'CloneOption', depth: 0, noTags: true, reference: '', shallow: true, timeout: 50], [$class: 'CleanBeforeCheckout']], submoduleCfg: [], userRemoteConfigs: [[url: 'ssh://git@git/mobile-ios-app-swift.git']]])
источник

JR

Jürgen Romins in jenkins_ru
но с шало есть смысл когда у тебя репа уже полностью на слейве живет. то есть строки выше это не полный чекаут а докачка
источник

JR

Jürgen Romins in jenkins_ru
Так же шалоу не будет работать для пр билдов
источник

mm

myname mylastname in jenkins_ru
Jürgen Romins
Так же шалоу не будет работать для пр билдов
То есть, правильная логика работы shallow в том, чтобы сделать первый вызов checkout с shallow: false, а последующие checkout в пайплайне с true ?
В этом случае первый вызов не имеет преимуществ перед git ()
источник

JR

Jürgen Romins in jenkins_ru
myname mylastname
То есть, правильная логика работы shallow в том, чтобы сделать первый вызов checkout с shallow: false, а последующие checkout в пайплайне с true ?
В этом случае первый вызов не имеет преимуществ перед git ()
в гите так же будет работать это же функционал гита)
источник

mm

myname mylastname in jenkins_ru
Jürgen Romins
Так же шалоу не будет работать для пр билдов
Что такое "пр билд" ?
Shallow может не работать, но и ошибку не должен вываливать 128-ую.
источник