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
'''
}
}
}

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

  1. Jenkins自动化部署及代码检查配置应用

    首先jenkins是基于java开发的一种持续集成工具,它的存在和实际应用使得我们在开发过程中节省了很多宝贵时间,既然基于java,所以java环境是必须的. 其次Tomcat是针对Java的一个开源 ...

  2. jenkins:集成sonar代码扫描+发送邮件

    前提: Jenkins JDK 目录: 1.安装sonar插件:SonarQube Scanner for Jenkins 2.安装SonarQube 3.安装sonar-scanner ++++++ ...

  3. 在Jenkins中使用sonar进行静态代码检查

    要解决的问题 jenkins自动构建完成后,希望能通过sonar静态代码检查生成一份报告,给与开发人员对当前代码的做一个质量评估和修改意见 1.安装并配置sonar服务器 懒得说,跟着官方文档走就行, ...

  4. Jenkins之Sonar 代码检查

    一.简介 SonarQube 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等 ...

  5. 一个实际的sonar代码检查的配置文件

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  6. 在VUE应用中配置ESLint(代码检查)

    eslint配置方式 注释配置:使用js注释来直接嵌入ESLint配置信息到一个文件里 配置文件:使用一个js文件,JSON或者YAML文件来给整个目录和它的子目录指定配置信息.这些配置可以写在一个文 ...

  7. Jenkins之自动部署、代码安全扫描、自动化接口测试

    搭建Jenkins wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.reporpm --i ...

  8. Jenkins自动化部署代码

    通过jenkins自动化部署项目代码可以大幅度节省打包上传部署的时间,提高开发测试的工作效率 ========== 完美的分割线 =========== 1.Jenkins是什么 1)Jenkins是 ...

  9. 持续集成Jenkins+sonarqube部署教程

    1 引言 1.1 文档概要 本文主要介绍jenkins,sonar的安装与集成,基于ant,maven构建.用一个例子介绍jenkins的编译打包部署,代码检查.最后集成jenkins.(现阶段只是简 ...

随机推荐

  1. 跳马~~~HDU1372

    基础BFS,水过就好~手写队列优化~~ #include <iostream> #include <stdio.h> #include <string.h> #in ...

  2. POJ2446【建图建图】

    题意: 给你一个n*n的矩阵,然后再给你几个坑,然后问你能否被1*2的长方形给覆盖: -弱知道了是二分匹配的做法,但是弱还是不会转化,又是在建图上GG了 分析: 从国际象棋的那个黑白色理解,这是一张二 ...

  3. Cg(c for graphic)语言的数据类(转)

    抄“GPU Programming And Cg Language Primer 1rd Edition” 中文名“GPU编程与CG语言之阳春白雪下里巴人” 本章将着重介绍Cg语言中预定义的内置(bu ...

  4. 《编译原理》-用例题理解-自顶向下语法分析及 FIRST,FOLLOW,SELECT集,LL(1)文法

    <编译原理>-用例题理解-自顶向下语法分析及 FIRST,FOLLOW,SELECT集,LL(1)文法 此编译原理确定某高级程序设计语言编译原理,理论基础,学习笔记 本笔记是对教材< ...

  5. mac 配置nginx 虚拟域名(转载)

    我是通过homebrew 安装nginx 的,所以安装目录是默认的,之前多个server都是放在默认安装目录下的nginx.conf里的,但是这样不太好,就是会导致nginx.conf 越来越长,而且 ...

  6. two_sum问题

    def two_sum(li, target): for i in range(len(li)): for j in range(i+1, len(li)): if li[i] + li[j] == ...

  7. fzu Problem 2198 快来快来数一数 (快速幂+优化)

    题目链接: Problem  2198  快来快来数一数 题目描述: 给出n个六边形排成一排,a[i]代表i个六边形能组成的生成树个数,设定s[i]等于a[1]+a[2]+a[3]+....+a[i- ...

  8. 题解报告:zoj 3261 Connections in Galaxy War(离线并查集)

    Description In order to strengthen the defense ability, many stars in galaxy allied together and bui ...

  9. Tomcat启动后打开页面提示404错误的解决

    Eclipse配置并启动Tomcat成功,但有时会访问localhost:8080出现404错误,此时需要修改Tomcat配置.步骤如下: 在Eclipse中双击Tomcat server,打开Tom ...

  10. 18.3.2从Class上获取信息(内部类接口等)

    内部类 接口.枚举.注释类型