SonarQube代码质检:1.提交代码-->gitlab-->jenkins抓取-->sonarqube质量检测-->maven编译-->shell-->web集群-->重载服务

SonarQube服务安装
    [root@sonarqube ~]# yum install java -y
    [root@sonarqube ~]# yum localinstall mysql-community-*.rpm -y
    [root@sonarqube ~]# systemctl start mysqld
    [root@sonarqube ~]# mysql
        mysql> create database sonar charset utf8;
    [root@sonarqube ~]# unzip sonarqube-7.0.zip -d /usr/local/
    [root@sonarqube ~]# ln -s /usr/local/sonarqube-7.0/ /usr/local/sonarqube

#配置sonar连接mysql数据库
    [root@sonarqube ~]# vim  /usr/local/sonarqube/conf/sonar.properties

#启动sonar
    [root@sonarqube ~]# useradd sonar
    [root@sonarqube ~]# chown -R sonar.sonar /usr/local/sonarqube
    [root@sonarqube ~]# chown -R sonar.sonar /usr/local/sonarqube-7.0/
    [root@sonarqube ~]# su - sonar -c "/usr/local/sonarqube/bin/linux-x86-64/sonar.sh start"

默认访问的url   http://IP:9000
    用户:admin
    密码:admin
    jenkins: b90b5d70562485f00caeb326a63d496af7aeaf3f    这号码可以生成
    导入插件    
    [root@sonarqube ~]# tar xf sonar_plugins.tar.gz        
    [root@sonarqube ~]# rm -f /usr/local/sonarqube/extensions/plugins/*
    [root@sonarqube ~]# cp -rp  plugins/* /usr/local/sonarqube/extensions/plugins/
    重载服务
    [root@sonarqube ~]# su - sonar -c "/usr/local/sonarqube/bin/linux-x86-64/sonar.sh restart"

如何检测代码:

1.安装sonar-scanner 客户端--->    谁要实现推送代码质检,就在谁上面安装
        [root@jenkins ~]# unzip sonar-scanner-cli-4.0.0.1744-linux.zip -d /usr/local/
        [root@jenkins ~]# ln -s /usr/local/sonar-scanner-4.0.0.1744-linux/ /usr/local/sonar-scanner

2.配置sonar-scanner
    [root@jenkins ~]# vim  /usr/local/sonar-scanner/conf/sonar-scanner.properties
    sonar.host.url=http://sonar.oldxu.com:9000
    sonar.login=b90b5d70562485f00caeb326a63d496af7aeaf3f
    sonar.sourceEncoding=UTF-8
    
    
3.配置hosts解析
    [root@jenkins ~]#  cat  /etc/hosts
        10.0.0.110 gitlab.oldxx.com
        10.0.0.130 sonar.oldxx.com

4.进入代码目录执行客户端检测命令
    /usr/local/sonar-scanner/bin/sonar-scanner \
      -Dsonar.projectKey=php \
      -Dsonar.sources=.
    
    mvn sonar:sonar \
      -Dsonar.host.url=http://sonar.oldxx.com:9000 \
      -Dsonar.login=65e35ff20a89bf3d05b94b1c693b326290337b6c

7.Jenkins配置项目集成SonarQube

----------------------------------------------------------
Sonarqube--------------------->

服务端:
    1.安装sonarqube
    2.配置sonarqube连接数据库
    3.启动sonarqube
    4.访问sonarqube
    5.配置sonarqube的token
    6.导入插件 ( 专用用于检测  java  python  go 语言插件   中文插件)

客户端:   jenkins
    1.解压,软连接
    2.配置客户端,告诉客户端服务端是谁
    3.在客户端上配置Host解析--->指向服务端
    4.测试代码质量检测
        1.使用sonar-scanner 扫描 纯html的代码
        2.使用mvn 扫描 纯java的代码
        ................

jenkins
    1.jenkins安装集成sonarqube的插件
    2.告诉jenkins  sonarqube服务端地址以及token
    3.告诉jenkins  sonar-scanner客户端所在的路径
    4.maven项目集成sonarqube   (pre setup 配置)

git jenkins SonarQube手动代码质检的更多相关文章

  1. 持续集成工具之jenkins+sonarqube做代码扫描

    上一篇我们主要聊了下代码质量管理平台sonarqube的安装部署以及它的工作方式做了简单的描述和代码扫描演示:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13 ...

  2. jenkins+sonarqube进行代码质量检测

    JavaNeverGiveUp教程篇 用jenkins+sonarqube去检查代码是非常方便的,它能检查出代码中可能存在的一些问题,比如io流未关闭.空指针异常.死循环.代码不规范等问题. 1. 搭 ...

  3. git+jenkins jar包代码的发布加新建项目

    1.本地仓库  java开发 把代码上传上来 ,问一下他要上传到的主机ip , 分支 2.本地 , 设置-->仓库 更新数据,让他同步到南阳gitlab, 若没有这个项目,需要创建相同名字的项目 ...

  4. 自动代码质量分析(GitLab+JenKins+SonarQube)

    自动代码质量分析(GitLab+JenKins+SonarQube) 1.需求场景 开发提交代码自动执行代码质量分析. 2.所需应用 GitLab,JenKins,SonarQube 3.架构图 4. ...

  5. GIt+jenkins代码自动上线

    代码自动上线功能 企业部署代码上线是件比较麻烦的事情,还好我们有jenkins这个持续集成的软件可以帮助我们做很多的事情,现在我们就 来测试用jenkins推送代码上线. 我们这里测试的是一个html ...

  6. Jenkins系列——使用SonarQube进行代码质量检查

    1.目标 之前已经写过一篇关于Jenkins和SonarQube的一篇博客<jenkins集成sonar>,本文在参考前文的基础上,做了详细的补充. 使用SonarQube进行代码质量检查 ...

  7. jenkins实现手动选择分支构建项目-Git Paramater

    先下载插件: Git Paramater 参照: jenkins-参数化构建(三)插件:Git Parameter https://www.cnblogs.com/zhaojingyu/p/98624 ...

  8. jenkins集成sonarQube实现代码质量检查

    1.sonarQube的简介 SonarQube是一款自动化代码审查工具,用于检测代码中的错误.漏洞和代码异味.它可以与你现有的工作流集成,以支持跨项目分支和拉取请求的连续代码检查. 其工作流程如下: ...

  9. 在 k8s 中的 jenkins 集成 sonarqube 实现代码质量检查

    不乱于心,不困于情,不畏将来,不念过往,如此安好 --<不宠无惊过一生>丰子恺 概述 关于在 k8s 中安装 jenkins 和 sornarqube 可以查看下面的文章: 在 k8s 中 ...

随机推荐

  1. uboot学习之uboot启动流程简述

    一.uboot启动分为了三个阶段BL0.BL1.BL2:BL0表示上电后运行ROM中固化的一段程序,其中ROM中的程序是厂家写进去的,所以具体功能可能根据厂家芯片而有所不同.功能如下: 初始化系统时钟 ...

  2. JavaScript阻止冒泡事件

    事件兼容 event = event ? event : window.event; js停止冒泡· window.event? window.event.cancelBubble = true : ...

  3. sql server 中常用修改列 ,创建主外键操作

    表结构 CREATE TABLE [staff] ( [id] [varchar](50) NOT NUL L, [name] [varchar](50) NOT NULL, [password] [ ...

  4. 前端基础-BOM和DOM学习

    JavaScript分为 ECMAScript,BOM,DOM. BOM:是指浏览器对象模型,使JavaScript有能力与浏览器进行对象. DOM:是指文档对象模型,通过它,可以访问HTML文档的所 ...

  5. [技术栈]C#利用Luhn算法(模10算法)对IMEI校验

    1.Luhn算法(模10算法) 通过查看ISO/IEC 7812-1:2017文件可以看到对于luhn算法的解释,如下图: 算法主要分为三步: 第一步:从右边第一位(最低位)开始隔位乘2: 第二步:把 ...

  6. Spring boot 官网学习笔记 - Configuration Class(@import)

    推荐使用 Java-based configuration ,也可以使用xml we generally recommend that your primary source be a single ...

  7. SUSE Ceph 增加节点、减少节点、 删除OSD磁盘等操作 - Storage6

    一.测试环境描述 之前我们已快速部署好一套Ceph集群(3节点),现要测试在现有集群中在线方式增加节点 如下表中可以看到增加节点node004具体配置 主机名 Public网络 管理网络 集群网络 说 ...

  8. iOS性能优化-异步绘制

    参考地址:https://blog.ibireme.com/2015/11/12/smooth_user_interfaces_for_ios/ 很久以前就看过这篇文章,但是也只是看过就过了,没有去整 ...

  9. 两句话掌握python最难知识点——元类

    千万不要被所谓“元类是99%的python程序员不会用到的特性”这类的说辞吓住.因为每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生万物 我是谁?我从哪来 ...

  10. Linux 命令个人笔记

    [表示命令]man -f [] 显示一个命令的功能whatis [] 显示一个命令的功能ls -lR | grep '^-' | wc -l 统计一个目录下总共有多少个文件head [-n numbe ...