Jenkins中部署Sonar代码检查

1 安装并启动sonarqube

docker pull sonarqube:7.5-community
docker run   --name sonarqube   --network ci   --ip 172.18.0.16   -p 9000:9000   -d sonarqube:7.5-community

访问http://ip:9000即可打开sonarqube页面,默认用户名密码是admin/admin,然后生成Tokens

这个Tokens用于和Jenkins进行交互

2 在Jenkins中配置SonarQube服务器

(1)安装SonarQube Scanner for Jenkins插件;
(2)系统管理->系统设置,配置SonarQube服务器

Name随便命名,Job中需要用到;Server URL填之前安装的SonarQube服务的URL;Server authentication token填前面在SonarQube中生成的Token。

3 在gradle中配置Sonar插件

在编译脚本build.gradle中添加以下内容:

plugins {
  id "org.sonarqube" version "2.6"
}

sonarqube {
    properties {
        property "sonar.projectName", "platform"
    }
}

这里的sonar.projectName为自定定义的工程名,Sonar检查完之后会显示在SonarQube界面。
要执行sonar检查,只要在jenkins的pipeline脚本中添加以下内容即可:

stage("sonar-platform") {
  steps {
    withSonarQubeEnv(‘sonar‘) {
      sh ‘‘‘
        cd ${project}/platform
        gradle sonarqube
      ‘‘‘
    }
  }
}

4 使用sonar检查js

检查js代码需要在SonarQube上安装SonarJS插件,不过docker版本的SonarQube已经自带了SonarJS插件,直接使用即可。js检查需要使用sonar-scanner,需要下载镜像:

docker pull mercuriete/sonar-scanner

jenkins脚本中添加以下内容:

stage("sonar-portal") {
  steps {
    withSonarQubeEnv(‘sonar‘) {
      sh ‘‘‘
        docker run --rm           -v ${project}/portal:/${project}/portal           mercuriete/sonar-scanner           sonar-scanner           -Dsonar.host.url=http://192.168.1.100:9000           -Dsonar.projectKey=${project}-portal           -Dsonar.sources=/${project}/portal/src
      ‘‘‘
    }
  }
}

原文地址:https://www.cnblogs.com/lasdaybg/p/10255675.html

时间: 2024-08-29 18:41:48

Jenkins中部署Sonar代码检查的相关文章

IDEA中关闭sonar代码质量检测

笔者在IDEA中禁用了SonarLint等各种配置,还是无效,后来在网上找到说是插件的bug, There was a bug in SonarLint for IntelliJ that prevented the configuration to be properly saved. It was fixed in the latest version 2.3.2: https://jira.sonarsource.com/browse/SLI-106 About the performan

在idea intellij中使用Sonarqube进行代码检查

Sonarqube是一个功能非常强大的代码质量检查.管理的工具.能够识别多种常用的编程语言,并能够通过设置不同的Rule Sonar是一个代码质量管理的开源工具,它通过插件的形式能够识别常见的多种编程语言(例如Java, C#, PHP, Pythod等)代码质量问题.Sonar可以帮你分析出以下代码质量问题: 1.不遵循代码标准 2.潜在的缺陷 3.代码重复 4.注释率不足或过高 5.糟糕的复杂度分布 6.缺乏单元测试 在公司中,一般是把Sonarqube布置在服务器端,当开发人员提交代码时,

转载:持续集成Jenkins+sonarqube部署教程

转载: 持续集成Jenkins+sonarqube部署教程 持续集成 1 引言 1.1 文档概要 本文主要介绍jenkins,sonar的安装与集成,基于ant,maven构建.用一个例子介绍jenkins的编译打包部署,代码检查.最后集成jenkins.(现阶段只是简易的集成,后续需要修改accio源码做深度集成) 1.2 预计读者 系统配置管理员:要懂得搭建持续集成环境,有问题可以排查:架构师:了解持续集成实现原理,协助项目接入持续集成.项目在持续集成环境运行中,进行维护.分析构建异常等:维

持续集成Jenkins+sonarqube部署教程

1 引言 1.1 文档概要 本文主要介绍jenkins,sonar的安装与集成,基于ant,maven构建.用一个例子介绍jenkins的编译打包部署,代码检查.最后集成jenkins.(现阶段只是简易的集成,后续需要修改accio源码做深度集成) 1.2 预计读者 系统配置管理员:要懂得搭建持续集成环境,有问题可以排查:架构师:了解持续集成实现原理,协助项目接入持续集成.项目在持续集成环境运行中,进行维护.分析构建异常等:维护人员:重启服务.排查环境问题.项目接入支持: 1.3 关于持续集成

持续集成与自动化部署 - jenkins & sonar代码质量管理平台 部署和基础使用(五)

1 jenkins 安装参考链接 1.1 安装jenkins [[email protected] ~]# yum install -y java-1.8.0 [[email protected] ~]# cd /etc/yum.repos.d/ [[email protected] yum.repos.d]# wget http://pkg.jenkins.io/redhat/jenkins.repo [[email protected] yum.repos.d]# rpm --import

SonarQube4.4+Jenkins进行代码检查实例之三-单元测试分析

作者:张克强    作者微博:张克强-敏捷307 在 <SonarQube4.4+Jenkins进行代码检查实例之一> 中介绍了不编译只检查的方式. 在<SonarQube4.4+Jenkins进行代码检查实例之二>中介绍了编译并检查编译结果的方式. 本文来介绍如何利用SonarQube来分析单元测试.最新推荐在分析插件是Jacoco. 当然要进行单元测试,首先单元测试得到了书写,能够本地执行得到结果.本示例采用Maven的典型结构. 1,配置Maven,在maven的conf目录

SonarQube4.4+Jenkins进行代码检查实例之三-单元測试分析

作者:张克强    作者微博:张克强-敏捷307 在 <SonarQube4.4+Jenkins进行代码检查实例之中的一个> 中介绍了不编译仅仅检查的方式. 在<SonarQube4.4+Jenkins进行代码检查实例之二>中介绍了编译并检查编译结果的方式. 本文来介绍怎样利用SonarQube来分析单元測试.最新推荐在分析插件是Jacoco. 当然要进行单元測试,首先单元測试得到了书写,可以本地运行得到结果. 本演示样例採用Maven的典型结构. 1,配置Maven,在maven

SonarQube4.4+Jenkins进行代码检查实例之二

在 <SonarQube4.4+Jenkins进行代码检查实例之一> 中介绍了不编译只检查的方式. 但是有些代码检查需要使用字节码,比如Findbugs的检查依赖于字节码,实例一中只提取源代码,就不能进行Findbugs的检查. 要进行Findbugs检查就需要编译.以下实例操作来演示如何搭建 1,首先当然是要下载最新的Findbugs    http://docs.codehaus.org/display/SONAR/FindBugs+Plugin  ,当前最新版是V3.0,  suppor

SonarQube4.4+Jenkins进行代码检查实例之一

在最新的<关于代码审查的几点建议>中再次提到了代码分析: 6.尽量使用静态代码分析工具以提高审查效率. 笔者之前也谈到过多次代码分析.代码检查,见: 关于代码评审的微博讨论汇集 #敏捷有效实践# 每日代码自动检查 英文是daily code inspection.对代码质量关注时,安排人工检查code review是需要的,但100% code review需要很多工作量,不是所有的组织值得这样做,而工具自动检查是只需少量人工建设配置,99%的组织值得采用.此实践花费不多,收效不小. #CMM