Jenkins 配置

5

我有一个GIT仓库。当我把GIT的更改推送到Gerrit时,会触发Jenkins构建,如果成功,就会将代码合并到GIT仓库中。

但是,Jenkins总是从GIT仓库中构建源代码。它没有选择从Gerrit推送的更改。

我应该在Gerrit/Jenkins中更改哪些设置?

1个回答

3
在Jenkins配置中的git源代码管理选项中,点击高级按钮并将你的refspec设置为$GERRIT_REFSPEC,这将获取提交的变更集。

嗨,马克,我还有一个问题。Jenkins构建在状态页面的“更改”字段中未显示正确的更改详细信息。我尝试在源代码mgmt->高级->名称字段中添加$GERRIT_SUBJECT_NAME变量。但我仍然看到旧的更改名称。我非常确定它正在构建正确的源代码,但“更改”字段显示先前更改的名称。请也为此提供解决方案。 - user691197
我没有必要进行配置,这里它可以正常工作。我所配置的只是源代码管理的“Git”选项,仓库的URL为“git://localhost/my_repo.git”,在这里我有一个xinetd.d/git条目,允许jenkins机器无需登录gerrit,而是访问连接到gerrit仓库的git-daemon。在高级选项卡中,我将仓库名称设置为“origin”,refspec设置为$GERRIT_REFSPEC。我也没有必要在jenkins配置中更改插件的任何内容。 - Mark Fisher
它正在工作。只有在我的第一个构建中,它显示了错误的更改细节。但是从下一个构建开始,我看到了正确的细节。 - user691197
1
通常情况下,如果Jenkins工作不是从正确的审核版本构建,则这是由于“选择策略”引起的(Git SCM配置中的第二个“高级”按钮)。 应将其设置为“Gerrit”,而不是“Git”。 在插件维基页面的“使用Git插件”部分中有解释。 - Joe
https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger#GerritTrigger-UsagewiththeGitPlugin - Ritesh

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