我在Github / Jenkins遇到的身份验证问题上需要一些帮助。
设置如下: 詹金斯大师在窗户上 Slave正在OSX上运行 詹金斯可以与奴隶进行良好沟通
当我们尝试从我们的私有git repo中提取时,我们看到以下错误,这个错误不在主服务器或其他Linux从服务器和OSX终端中的克隆上。
Started by user xxxxxxxxxxxx
[EnvInject] - Loading node environment variables.
Building remotely on MAC01 in workspace /var/jenkins/workspace/xxxxxxxxxxxx
Checkout:NativeiOSSlots / /var/jenkins/workspace/xxxxxxxxxxxxx - hudson.remoting.Channel@166d8eb:MAC01
Using strategy: Default
Last Built Revision: Revision 7232678c31bf2c6f3c4bd5a66b349edf9288440c (origin/HEAD, origin/master)
Cloning the remote Git repository
Cloning repository <repo url>
git --version
git version 1.8.3.1
ERROR: Error cloning remote repo 'origin' : Could not clone <repo url>
hudson.plugins.git.GitException: Could not clone <repo url>
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:226)
at org.jenkinsci.plugins.gitclient.AbstractGitAPIImpl.clone(AbstractGitAPIImpl.java:57)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.clone(CliGitAPIImpl.java:33)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1012)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:948)
at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2387)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
Caused by: hudson.plugins.git.GitException: Command "/Applications/GitHub.app/Contents/Resources/git/bin/git clone --progress -o origin <repo url> /var/jenkins/workspace/xxxxxxxxxx" returned status code 128:
stdout: Cloning into '/var/jenkins/workspace/xxxxxxxxxx'...
stderr: remote: Repository not found.
fatal: Authentication failed for '<repo url>'
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:790)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$100(CliGitAPIImpl.java:33)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:224)
... 14 more
任何想法?
答案 0 :(得分:2)
我遇到了同样的问题。 Jenkin无法将我的git repo克隆到本地PC。
解决方案:
这些步骤解决了我的问题,因为我已经在那里提供了我的企业登录名和密码。
答案 1 :(得分:0)
很可能Jenkins从站在Mac上运行的用户没有正确设置github(没有正确的证书)。在我的Mac奴隶上,用户名为jenkins。以root用户身份登录,看看是否可以:
ssh -T git@github.com
如果不起作用,请确保安装了正确的证书,并且机器可以看到外面的世界。
答案 2 :(得分:-1)
以运行jenkins的用户身份运行时,它是否真的从终端克隆?
您可能没有正确设置SSH访问权限。请参阅:Could not clone repository
答案 3 :(得分:-1)
我也遇到过这个问题。我最终不得不将我的Git客户端插件降级到1.6.4。当我运行1.8.0时,我试图克隆的每个repo都出现此错误。一旦我回滚,它就开始起作用了。