Jenkins+SonarQube代码质量检查自动化


 

    1. 基础概念
      百度百科:
      Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:
      1、持续的软件版本发布/测试项目。
      2、监控外部调用执行的工作。
      前面[Sonarqube 代码质量管理平台搭建]-已搭建完成,如何让Sonarqube按照我们想要规律进行工作呢?就靠Jenkins啦。
    2. 安装
      Jenkins的安装很简单,官网提供的安装方式如下

      sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
      sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key sudo yum install jenkins #启动/停止/重启命令 sudo service jenkins start/stop/restart #设置自启动 sudo chkconfig jenkins on

      需要有JAVA环境,此处略。
      访问:http://ip:8080/
      配置文件:/etc/sysconfig/jenkins
      JENKINS_HOME="/var/lib/jenkins"
      JENKINS_PORT="8080"

      /var/lib/jenkins
      Jenkins所有配置和所有操作存放的位置
      Jenkins迁移/备份 这个目录即可


      jenkins work.jpg
    3. 安装sonar插件


      管理插件.jpg

      插件安装.jpg


      查找sonar-勾选-直接安装,安装好了如下


      已安装.jpg
    4. sonarqube 配置
      系统管理-系统设置
      添加Sonar runner
      /usr/local/quality/sonar-runner-2.4/
      如该目录下需要有./bin/sonar-runner 文件
      添加SonarQube


      sonar.jpg

      sonar配置成功.jpg
    5. 构建项目
      新建项目-部分略
      定时任务-略

      Invoke Standalone SonarQube Analysis.jpg

      在Analysis properties中输入检查规则,以下是运用多个检查项的规则
      #required metadata #projectKey项目的唯一标识,不能重复。 sonar.projectKey=chances_cms #projectName值不能是中文,否则web页面部分是乱码 sonar.projectName=chances_cms sonar.projectVersion=4.0 sonar.sourceEncoding=UTF-8 sonar.modules=java-module,javascript-module,html-module,CSS-module # Java module java-module.sonar.projectName=chances_cms_java java-module.sonar.language=java # .表示projectBaseDir指定的目录 java-module.sonar.sources=src java-module.sonar.projectBaseDir=. #sonar.binaries=classes # JavaScript module javascript-module.sonar.projectName=chances_cms_js javascript-module.sonar.language=js javascript-module.sonar.sources=webapp javascript-module.sonar.projectBaseDir=. # Html module html-module.sonar.projectName=chances_cms_html html-module.sonar.language=web html-module.sonar.sources=webapp html-module.sonar.projectBaseDir=. # CSS module CSS-module.sonar.projectName=chances_cms_css CSS-module.sonar.language=css CSS-module.sonar.sources=webapp CSS-module.sonar.projectBaseDir=.
    6. 执行构建

      执行构建.jpg

      构建成功后,会自动将检查结果导入sonarqube的数据库中

      结果展示.jpg


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM