Jenkins搭建集成SonarQube最简实践

本文介绍在Linux环境下Jenkins如何整合SonarQube

环境准备

  • JDK环境
    JDK1.8
  • 代码托管
    Gitlab
  • 审查工具
    SonarQube
  • 发布容器
    Tomcat
  • 构建工具
    Maven
  • 数据库
    MySQL

系统配置要求

  • OS内核需要高于Linux5.3

  • 推荐运行内存为8G左右,至少需要大于4G

  • 需要分配额外的用户和用户组来运行代码审查工具

  • 若需持久化代码审查记录,需要提供一个数据库(MySQL,H2,postgresql等),数据库的安装过程在此跳过

具体步骤

  • 步骤1 安装Jenkins和SonarQube基本环境
    可以参考文章

  • 步骤2 在系统中安装好JDK环境和Maven环境

  • 步骤3 Jenkins配置连接Gitlab

    • 3.1 Jenkins页面,系统管理->管理插件,安装“GitLab”和“Git client” 2个插件
      * 3.2 Jenkins页面,系统管理->系统设置,配置Gitlab
      其中token在Gitlab中生成
  • 步骤4 配置maven

    • 4.1 配置安装目录下的conf/setting.xml文件配置
      配置项如下:
    <profile>
      <id>sonar</id>
      <activation>
          <activeByDefault>true</activeByDefault>
      </activation>
      <properties>
           <!-- 平台登录的账号的用户名 -->
          <sonar.login>你的用户名</sonar.login>
          <!-- SonarQube平台登录的账号的密码 -->
          <sonar.password>你的密码</sonar.password>
          <!-- SonarQube访问地址 -->
          <sonar.host.url>http://sonar.ibeiliao.net:9000</sonar.host.url>
          <!-- 代码分析包括哪些文件需要分析,英文逗号分隔  -->
          <sonar.inclusions>**/*.java,**/*.xml</sonar.inclusions>
      </properties>   
    </profile>

并使用 sonar 激活profile

* 4.2 配置Jenkins集成Maven
Jenkins页面,系统管理->全局工具配置,配置好Maven

  • 步骤5 Jenkins创建每日构建项目
    • 新建任务,输入任务名,选择“构建一个自由风格的软件项目”
    • 选择gitlab
      * 填写代码仓库、分支信息
      * 配置构建触发器
      H 16 * * 1,4 代表每日16前构建,每周一,周日构建
      * 基于Maven配置代码扫描
      clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.failure.ignore=true -Pdev
      * 配置构建后构建失败发邮件
      * 保存

参考

持续集成平台搭建:Jenkins,SonarQube


 上一篇
自研IM系统存储设计 自研IM系统存储设计
1 数据操作需求1.1 发消息 发送方新增已发消息 (用于消息判重) 接收方新增待收消息 根据发送方用户ID查询最近100条已发消息(用于消息判重) 消息持久化存储 1.2 收消息 根据接收方用户ID,最新已收消息ID,查询未收消息,支
2019-10-13
下一篇 
基于Java内存dump文件分析解决内存泄漏问题 基于Java内存dump文件分析解决内存泄漏问题
*  本文介绍一次解决现场*java内存泄漏问题**的经过,希望能提供后续遇到类似情况的读者一点思路。 生产环境发现的问题问题*  *生产环境运维人员反馈,服务器(windows系统)卡死,相关的服务都运行异常,重启之后也没作用。
2019-10-13
  目录