前段时间试着在Jenkins上实现了代码审查功能,
本篇博客记录一下具体的实施方案,主要包括Jenkins、Gerrit Trigger、Git Hook等。
一、目的
为了减少不必要的编译错误,同时提高代码书写质量,可以在Jenkins上实现了代码审查的功能。
Jenkins具有该功能后,将自动对Gerrit上提交的代码进行编译及代码检查,并将检测的结果返回到Gerrit上。
通过这种方式,代码提交人员能够及时地根据反馈结果,对代码进行修改和完善。
二、Gerrit Trigger
为了实现代码审查功能,我们首先需要在Jenkins上下载并安装Gerrit Trigger插件,然后进行相应的配置。
2.1 Gerrit Trigger下载及安装
如上图所示,我们只需要点击Jenkins的Manage Jenkins选项,然后点击Manage Plugins选项,
在新加载的页面中,搜索并选择Gerrit Trigger插件,点击下载及安装即可(进行上述工作前必须具有管理员权限)。
Jenkins成功安装Gerrit Trigger插件后,在Manage Jenkins界面中就会出现如上图所示的Gerrit Trigger图标。
2.2 Gerrit Server配置
点击Gerrit Trigger图标后,会出现如下图所示的界面:
点击Add New Server,就可以创建一个运行在Jenkins服务器上,专门用于监听Gerrit代码提交事件的Gerrit Server。
如上图所示,创建Gerrit Server时,我们只需要定义Server的名称,然后点击使用Default Configurations即可。
完成上述操作,点击OK后,将出现类似如下界面:
如图所示,该界面主要配置Gerrit代码服务器的信息,以便Gerrit Server能够与Gerrit代码服务器通信。
上图比较重要的部分已经用红线标出,其中:
Hostname和Frontend URL主要填写Grerrit代码服务器的地址;
SSH Keyfile是本地生成的SSH私钥地址,对应的公钥需要上传到Gerrit代码服务器,注意Username需要与SSH Keyfile一致。
配置完成后,可以点击Test Connection测试Gerrit Server与Gerrit代码服务器的连通性。
图中Gerrit Reporting Values主要设置代码审查完毕后,
Gerrit Server返回给Gerrit代码服务器的值,即审查通过后+1, 不通过-1。
当整个Gerrit Server配置完毕后,就可以点击Save按键保存。
此时,将会出现如下界面,其中图片上方就是Grerrit Server的默认配置:
我们点击界面下方显示的Edit键时,可以重新对Gerrit Server进行配置;
点击Remove键时,可以移除此次创建的Gerrit Server;
如果检查Gerrit Server没有问题后,就可以点击Status下方的红色按键,正式启动Gerrit Server。
Gerrit Server启动后