SonarQube 平台是 由 4 个 部分组成:
SonarQube Server
SonarQube Database (这次并没有关注这块)
SonarQube Plugins
SonarQube Scanner
功能介绍:
SonarQube Scanner在项目代码的本地去扫描代码最后发送到SonarQube Server
SonarQube Plugins这次我理解的应该是IDE的插件,我们这次也用了Jenkins的SonarQube Plugins但是我理解这的这个应该单纯的去封装了扫描代码执行的命令。
SonarQube Database是用来做数据持久化的,本次没有关注这块,使用的sonar内置的默认数据库。
SonarQube Server是sonar的服务器端会把SonarQube Scanner发送的数据进行分析最后显示在web页面上。
安装配置完sonar后就需要与jenkins进行集成了。Jenkins和Sonar集成的原理大概是这样的。Jenkins在器插件管理中心,下载sonar插件并进行配置,与sonar关联上。然后Jenkins在完成一次集成构建后,就会通知sonar进行源代码分析的操作。
插件安装
1.在线安装
中Jenkins的系统管理->管理插件->可选插件栏,搜索SonarQube Plugin,点击直接安装即可。
这种在线安装的方式虽然方便,但是有可能需要翻墙
2.离线安装
①.首先下载SonarQube Plugin插件:https://wiki.jenkins-ci.org/display/JENKINS/SonarQube+plugin,下载完是sonar.hpi文件。
②. 选中Jenkins的系统管理->管理插件->高级->上传插件
将刚才下载的插件sonar.hpi,上传至Jenkins,并根据提示重启Jenkins即可。
重启后到 插件管理->已安装->查看SonarQube Plugin是否存在
出现上图插件,表示安装成功
SonarQube Plugin 配置
找到系统管理->系统设置->SonarQube栏, 进行下列设置即可。
要注意的是5.3版本以上的sonarqube用户的认证采用token的方式。那么这个token是怎么生成的呢?登录sonarqube的界面
右上角点击用户->我的账号
再点击安全-token->generate Tokens,在输入输入框呢输入明文的token值,点击Generate会生成加密后的token值,将加密后的token复制到jenkins中即可。
SonarQube Scanner 配置
找到系统管理-> Global Tool Configuration,找到SonarQube Scanner一栏,进行下列设置
进行项目分析
选择一条可以成功构建的项目,修改其配置。增加构建后操作步骤->SonarQube 即可。
注意高版本的sonar需要jdk1.8。选JDK的时候记得勾选1.8。添加配置后,项目的页面会出现SonarQube的标志
然后点击立即构建,构建完成后,Jenkins会通知sonar进行代码质量分析,登陆sonar查看
即可看到项目的代码走查结果
更新时间:2023-12-28 09:15