目录
一、前言
本文主要内容是sonarqube安装插件实现功能扩展,也对sonarqube的API功能进行了可用性确认。
二、系统环境
操作系统:Windows10
Jenkins:2.394
sonarqube:9.9
测试项目为:.Net Core 桌面端项目,不需要IIS
sonarqube插件:sonar-pdf-plugin
三、插件安装
插件下载地址(Giree资源地址)。
https://gitee.com/zzulj/sonar-pdf-plugin.git
3.1 软件版本
Sonar PDF Report Plugin
适用SonarQube版本 : 5.5–7.5。
2.0.X:适用SONARQUBE5.5–5.6.7版本
2.1.x:适用SONARQUBE6.0-6.2版本
3.0.x:适用SONARQUBE6.3+
3.2 Description / Features
本插件生成PDF格式的sonarqube报告.
报告包括以下内容:
概要
静态分析
动态分析
编码问题
热点:
违反最多的规则TOP10
违规最多的文件TOP5
复杂度最高的文件TOP5
重复行最多的文件TOP5
违规详情
子模块信息(只有在存在时生成)
3.3 安装
步骤一:下载对应的版本,将插件复制到SONARQUBE_HOME/extensions/plugins 目录
步骤二:重启SonarQube
Gitee代码仓库里有发行版支持到9.x版本,而且也有已经打包好的jar包。
如果你是windows环境,可能会找不到stop服务的bat文件,bin里面有的版本好像不带,我最后重启了机器,关服务命名我一直运行失败不知道原因。
3.4 用法
SonarQube PDF是一个 post-job任务. 因此,PDF 报告将在SonarQube分析结束后生成.,任何一个项目在安装完插件后,首次执行job完毕,才会有pdf报告下载,否则提示无报告。
3.5 配置
配置Skip为“否”时生成PDF报告功能启用。
配置Username和Password。如果出现HTTP error: 401或者HTTP error: 403, msg: Forbidden,请查看该配置。
3.6 下载
sonar低版本在仪表盘里面下载。高版本在more里面下载。
四、API的使用示例
4.1 API入口
界面的底部有API入口
4.2 API文档
4.3 API的url示例:
http://127.0.0.1:8088/api/issues/search?compOnentRoots=这里填写项目名称&statuses=OPEN,REOPENED&pageSize=500&pageIndex=1