git jenkins SonarQube手动代码质检

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手动代码质检的更多相关文章
- 持续集成工具之jenkins+sonarqube做代码扫描
上一篇我们主要聊了下代码质量管理平台sonarqube的安装部署以及它的工作方式做了简单的描述和代码扫描演示:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13 ...
- jenkins+sonarqube进行代码质量检测
JavaNeverGiveUp教程篇 用jenkins+sonarqube去检查代码是非常方便的,它能检查出代码中可能存在的一些问题,比如io流未关闭.空指针异常.死循环.代码不规范等问题. 1. 搭 ...
- git+jenkins jar包代码的发布加新建项目
1.本地仓库 java开发 把代码上传上来 ,问一下他要上传到的主机ip , 分支 2.本地 , 设置-->仓库 更新数据,让他同步到南阳gitlab, 若没有这个项目,需要创建相同名字的项目 ...
- 自动代码质量分析(GitLab+JenKins+SonarQube)
自动代码质量分析(GitLab+JenKins+SonarQube) 1.需求场景 开发提交代码自动执行代码质量分析. 2.所需应用 GitLab,JenKins,SonarQube 3.架构图 4. ...
- GIt+jenkins代码自动上线
代码自动上线功能 企业部署代码上线是件比较麻烦的事情,还好我们有jenkins这个持续集成的软件可以帮助我们做很多的事情,现在我们就 来测试用jenkins推送代码上线. 我们这里测试的是一个html ...
- Jenkins系列——使用SonarQube进行代码质量检查
1.目标 之前已经写过一篇关于Jenkins和SonarQube的一篇博客<jenkins集成sonar>,本文在参考前文的基础上,做了详细的补充. 使用SonarQube进行代码质量检查 ...
- jenkins实现手动选择分支构建项目-Git Paramater
先下载插件: Git Paramater 参照: jenkins-参数化构建(三)插件:Git Parameter https://www.cnblogs.com/zhaojingyu/p/98624 ...
- jenkins集成sonarQube实现代码质量检查
1.sonarQube的简介 SonarQube是一款自动化代码审查工具,用于检测代码中的错误.漏洞和代码异味.它可以与你现有的工作流集成,以支持跨项目分支和拉取请求的连续代码检查. 其工作流程如下: ...
- 在 k8s 中的 jenkins 集成 sonarqube 实现代码质量检查
不乱于心,不困于情,不畏将来,不念过往,如此安好 --<不宠无惊过一生>丰子恺 概述 关于在 k8s 中安装 jenkins 和 sornarqube 可以查看下面的文章: 在 k8s 中 ...
随机推荐
- windows导出文件名列表
新建txt文件,粘贴以下命令: DIR *.* /B >LIST.TXT 将txt文件的后缀改为.bat 执行bat文件即可
- 云原生生态周报 Vol. 21 | Traefik 2.0 正式发布
作者 | 浔鸣.心水.元毅.源三.衷源 业界要闻 CNCF 计划将 TOC 升至 11 人 技术监督委员会(TOC)是 CNCF 的三大核心管理机构之一,从 2020 年 1 月起,TOC 将从 9 ...
- jenkins上下游工程以及空间占用处理
1.最近项目架构调整,把十几个java项目整合为一个大的项目,这样构建上游工程成功后下游工程会自动构建 解决如下:取消这个勾选即可 2.构建单个项目时,会把所有子工程都打包一次 解决如下:指定构建时的 ...
- C++进程间通讯方式
1.剪切板模式. 在MFC里新建两个文本框和两个按钮,点击发送按钮相当于复制文本框1的内容,点击接收按钮相当于粘贴到文本框2内: 发送和接收按钮处功能实现如下: void CClipboard2Dlg ...
- Android Studio [RecyclerView/瀑布流显示]
PuRecyclerViewActivity.java package com.xdw.a122.recyclerview; import android.support.v7.app.AppComp ...
- Angular 常用命令行
1. ng -v 查看angular-cli是否安装成功.angular-cli的版本号 2. ng new 项目名称 新建angular项目 3. ng g class 类名 动态生成类文件: 4. ...
- Win10下80端口被System占用导致Apache无法启动
Windows10下80端口被PID为4的System占用导致Apache无法启动的分析与解决方案 方法/步骤 最近更新了Windows10,总体上来说效果还是蛮不错的,然而今天在开启Apac ...
- [Machine learning] Logistic regression
1. Variable definitions m : training examples' count \(X\) : design matrix. each row of \(X\) is a t ...
- Redis开发与运维:数据迁移
问题 最近项目重构,提前想把一台上的redis实例转移到另一台redis实例上. 源redis数据库:阿里云Redis.VPC网络.Server版本2.8.19 目标数据库:阿里云Redis.VPC网 ...
- Flutter学习笔记(29)--Flutter如何与native进行通信
如需转载,请注明出处:Flutter学习笔记(29)--Flutter如何与native进行通信 前言:在我们开发Flutter项目的时候,难免会遇到需要调用native api或者是其他的情况,这时 ...