如何使用 gerrit 触发器插件在 jenkins 中执行变更集的 Jenkinsfile?
How to execute Jenkinsfile with gerrit trigger plugin for changeset in jenkins?
我们在 Jenkins 中使用 gerrit-trigger,构建在推送新的变更集以供审核时触发。
现在我们要介绍管道和使用解决方案Defining a pipeline in scm
因此我们预计当构建被触发时,下面的管道插件可以检查这个 refspec
但是${GERRIT_REFSPEC}
在这里没有作用,它仍然检查master
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
> git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10
Checking out Revision adf5d360582b1b24f088cfa8ac0f0ebf64a57692 (refs/remotes/origin/master)
Commit message: "DO:CI End of summer"
> git config core.sparsecheckout # timeout=10
> git checkout -f adf5d360582b1b24f088cfa8ac0f0ebf64a57692
有什么建议吗?
我认为你需要设置:
Repositories > Refspec = $GERRIT_REFSPEC:$GERRIT_REFSPEC
Branches to build > Branch Specifier = $GERRIT_REFSPEC
重要提示:不要忘记取消选中“轻量级结帐”选项。
取消选中“轻量级结帐”就足够了!!
gerrit-trigger 插件应该提到这一点!
浪费了我半天时间!
或者你可以在 Jenkins 作业中使用。
参考规格:${GERRIT_REFSPEC}
分支说明符:FETCH_HEAD.
我们在 Jenkins 中使用 gerrit-trigger,构建在推送新的变更集以供审核时触发。
现在我们要介绍管道和使用解决方案Defining a pipeline in scm
因此我们预计当构建被触发时,下面的管道插件可以检查这个 refspec
但是${GERRIT_REFSPEC}
在这里没有作用,它仍然检查master
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10 > git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10 Checking out Revision adf5d360582b1b24f088cfa8ac0f0ebf64a57692 (refs/remotes/origin/master) Commit message: "DO:CI End of summer" > git config core.sparsecheckout # timeout=10 > git checkout -f adf5d360582b1b24f088cfa8ac0f0ebf64a57692
有什么建议吗?
我认为你需要设置:
Repositories > Refspec = $GERRIT_REFSPEC:$GERRIT_REFSPEC
Branches to build > Branch Specifier = $GERRIT_REFSPEC
重要提示:不要忘记取消选中“轻量级结帐”选项。
取消选中“轻量级结帐”就足够了!! gerrit-trigger 插件应该提到这一点! 浪费了我半天时间!
或者你可以在 Jenkins 作业中使用。
参考规格:${GERRIT_REFSPEC}
分支说明符:FETCH_HEAD.