2014-09-02 47 views
0

我有一个jenkins服务器和github插件,每次对repo进行更改时都会触发。 我有私钥和公钥加载到github回购。 作业配置为: 存储库URL [email protected]:xxx/repo.gitJenkins和github

我没有在作业的顶部输入URL。 Jenkins所做的任务之一是: cd/var/www/html/& & git pull origin master 但是,每当我对repo进行更改时,它都不会被触发,我不知道为什么。

当我手动运行构建我得到: [Unit_Test] $/bin/sh的-xe /tmp/hudson1951363618156731736.sh + CD的/ var/www/html等/ +的git拉出身主 错误:库未找到。 致命:无法从远程存储库读取。

请确保您拥有正确的访问权限 并存在存储库。 构建步骤“执行shell”标记作为构建失败 电子邮件被触发:失败 - 任何 发送电子邮件触发:失败 - 任何 发送电子邮件至:[email protected] 成品:未能

+0

我添加了eval'ssh-agent -s' ssh-add /var/lib/jenkins/.ssh/key_rsa似乎已经修复了访问问题,但构建仍然没有在更改时被触发。 – Gabriel 2014-09-02 21:01:38

回答

0

不要只需使用Jenkins作为shell脚本执行程序:

  • 使用Git插件并正确配置它。有了这个,你应该能够拉码
  • 使用GitHub的插件,并检查Build when a change is pushed to GitHub和钩添加到GitHub上的回购使詹金斯得到通知,只要改变推
  • 下点Pre Steps添加Execute shell和准备实际构建的环境
+0

我以前都做过。问题在于投票。我必须确定这一点。它正在工作。目前为止:) – Gabriel 2014-09-03 20:25:46

+0

你不需要使用轮询。如果配置正确,GitHub会在有更新时通知您的Jenkins安装 – xeraa 2014-09-03 20:30:31

+0

嗯,我使用了一个不存在问题的不同测试回购。第二个配置正确,我不得不添加轮询才能使其工作。 – Gabriel 2014-09-03 20:31:27

0

必须使用* * * * *添加轮询才能使其正常工作。

+0

检查每分钟可能有点过多 – xeraa 2014-09-03 20:30:59

+0

应该是什么? – Gabriel 2014-09-03 22:09:00

+1

有没有确定的答案,也许每15分钟? ''H/15 * * * *'' – xeraa 2014-09-03 22:18:23