2016-09-21 158 views
1

好吧,所以我花了几年时间试图设置这个jenkins服务器,并且到处都有错误。 大多数的答案都是针对linux的,这个jenkins服务器在windows上(如果你知道如何在linux jenkins im all上设置msbuild)。Jenkins无法连接到存储库:命令返回状态码128:

服务器的设置完全按照它应该做的那样,我正在做的最后一件超级超级基本的事情是试图从aws codecommit中提取回购,我拥有合适的角色和凭证。

我得到这个消息

Jenkins Failed to connect to repository : 
"git.exe ls-remote -h https://repo-url HEAD" Command returned status code 128: 

它接着说

stderr: fatal: unable to access 'https://repo-url': The requested URL returned error: 403 

然而过去相同的命令复制到一个cmd窗口,它工作得很好。

有一个名为codecommit-url-helper的插件,它也被安装和试用,它所做的一切都是对我的希望和梦想的巨大蹲下。

如果你的解决方案涉及詹金斯CLI,才知道我也试过了,但是:

C:\Users\Administrator\Downloads> java -jar jenkins-cli.jar -s http://localhost:8080/ help 
Sep 21, 2016 2:14:33 PM hudson.remoting.SynchronousCommandTransport$ReaderThread run 
SEVERE: I/O error in channel Chunked connection to http://localhost:8080/cli 

有人请帮我把泪擦干......

回答

0

对于那些想知道我最后做两件事情,使用git config --system来配置角色的凭证,然后我在jenkins系统设置下的“Git插件”中添加了全局用户名和电子邮件,其中之一就是它。

0

使用SSH密钥很好。 SSH密钥是识别可信计算机而不涉及密码的一种方法。您可以生成SSH密钥并将公钥添加到您的GitHub帐户。请查询How to Generate SSH in Github了解更多详情

0

RejeeshChandran的答案是解决问题的好提示。把它做已经执行实际步骤:

1)生成新的SSH密钥并使用here

2)重新启动詹金斯服务

3)git.exe ls-remote -h https://repo-url HEAD命令提供指令将它添加到的ssh-agent现在在Jenkins工作正常

0

另一种选择是利用IAM用户及其Codecommit https凭证。

所以,你可以再加入这些凭据詹金斯。在詹金斯的工作中,您可以将其设置为在从回购中退房时使用。

请记住,应该控制IAM权限。您可以简单地允许该IAM用户完全访问Codecommit。

也可以在编写Jenkins管道时使用这些凭证。

希望这会有所帮助。

相关问题