我正在使用 Jenkins 1.557 来监视 Gerrit 2.8 实例的更改。我正在使用以下插件:
- Git 插件 2.1.0
- Git 客户端插件 1.7.0
- Gerrit 触发器 2.11.1
当我在 Gerrit Trigger 上使用“测试连接”时,它返回成功,所以我知道凭据有效。我使用“高级”按钮下的默认值。
对于我的测试构建类型,我使用的是 git repo,Jenkins 会检查它(我添加了构建后步骤“ls -l”,它会正确显示 repo 内容)。我将构建触发器设置为“gerrit 事件”,对于“gerrit 触发器”,我选择了“检查未审核的补丁集”,并启用了“补丁集已创建”触发器。gerrit 项目设置似乎正确。
我无法通过上传新的更改或更改的新补丁集来触发构建。当我使用“查询并触发 Gerrit 补丁”按钮手动触发构建时,构建会进行,但没有记录任何投票。我显然错过了部分谜题 - 如果我 ssh 进入 gerrit 并执行“流事件”,我就会看到我期望看到的事件。
Jenkins - O'Reilly 的权威指南 - 并没有真正涵盖 Gerrit。我试图避免轮询,因为这个 Jenkins 实例将管理数十个 git 存储库。
调试的下一步是什么?