Jenkins轮询了错误的分支

4
我已经像这样为管道项目配置了分支:

*/master

然而,根据Git轮询日志:

[poll] refs/heads/ci_test上最新的远程头修订版是: c945253a1f3aed6be113347e37aa3512db43bcf0 - 已被17完成构建。 花费11秒钟没有变化

它总是尝试轮询最初我测试的ci_test。BitBucket webhook也是如此。尽管只有master被配置、应用和保存,但它仅对ci_test分支做出反应。我也尝试重新启动Jenkins,但没有成功。

有什么想法可以调试这个问题吗?

编辑:如果我手动触发构建,它将构建master。无论如何,轮询器仍会轮询ci_test。Wtf?

编辑2:将分支设置为任何(留空)都无法获取任何东西,即使手动获取也是如此。


你尝试重新创建 Webhook 了吗? - biruk1230
你能分享一下你的管道代码吗?这样我就可以帮忙了,或者至少截个屏幕截图? - mbn217
6个回答

4
我成功解决这个问题的方法是:
  • 删除所有与轮询相关的配置 (传送门子句和作业中的轮询配置)
  • 手动运行构建(它应该构建正确的分支)
  • 恢复轮询配置
这些更改后,轮询重新启动并开始查询正确的分支。

在我的情况下,删除并重新添加配置起作用了。 - ormurin
这对我有效,但仅当手动构建成功完成时。如果我在手动构建过程中中止(我偶尔会这样做),问题仍然存在。 - rafaelrezend

1
“解决方案”是转向多分支流水线项目。传统的流水线项目似乎存在多个分支混淆和损坏的问题:

https://issues.jenkins-ci.org/browse/JENKINS-46588

此外,Webhook可能也存在一些问题,但是这种多分支项目类型似乎工作得更好。

1
对我来说问题在于我已将“分支规范”指定为*/*,将其更改为空值即可解决问题,如下所示:(空白表示“任何”)。

可能对于您的情况,您应该将“master”放在*/master的位置。


0

看起来问题出在 BitBucket 的 Webhook 上,而不是 Jenkins 的配置上。可能 webhook 是为 ci_test 分支创建的,现在无法看到 master 分支的更改。


0

0

请确保在流水线部分未启用轻量级检出复选框。

不幸的是,它与Bitbucket Webhook插件不兼容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接