4

我已经在 J​​enkins 上安装了 Gerrit Trigger 插件,因为当团队中的开发人员在存储库中推送某些内容(相对于特定项目)时,我需要自动开始构建。我按照这里的设置:

https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger

测试连接正常。无论如何,当某物被推动时,建筑物不会“触发”。我唯一能看到的是:

在“管理 Jenkins”下 -> 与 Gerrit 的连接已断开!检查您的设置和 Gerrit 服务器。

任何想法?

谢谢

随机化

顺便说一句,我得到了这个:

顺便说一句,我得到了这个:命令“git fetch -t git@github.com:somewhere/MyProject.git $GERRIT_REFSPEC”返回状态代码 128:致命:找不到远程参考 $GERRIT_REFSPEC 致命:远程端意外挂断

 ERROR: Could not fetch from any repository
 FATAL: Could not fetch from any repository
 hudson.plugins.git.GitException: Could not fetch from any repository
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1008)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:968)
at hudson.FilePath.act(FilePath.java:758)
at hudson.FilePath.act(FilePath.java:740)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:968)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1184)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:537)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:425)
at hudson.model.Run.run(Run.java:1376)
4

4 回答 4

3

Gerrit 插件页面上描述了一个技巧:

通常,当您将作业配置为由 Gerrit 触发时,您将无法再使用“立即构建”链接,因为您的构建依赖于来自 Gerrit 的信息,尤其是当您使用 Git 插件检查工作区中的代码时。

例如,如果您想在某个时候使用相同的作业来构建主分支,则可以绕过此限制。如果您使用的是 Git 插件,请执行以下操作

GERRIT_REFSPEC添加一个使用默认值调用的字符串参数refs/heads/master

使用这个技巧将使您能够构建,但不会向 Gerrit 发送任何结果,因为 tit 不是由它触发的。

于 2012-07-18T10:04:06.233 回答
0

这不适用于 Gerrit 触发器,因为没有设置变量 $GERRIT_REFSPEC。如果你想从 Gerrit 手动触发变更集,你必须使用“Query and Trigger Gerrit Patches”。在那里,您可以在 Gerrit 中搜索未完成的更改并构建它们。

您还应该注意到,只有在您将更改推送到 Gerrit 中的审查分支(例如 refs/for/ 引用)时,才会触发构建。如果您直接推送到分支(例如 refs/heads/master),因为您不想进行代码审查,Gerrit 触发器不起作用。您将不得不使用 Gerrit 钩子之一,它调用一个 URL 来启动构建或让构建作业轮询您的 Git 存储库。

于 2011-09-28T13:54:31.093 回答
0

在我们的例子中,我们不得不重新启动 jenkins 服务。这看起来是 gerrit 触发器插件的错误(我们在 2.27.5 上)

于 2021-04-10T17:04:38.363 回答
-1

您需要从 jenkin>> gerrit trigger > 单击状态图标启动 gerrit 服务器。

于 2016-03-23T12:02:32.650 回答