手动gerrit review cmd没有更新“已验证”标签值

时间:2018-06-05 06:20:40

标签: jenkins continuous-integration gerrit

我们正在尝试为CI框架设置jenkins和gerrit,gerrit可以触发Jenkins构建,但是在构建成功后无法更新gerrit的验证标签,所以我尝试使用手动命令,仍然无法通过以下ssh更新gerrit验证的标签字段命令在jenkins服务器上,但可以更新代码审查标签。

    ssh -p 29418 gfkfcmo@cmgerrit1.com gerrit review -p HiCloud/myProject --label Verified=1 --code-review +1 27263,1

1.设置:

gerrit:2.8.1 Jenkins:2.60 gerrit trigger:2.27

  1. Gerrit改变:
  2. 2.1更新myProject的project.config以启用验证标签。

        [label "Verified"]
        function = MaxWithBlock
        value = -1 Fails
        value =  0 No score
        value = +1 Verified
    

    2.2将gfkfcmo添加为Jenkins非交互式用户,在myProject访问中添加权限:         参考:refs / *         阅读:允许非交互式用户

        Reference: refs/heads/*
        Label Code-Review: -1, +1 for Non-Interactive Users
        Label Verified: -1, +1 for Non-Interactive Users
    
    1. 詹金斯改变。
      3.1添加gerrit服务器信息,因此在jenkins上“手动触发Gerrit事件”效果很好 3.2 Gerrit的注释添加也可以触发Jenkins作业构建,因此conn运行良好。

    2. 但是构建结果没有回发给gerrit,所以在jenkins服务器上使用上面的SSH命令,我可以用用户gfkfcmo更新“code-review”,但是对“已验证”标签没有生效,见图片下方。

    3. 我搜索了这个主题,但没有得到任何暗示或答案。任何提示都将受到高度赞赏。

      updated screen

      update screen with "tested" label

2 个答案:

答案 0 :(得分:0)

我认为您需要将验证标志设置为--verified +1,即

ssh -p 29418 gfkfcmo@cmgerrit1.com gerrit review -p HiCloud/myProject --verified +1 --code-review +1 27263,1

答案 1 :(得分:0)

我认为只有在“All-Projects”根项目中定义“已验证”标签时,“ - 验证+1”选项才可用。在您的情况下,您需要使用“--label Label-Name = N”选项:

ssh -p 29418 gfkfcmo@cmgerrit1.com gerrit review -p HiCloud/myProject --label Verified=+1 --code-review +1 27263,1