4

我已经为 jenkins 配置了 gerrit 触发器插件,以验证我们审查到 gerrit 的每个提交。我期待这个触发器将我的最新更改包含在原始存储库中并进行构建。但是,它只是克隆 repo 项目并在没有我更改的情况下进行编译。下面是我在 jenkins 中对 gerrit 触发器的配置设置。

Refspec: $GERRIT_REFSPEC 
Branches to build: $GERRIT_BRANCH 
Build trigger: Gerrit event 
Trigger on: patch set created 
Gerrit project: added project and branch
4

2 回答 2

6

Refspec:$GERRIT_REFSPEC 指向 refs/changes/XX/XXXXX/X

如果你想从 gerrit 获取代码,你应该在你的 Build 步骤中执行这个 cmd:</p>

git fetch $GIT_URL $GERRIT_REFSPEC && git checkout FETCH_HEAD

或者你可以试试这个:

https://wiki.jenkins.io/display/JENKINS/Gerrit+Trigger

让 Git 插件下载您的更改;

  1. 将 Refspec 设置为 $GERRIT_REFSPEC
  2. 将“要构建的分支”设置为 $GERRIT_BRANCH。

如果这对您不起作用

  1. 将 Refspec 设置为 refs/changes/ :refs/changes/
  2. 将“要构建的分支”设置为 $GERRIT_REFSPEC。
于 2017-08-31T08:31:01.287 回答
3

更改作业配置的以下项目。

从:

Refspec: $GERRIT_REFSPEC 
Branches to build: $GERRIT_BRANCH 

至:

Refspec: $GERRIT_REFSPEC:$GERRIT_REFSPEC 
Branches to build: $GERRIT_REFSPEC

考虑将“已发布草稿”添加到“触发”选项中。

于 2017-08-31T11:07:20.443 回答