背景

我们采用jenkins2(2.32.3)应用pipeline流水线,会出现CI任务运行的分支版本错误的问题,gerrit触发的评审代码和CI实际跑的是两码事。

问题原因

在pipeline流水线中,你可以查看Parameters是对的(Gerrit事件传递过来的参数),但是,Git Build Data却拉错分支!
这个问题的原因是,Gerrit的HEAD存在多个,CI任务里的GIT选择HEAD时,具有随机行为,导致GIT checkout出来的,并不是gerrit触发的代码。

解决方法

如下图右下角的进行配置:
Additional Behaviors -> Strategy for Choosing What to build -> Gerrit Trigger

jenkins使用Gerrit,错误checkout分支版本的解决方法

(感谢http://stackoverflow.com/questions/11121799/jenkins-doesnt-fetch-the-correct-gerrit-branch

最后的疑问

这个问题应该是很普遍的问题,为什么感觉大家的配置里,都没有提到这个呢?

附录

最权威的资料就是官方资料
https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger

相关文章:

  • 2021-08-31
  • 2022-12-23
  • 2021-05-04
  • 2021-11-17
  • 2022-12-23
  • 2021-12-22
  • 2021-07-11
猜你喜欢
  • 2021-04-26
  • 2021-10-01
  • 2021-11-01
  • 2021-08-24
  • 2022-12-23
  • 2021-11-08
  • 2022-01-23
相关资源
相似解决方案