前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jenkins整合SonarQube

Jenkins整合SonarQube

作者头像
py3study
发布2020-03-18 20:00:20
2.1K0
发布2020-03-18 20:00:20
举报
文章被收录于专栏:python3python3

一、概述

安装SonarQube,参考链接:

https://www.cnblogs.com/xiao987334176/p/12011623.html

安装SonarQube Scanner,参考链接:

https://www.cnblogs.com/xiao987334176/p/12022294.html

二、安装插件

在可选插件中搜索 SonarQube 并安装它

三、插件配置

创建sonarqube token

登录到sonarqube服务器,http://192.168.31.7:9000

点击右侧账号图标-->我的账号-->安全

输入 jenkins,点击生成。

1.png
1.png

 注意:这个输入框的字符串,可以随意。这里表示给jenkins使用的!切记要保存好!

创建jenkins token

点击 jenkins -->凭据 --> 系统 --> 全局凭据--> 添加凭据

1.png
1.png

输入在sonarqube中生成的token

1.png
1.png

配置 SonarQube Server

进入 Jenkins 系统管理 – 系统设置,配置 SonarQube Server 信息

由于 SonarQube 在本机运行,直接就是 http://localhost:9000

1.png
1.png

 进入 Jenkins 系统管理 - Global Tool Configuration,配置 SonarQube Scanner

输入安装路径

1.png
1.png

四、项目配置

java

使用构建后步骤进行代码分析需要使用 Maven 对代码进行编译,所以需要有 Maven 的配置文件,例如 pom.xml。

为新建的 Jenkins 项目配置构建后操作步骤,在构建后步骤配置窗口中需要填入 Maven 的构建配置 xml 文件

1.png
1.png

配置构建后操作步骤

复制代码
复制代码
代码语言:javascript
复制
sonar.projectKey=$JOB_NAME
sonar.projectName=$JOB_NAME
sonar.language=java
sonar.login=admin
sonar.password=admin
sonar.java.binaries=$WORKSPACE/smr-platform-service/smr-biz/target/classes
复制代码
复制代码
1.png
1.png

 注意:sonar.java.binaries 表示java的源码路径

参数解释:

Task to run 输入框中输入 scan,即分析代码;

Path to project properties:可选择的输入框,可以指定一个 sonar-project.properties 文件,如果不指定则使用项目默认的 properties 文件;

Analysis properties:输入一些配置参数传递给 SonarQube,这里的参数优先级高于 sonar-project.properties 文件里面的参数,所以可以在这里来配置所有的参数以替代 sonar-project.properties 文件

注:SonarQube Scanner配置可以直接在项目根目录中创建一个文件sonar-project.properties,然后使用Path to project properties中指定属性文件,或者直接在Analysis Properties中配置

Additional arguments:可以输入一些附加的参数,示例中的-X指进入 SonarQube Scanner 的 Debug 模式,输出更多的日志信息

查看分析结果

1.png
1.png

登录到SonarQube,查看结果

1.png
1.png

python

代码语言:javascript
复制
sonar.projectKey=$JOB_NAME
sonar.projectName=$JOB_NAME
sonar.language=python
sonar.login=admin
sonar.password=admin
1.png
1.png

vue

复制代码
复制代码
代码语言:javascript
复制
#projectKey项目的唯一标识,不能重复
sonar.projectKey=$JOB_NAME
sonar.projectName=$JOB_NAME
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
sonar.modules=javascript-module
sonar.login=admin
sonar.password=admin

# JavaScript module
javascript-module.sonar.projectName=JavaScript Module
javascript-module.sonar.language=js
javascript-module.sonar.sources=.
javascript-module.sonar.projectBaseDir=src
复制代码
复制代码
1.png
1.png

本文参考链接:

https://www.ibm.com/developerworks/cn/devops/1612_qusm_jenkins/index.html

https://www.jianshu.com/p/19af03f48c9a

https://blog.csdn.net/weixin_33895516/article/details/87947976

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-03-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、概述
  • 二、安装插件
  • 三、插件配置
    • 创建sonarqube token
      • 创建jenkins token
        • 配置 SonarQube Server
        • 四、项目配置
          • java
            • 查看分析结果
              • python
                • vue
                相关产品与服务
                腾讯云代码分析
                腾讯云代码分析(内部代号CodeDog)是集众多代码分析工具的云原生、分布式、高性能的代码综合分析跟踪管理平台,其主要功能是持续跟踪分析代码,观测项目代码质量,支撑团队传承代码文化。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档