jenkins svn/git sonarqube scanner 代码集成测试

大家好,我是烤鸭:

    今天分享一个代码检测工具sonar,在jenkins集成的时候使用。

环境:

   sonarqube 7.1

   jenkins 2.12x

   sonarqube scanner (官网最新版3.2.0.1227)


1.    jenkins  svn/git 搭建项目

    https://blog.csdn.net/Angry_Mills/article/details/78539826

        

2.    sonarqube 安装

    2.1    下载 SonarQube 7.1

        https://www.sonarqube.org/downloads/

    2.2    解压

mkdir sonar
cd sonar
upzip sonarqube-7.1

    2.3    修改配置文件

    官方文档    :    https://docs.sonarqube.org/display/SONAR/Installing+the+Server

    修改后的配置文件如下:

    配置了mysql和修改了启动端口和es端口。注意mysql必须是5.6+。

# Permissions to create tables, indices and triggers must be granted to JDBC user.
# The schema must be created first.
sonar.jdbc.username=root
sonar.jdbc.password=root123#----- MySQL 5.6 or greater
# Only InnoDB storage engine is supported (not myISAM).
# Only the bundled driver is supported. It can not be changed.
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false# Web context. When set, it must start with forward slash (for example /sonarqube).
# TCP port for incoming HTTP connections. Default value is 9000.
sonar.web.port=9202# Elasticsearch port. Default is 9001. Use 0 to get a free port.
# As a security precaution, should be blocked by a firewall and not exposed to the Internet.
sonar.search.port=9010

        2.4    启动

cd /opt/sonar/sonarqube-7.1/bin/linux-x86-64
./sonar.sh start

        2.5    启动失败原因

            2.5.1     es.log

        最开始是es.log中的这个

org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root

        由于sonar的启动需要同时启动es和web,所以需要检查这里es.log和web.log,加上sonar.log。

        上面这个异常是es的启动时候的,切换非root用户启动就可以了。

#创建用户组es

groupadd es	

#创建用户组es下的用户es

useradd es -g es

#某个文件夹的权限给es用户组和es用户

chown -R es:es /opt/sonar/sonarqube-7.1/bin/linux-x86-64

 #切换用户

su -es

关于更多es的异常,请看这个    elasticsearch 6.x (二) linux部署 kibana x-pack 安装

                2.5.2    web.log

java.lang.IllegalStateException: Fail to execute ES search request 'SearchRequest xxx on indices '[issues]' on types '[issue]

                我是删除了temp目录和data/es5目录下的全部。执行restart命令。

java.net.BindException: Address already in use

                每次启动前先检查sonar是否停止,有时候命令停不下来,需要执行kill -9命令。

            2.5    访问

    上一张访问成功的图:

            

            2.5    下载汉化插件和修改密码

            我这里已经安装过插件了。

            

        修改密码


3.    sonarqube  scanner 安装

        sonarqube  scanner下载地址    https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner

       下载、解压缩跟同上。

        可以修改配置文件,指定sonarqube的地址,源码地址等等。

        如果是和jenkins svn集成,这里什么都不需要更改。在集成设置配置,每个项目独立配置就好了。

4.    与jenkins集成

        4.1    安装sonarqube插件

SonarQube Scanner for Jenkins

Sonargraph Integration Jenkins Plugin(暂时没用上)

Quality Gates Plugin(暂时没用上)

           

        4.2    配置sonarqube服务器

            

token在修改密码那个页面生成:


              4.3    修改jenkins集成配置

                

            sources:最开始我写的是src/main/java

Caused by: The folder 'src/mian/java' does not exist for 'mytest' (base directory = /root/.hudson/workspace/mytest)

                然后我去上面的目录下看了一下,发现我外层还有一个web,修改sources和binaries就好了。

             4.4      集成成功

                多了个图标,可以链接到sonarqube,不过很慢,直接登录系统看就好了。

        

             4.5      在sonarqube查看项目

            


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/412956.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[css] 你有使用过字体图标吗?它有什么好处?

[css] 你有使用过字体图标吗?它有什么好处? 代替图片,可以减少http请求次数,提高页面加载性能。个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录…

Jqgried树形列表

**************************************Jqgrid树列表***************************************function initGrid_test() {//必要字段:id,name,level,parent,isLeaf,expandedvar topicjson{"response": [{"id": "1", "name&qu…

射频与微波测量之S参数

转自:https://www.cnblogs.com/lyh523329053/p/9128577.html S参数 S散射也叫散射参数。是微波传输中的一组重要参数。由于我们很难在高频率时测量电流或电压,因此我们要测量散射参数或 S 参数。这些参数用来表征RF 元件或网络的电气属性或性能&#xff…

JAVA构造对象的几种方式(构建器、构造器)

大家好,我是烤鸭:今天说一下初始化对象的几种方式:1. 多参数构造器2. 构建器3. 构造器后 get/set方法举个例子:这里有个机构entity,提供一个默认构造器 package com.xxx.xxx.modules.sys.entity;/*** 机构Entity* versi…

[css] 请说说你对vh、vw的理解以及它们的运用场景是什么?

[css] 请说说你对vh、vw的理解以及它们的运用场景是什么? vw: 100vw为视窗的宽度,即1vw是视窗宽度的1%vh: 100vh为视窗的高度,即1vh是视窗高度的1%运用场景图片查看大图:img { max-height: 90vh; }代替rem实现移动端布局个人简介 …

Django框架(十二)-- Djang与Ajax

一、什么是Ajax AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”。即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML,现在更多使用json数据&#xf…

javascript 将table导出 Excel ,可跨行跨列

原文地址&#xff1a;https://www.cnblogs.com/hailexuexi/p/10795887.html <script language"JavaScript" type"text/javascript">//jQuery HTML导出Excel文件(兼容IE及所有浏览器)function HtmlExportToExcel(tableid,file_name) {var filename fi…

[css] css怎么更改表单的单选框或下拉框的默认样式?

[css] css怎么更改表单的单选框或下拉框的默认样式&#xff1f; 下拉框select可以通过appearance:none去除默认样式&#xff0c;然后进行自定义&#xff0c;但是option标签不能通过CSS自定义&#xff0c;所以最佳方案是自定义标签重写select单选框隐藏input标签&#xff0c;自定…

wampserver 搭建 php环境 运行方法

大家好&#xff0c;我是烤鸭&#xff1a;今天分享的是如何用wamp 运行 php代码。1. wampserver下载&#xff1a;下载地址&#xff1a;https://sourceforge.net/projects/wampserver/files/WampServer%203/WampServer%203.0.0/Addons/Php/wampserver3_x64_addon_php7.2.7.exe…

Mysql数据库查询当前操作的数据库名

查询数据库名&#xff1a; select database()查询表结构&#xff1a; select * from INFORMATION_SCHEMA.TABLES where TABLE_NAME表名 and table_schema (select database())

redis的学习使用,第二章

在IDEA里面使用redis&#xff0c;使用架包 jedis-2.4.2.jar 1 public class Main {2 3 public static void main(String[] args) {4 Jedis jedis new Jedis("127.0.0.1",6379);5 //string类型6 jedis.set("java","aga…

[css] 你了解css3的currentColor吗?举例说明它的作用是什么?

[css] 你了解css3的currentColor吗&#xff1f;举例说明它的作用是什么&#xff1f; currentColor是 color 属性的值&#xff0c;具体意思是指&#xff1a;currentColor关键字的使用值是 color 属性值的计算值。如果currentColor关键字被应用在 color 属性自身&#xff0c;则相…

java php des加密 byte数组16进制 DESTools

大家好&#xff0c;我是烤鸭:今天分享的是java 和 php des 加密。因为接口对接&#xff0c;难免不同语言&#xff0c;加密又是必不可少的。作为接口的提供方&#xff0c;必须把加密规则写好&#xff0c;最好有不同语言的加密demo。1. java版本的des加密解密工具类DESTools.j…

BDD框架之Cucumber研究

BDD框架之Cucumber研究 引用链接&#xff1a;http://kongqingyun123.blog.163.com/blog/static/6377283520134158437813/ Cucumber是BDD&#xff08;行为驱动开发&#xff09;中成熟的一个框架&#xff0c;官方网址: http://cukes.info/1、cucumber安装1、安装ruby2、gem insta…

Oracle修改字段的顺序

一&#xff1a;简单粗暴 1,Oracle: create table CFORM_COULUMN_2 as &#xff08;select 字段A,字段B from CFORM_COULUMN);2,Sqlserver select 字段A,字段B.... into CFORM_COULUMN_2 from CFORM_COULUMN二&#xff1a;通过SYS数据库更新字段顺序 1&#xff0c;查询表…

[css] 怎么去掉点击a链接或者图片出现的边框?

[css] 怎么去掉点击a链接或者图片出现的边框&#xff1f; a{text-decoration:none} img{border:0 none}个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

springboot 2.x tomcat war包部署 localhost-startStop-1 启动卡顿卡死

大家好&#xff0c;我是烤鸭&#xff1a; 关于springboot war包部署tomcat。环境&#xff1a;springboot 2.0.3.RELEASEapache-tomcat-8.5.321. 修改pom <?xml version"1.0" encoding"UTF-8"?> <project xmlns:xsi"http://www.w3.org…

高可用Eureka注册中心配置说明(双机部署)

目 录 1. 高可用EureKa注册中心示意图 2. Eureka实例相互注册配置 3. 微服务注册到Eureka配置 4. 启动步骤及配置成功检查 5. 说明事项 1. 高可用EureKa注册中心示意图 Spring Cloud的Eureka Server的高可用实际上就是将自己作为服务向其他服注册中心注册自己&#xff0c;形成…

sql 把特定数据排在最前面

第一法】 select * from table where nameD UNION ALL select * from table where name<>D 第二法】SELECT CASE WHEN [name]D THEN 0 ELSE 1 END FLAG,* FROM TABLE order by flag asc

[css] css的linear-gradient有什么作用呢?

[css] css的linear-gradient有什么作用呢&#xff1f; 概念&#xff1a;线性渐变,向下/向上/向左/向右/对角方向,为了创建一个线性渐变&#xff0c;你必须至少定义两种颜色结点。颜色结点即你想要呈现平稳过渡的颜色。同时&#xff0c;你也可以设置一个起点和一个方向&#xff…