如何在不使用 Gerrit 插件的情况下 post 从 Jenkins 返回到 Gerrit 服务器

how to post rating back from Jenkins to Gerrit server without using of Gerrit plugin

我目前正在使用 Gerrit 服务器端挂钩脚本来触发 Jenkins 作业 运行 只要有新的补丁集提交给 Gerrit 服务器。我不使用 Jenkins Gerrit 事件插件,因为我不想让任何 Gerrit 错过事件发生。

但是,如果 Jenkins 作业 运行 成功或失败,我在如何将评级传回 Gerrit 服务器方面遇到一些困难。我怎样才能达到这个结果?有没有人试图实现与我相同的目标?请指教

提前致谢

您可以使用 REST API 编写一个脚本来对 Gerrit 进行投票。例如,以下命令将设置 Code-Review=1:

curl --request POST --user USER:PASS --data @- --header Content-Type:application/json https://GERRIT-SERVER/a/changes/CHANGE-NUMBER/revisions/PATCHSET-NUMBER/review <<EOF
{
    "message": "So far so good",
    "labels": {
        "Code-Review": 1,
    }
}
EOF

查看有关 REST 的更多信息 API here