我们正在尝试为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
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
詹金斯改变。
3.1添加gerrit服务器信息,因此在jenkins上“手动触发Gerrit事件”效果很好
3.2 Gerrit的注释添加也可以触发Jenkins作业构建,因此conn运行良好。
但是构建结果没有回发给gerrit,所以在jenkins服务器上使用上面的SSH命令,我可以用用户gfkfcmo更新“code-review”,但是对“已验证”标签没有生效,见图片下方。
我搜索了这个主题,但没有得到任何暗示或答案。任何提示都将受到高度赞赏。
答案 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