Jenkins视图与SonarQube使用(小节9)

139 阅读1分钟

Jenkins视图

安装视图插件

图片.png

图片.png

新建视图

图片.png

    1. 第一种视图:Build Pipeline View

图片.png

  • 1.1 定义视图配置信息

图片.png

图片.png

    1. 第二种视图:列表视图

图片.png

图片.png 编辑视图 图片.png

图片.png

    1. 第三种视图:我的视图

图片.png

图片.png

SonarQube使用

sonarsource官网下载地址(LTS):www.sonarsource.com/products/so…

104

添加变量

vim /etc/sysctl.conf 

vm.max_map_count = 262144
fs.file-max = 65536

#使变量生效
sysctl -p

ulimit -n 65536
ulimit -u 2048
vim /etc/security/limits.conf

sonarqube   -   nofile   65536
sonarqube   -   nproc    2048

#创建用户
useradd -m -s /bin/bash sonarqube

103

apt install mysql-server mysql-client -y

ss  -ntl|grep 3306
LISTEN   0         80                127.0.0.1:3306             0.0.0.0:*       

#更改监听地址
vim /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address            = 0.0.0.0

#重启服务
systemctl restart mysql

ss  -ntl|grep 3306
LISTEN   0         80                  0.0.0.0:3306             0.0.0.0:*

#创建数据库
mysql

create database sonar default character set utf8 collate utf8_general_ci;
#授权
mysql> GRANT ALL PRIVILEGES ON sonar.* TO 'sonar'@'%' IDENTIFIED BY '123456';

104

测试能否过去

#安装mysql客户端命令
apt install mysql-client -y
mysql -usonar -p123456 -h192.168.37.103

show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| sonar              |
+--------------------+
2 rows in set (0.00 sec)

exit

上传文件、后解压

cd /usr/local/src
#解压
unzip sonarqube-6.7.7.zip 

软链接

ln -sv /usr/local/src/sonarqube-6.7.7 /usr/local/sonarqube

修改属主属组权限

chown sonarqube.sonarqube /usr/local/sonarqube /usr/local/src/sonarqube-6.7.7 -R

切换用户

su - sonarqube
cd /usr/local/sonarqube

#修改配置文件
vim conf/sonar.properties
...
sonar.jdbc.username=sonar  <--用户名
sonar.jdbc.password=123456  <--密码
...
sonar.jdbc.url=jdbc:mysql://192.168.37.103:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

sonar.jdbc.maxActive=60  <--最大活动连接
sonar.jdbc.maxIdle=20  <--最大空闲
sonar.jdbc.minIdle=2  <--最小空闲
sonar.jdbc.maxWait=5000  <--最大等待
sonar.web.javaOpts=-Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError   <--java选项
sonar.web.host=0.0.0.0   <--监听地址
sonar.web.port=9000    <--端口号、如果和php安装在一起会端口冲突、需要修改

启动

pwd
/usr/local/sonarqube

#启动
./bin/linux-x86-64/sonar.sh start

图片.png

图片.png

图片.png

图片.png

图片.png

图片.png 上传jar包

su - root
#设置密码1234.com
passwd sonarqube
#上传包到此目录
cd /usr/local/sonarqube/extensions/plugins
#权限
chown sonarqube.sonarqube ./

要在sonarqube用户下

su - sonarqube

#切换目录
pwd
/usr/local/sonarqube

#修改权限
./bin/linux-x86-64/sonar.sh restart

遇到问题

` 解决方法 root用户下

tail -f /usr/local/sonarqube/logs/*.log

删除/usr/local/sonarqube/temp目录

rm -rf /usr/local/sonarqube/temp/ `

[Sona安装问题参考]https://www.shuzhiduo.com/A/RnJWZp9rzq

刷新页面成立中文 图片.png

102

需要在Jenkins上、安装包:sonar-scanner-cli

cd /usr/local/src/
#解压扫描器
unzip sonar-scanner-cli-4.0.0.1744-linux.zip

#软链接
ln -sv /usr/local/src/sonar-scanner-4.0.0.1744-linux /usr/local/sonar-scanner

修改配置文件

cd /usr/local/sonar-scanner

vim conf/sonar-scanner.properties
sonar.host.url=http://192.168.37.104:9000    <--

需要到代码目录执行

上传测试软件

cd /opt
unzip sonar-examples-master.zip
#注意路径
cd /opt/sonar-examples-master

#测试代码/语言
cd projects/languages/

#py语言/环境
cd python/python-sonar-runner

#执行扫描
/usr/local/sonar-scanner/bin/sonar-scanner

刷新页面看到 图片.png

图片.png

图片.png

图片.png

pwd
/opt/sonar-examples-master/projects/languages/python/python-sonar-runner

#修改文件
vim src/badfortune.py
...
90    print('Usage: fortune.py <filename>')
91    sys.exit()
92    print(get(sys.argv[1]))

#更改版本号
vim sonar-project.properties
...
sonar.projectVersion=1.0:v1   <--更改版本号、否则会冲突

#执行扫描
/usr/local/sonar-scanner/bin/sonar-scanner

图片.png

图片.png

图片.png