最近使用sonar分别接入了前后端项目,并做了前后端扫描结果的兼容处理。记录一下使用过程中,前后端的一些区别之处。
1 sonarqube扫描的前后端配置区别
虽然sonar支持前后端扫描,但是其中的一些细节还是有差别的,首先是配置项的区别:
sonar创建令牌后的有几种方式,如下图所示:
其中前端为其他(JS)等,后端如果是Java,则选择maven的构建方式。
具体的配置方式:
前端后端具体的命令配置,选中上图中对应的构建技术,根据提供的命令,替换对应的令牌,然后配置路径即可。
由于sonar不同的版本配置命令有差异,这次就没有截图具体的命令,根据自己安装的实际版本的命令安装即可。
将.gitlab-ci.yml文件添加到自己的gitlab工程里,注意是yml文件,不是yaml,文件以 . 开头。
在gitlab中配置自己的 gitlab-runner,然后将工程注册到runner中并启用。
2 sonarqube扫描前后端的一些区别
获取分支检测结果时,前后端的检测结果有些区别,有些有交集的部分,也有些没有交集。比如我试验时,后端有coverage的检测项,但是前端没有coverage的检测项。通过脚本获取检测结果时,可以根据实际情况,灵活应对获取对应的检测项。
一般的常用检测项:bugs、code_smells;
额外的可选检测项:leak、last_commit_date、alert_status、job_name。