没有合适的资源?快使用搜索试试~ 我知道了~
gitlab+jenkins+sonar做代码质量分析(hua 修正版)1
需积分: 0 0 下载量 162 浏览量
2022-08-03
16:26:12
上传
评论
收藏 2.04MB PDF 举报
温馨提示
试读
29页
一、安装前准备 1 三、手工测试 7 五、附 29 一、安装前准备 二、sonarqube5.6 安装
资源详情
资源评论
资源推荐
1 / 29
gitlab+jenkins+sonar 做代码质量分析
目录
一、安装前准备 ............................................................................................................................... 1
#1.环境: .................................................................................................................................. 1
#2.安装 JDK ............................................................................................................................... 2
二、sonarqube5.6 安装 .................................................................................................................. 3
#1.下载安装包 .......................................................................................................................... 3
#2.创建数据库和账号 .............................................................................................................. 3
#3.配置 sonar 参数 .................................................................................................................. 4
#4.安装 SonarQube Scanner ..................................................................................................... 4
#5.安装 SonarQube runner ....................................................................................................... 4
#6.启动 sonar ............................................................................................................................ 5
三、手工测试 ................................................................................................................................... 7
四、Jenkins 安装 .............................................................................................................................. 8
#1.jenkins 安装 ......................................................................................................................... 8
#2. Jenkins 集成 Sonar 进行代码质量管理 ........................................................................... 13
3.配置 gitlab ............................................................................................................................ 15
#4.jenkins 配置 gitlab.............................................................................................................. 18
#5.测试(连 gitlab 一起配置) ............................................................................................. 20
五、附 ............................................................................................................................................ 29
附一:jenkins 升级 ................................................................................................................ 29
一、安装前准备
#1.环境:
centos6.5 64 位,关闭了 iptables、selinux
IP:192.168.0.75
GitLab:8.2.2 我用的是源码编码安装中文版,建立 git 用户为 Gitlab 用户
Jenkins:jenkins2.24
主要作用是中介的作用,通过 gitlab 和 SonarQube 插件,连接 gitlab 和 sonar
如果使用当客户端用 git push 代码就自动触发 jenkins 调用 sonar 做质量分析的话,
需要 gitlab 配置 Web Hooks(web 钩子),发触发事件发给 jenkins
SonarQube:SonarQube5.6 主要是做代码质量分析
2 / 29
内存大小:最小 3G,还是比较卡
#保持主机名和 hosts 名字一致
[root@vm5 ~]# hostname
vm5
[root@vm5 plugins]# cat /etc/hosts
127.0.0.1 localhost vm5 localhost4 localhost4.localdomain4
::1 localhost vm5 localhost6 localhost6.localdomain6
shutdown -r now
#安装 git
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
rpm -ih remi-release-6.rpm
yum install -y git
发现问题:
1. jenskins+gitlab+sonar 3 个整合最低要 3G 内存,还是感觉很卡
2.SonarQube 因为内存 3G 还是很卡,固态磁盘还是卡,所以端口号起得很慢,约 2 分钟
3.jenkins 默认用的是 8080 默认会用 gitlab 冲突,所以需要修改一下端口
#2.安装 JDK
#因为 sonar 是基于 java 的,所以要安装 JDK,其它安装环境要求
#http://docs.sonarqube.org/display/SONAR/Requirements
#如果有 openJDK 则要先卸载
cd /disk1/tools/
rpm -qa | grep java
#去 oracle 官网下载 jdk
# http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
rpm -ih jdk-8u102-linux-x64.rpm
java -version
javac -version
#安装不配置环境变量,可能出现某些类找不到
echo 'export JAVA_HOME=/usr/java/jdk1.8.0_102/' >>/etc/profile
echo 'export JRE_HOME=/usr/java/jdk1.8.0_102/jre' >>/etc/profile
echo 'PATH=$JAVA_HOME/bin:$PATH' >>/etc/profile
tail -3 /etc/profile
source /etc/profile
3 / 29
二、sonarqube5.6 安装
#1.下载安装包
#http://www.sonarqube.org/downloads/
wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-5.6.3.zip
mkdir -p /disk1/app/sonar
unzip sonarqube-5.6.3.zip -d /disk1/app/sonar
ll /disk1/app/sonar
vim /etc/init.d/sonar
#!/bin/sh
#
# rc file for SonarQube
#
# chkconfig: 345 96 10
# description: SonarQube system (www.sonarsource.org)
#
### BEGIN INIT INFO
# Provides: sonar
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: SonarQube system (www.sonarsource.org)
# Description: SonarQube system (www.sonarsource.org)
### END INIT INFO
/usr/bin/sonar $*
chmod +x /etc/init.d/sonar
ln -s /disk1/app/sonar/sonarqube-5.6.3/bin/linux-x86-64/sonar.sh /usr/bin/sonar
chkconfig sonar on
#2.创建数据库和账号
mysql -uroot -p123456
#创建数据库
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY '123456' WITH GRANT
OPTION;
GRANT ALL PRIVILEGES ON sonar.* TO 'sonar'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;
\q
#验证一下账号和密码
mysql -usonar -p123456 -e " show databases;"
4 / 29
#3.配置 sonar 参数
#参考 http://docs.sonarqube.org/display/SONAR/Installing+the+Server
cd /disk1/app/sonar/sonarqube-5.6.3/
cp conf/sonar.properties conf/sonar.properties.orig
sed -i 's/#sonar.jdbc.username=/sonar.jdbc.username=sonar/g' conf/sonar.properties
sed -i 's/#sonar.jdbc.password=/sonar.jdbc.password=123456/g' conf/sonar.properties
sed -i 's/#sonar.web.port=9000/sonar.web.port=9000/g' conf/sonar.properties
egrep "sonar.jdbc.username|sonar.jdbc.password|sonar.web.port=9000" conf/sonar.properties
#修改配置
vim conf/sonar.properties +23
14 sonar.jdbc.username=sonar
15 sonar.jdbc.password=123456
23
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStat
em ents=true&useConfigs=maxPerformanc
105 sonar.web.port=9000
61 sonar.jdbc.maxActive=10
65 sonar.jdbc.maxIdle=5
69 sonar.jdbc.minIdle=2
74 sonar.jdbc.maxWait=5000
76 sonar.jdbc.minEvictableIdleTimeMillis=600000
77 sonar.jdbc.timeBetweenEvictionRunsMillis=30000
#4.安装 SonarQube Scanner
cd /disk1/tools/
http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner
unzip sonar-scanner-2.8.zip -d /disk1/app/sonar
ln -s /disk1/app/sonar/sonar-scanner-2.8/bin/sonar-scanner /usr/bin/sonar-scanner
#修改配置
cd /disk1/app/sonar/sonar-scanner-2.8/conf/
cp sonar-scanner.properties sonar-scanner.properties.orig
vim sonar-scanner.properties
11 sonar.jdbc.username=sonar
12 sonar.jdbc.password=123456
18 sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
#5.安装 SonarQube runner
#http://docs.sonarqube.org/display/SONARQUBE51/Installing+and+Configuring+SonarQube+Runner
cd /disk1/tools/
wget http://repo1.maven.org/maven2/org/codehaus/sonar/runner/sonar-runner-dist/2.4/sonar-runner-dist-2.4.zip
unzip sonar-runner-dist-2.4.zip -d /disk1/app/sonar
ll /disk1/app/sonar
ln -s /disk1/app/sonar/sonar-runner-2.4/bin/sonar-runner /usr/bin/sonar-runner
cd /disk1/app/sonar/sonar-runner-2.4/conf/
cp sonar-runner.properties sonar-runner.properties.orig
5 / 29
vim sonar-runner.properties
11 sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
20 sonar.jdbc.username=sonar
21 sonar.jdbc.password=123456
vim /etc/profile.d/sonar.sh
#-------------添加如下代码-----
#!/bin/bash
SONAR_HOME=/disk1/app/sonar/sonarqube-5.6.3
SONAR_RUNNER_HOME=/disk1/app/sonar/sonar-runner-2.4
PATH=$SONAR_RUNNER_HOME/bin:$PATH
export SONAR_HOME
export SONAR_RUNNER_HOME
export PATH
#------------添加代码结束----------
source /etc/profile.d/sonar.sh
#6.启动 sonar
/etc/init.d/sonar start stop
/etc/init.d/sonar start restart
/etc/init.d/sonar start start
/etc/init.d/sonar start status
#需要等 2-3 分钟,端口号才起来
netstat -atnlp|grep 9000
ps -ef |grep sonar
#登陆:用浏览器登陆,需要运行 1 分钟这样才会出界面
http://192.168.0.75:9000/ 默认密码是 admin admin
#点右上角的 log in,默认用户名和密码是 admin/admin
#去更新中心可以安装中文包
剩余28页未读,继续阅读
有只风车子
- 粉丝: 30
- 资源: 329
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 筷手引流工具.apk
- 论文(最终)_20240430235101.pdf
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0