文章目录
  1. 有效版本
  2. 准备工作
  3. 1、搭建sonar环境
  4. 2、配置
  5. 3、Jenkins配置

Jenkins集成Sonarqube管理代码质量

有效版本

  • Jenkins: 2.418
  • sonarqube: 9.2.4
  • gradle: 8.1

准备工作

1、搭建sonar环境

直接利用docker镜像先拉起postgreSQL然后拉起sonarqube即可。

注意:

  • sonar最新版本已经不支持mysql
  • 启动时如果报空间不足执行下面的命令
    1
    2
    3
    4
    sysctl -w vm.max_map_count=524288
    sysctl -w fs.file-max=131072
    ulimit -n 131072
    ulimit -u 8192

Docker镜像启动

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
docker run -d --name postgres -p 5432:5432 \
-v /opt/docker_data/postgres/postgresql:/var/lib/postgresql \
-v /opt/docker_data/postgres/data:/var/lib/postgresql/data \
-v /etc/localtime:/etc/localtime:ro \
-e POSTGRES_USER=sonar \
-e POSTGRES_PASSWORD=sonar \
-e POSTGRES_DB=sonar \
-e TZ=Asia/Shanghai \
--restart always \
--privileged=true \
postgres

docker run \
-d \
--link postgres \
--name sonarqube \
-p 16090:9000 \
-p 16092:9092 \
-v /opt/docker_data/sonar/logs:/opt/sonarqube/logs \
-v /opt/docker_data/sonar/conf:/opt/sonarqube/conf \
-v /opt/docker_data/sonar/data:/opt/sonarqube/data \
-v /opt/docker_data/sonar/extensions:/opt/sonarqube/extensions \
-e TZ=Asia/Shanghai \
-e SONARQUBE_JDBC_USERNAME=sonar \
-e SONARQUBE_JDBC_PASSWORD=sonar \
-e SONARQUBE_JDBC_URL="jdbc:postgresql://postgres:5432/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false" \
--restart always \
--privileged=true \
sonarqube

2、配置

启动后访问16090端口,使用默认的用户名密码登录(admin/admin),登陆后创建项目即可->创建令牌->按照说明配置项目即可。
JDK
JDK
JDK
JDK

完成这一步之后,可以通过你得构建工具进行分析测试了。我这里用的gradle,执行sonar任务一段时间后会在管理页面刷新检测报告。

3、Jenkins配置

Jenkins方面主要是安装`[SonarQube Scanner for Jenkins]插件,安装后按照如图的配置配置即可。
JDK
JDK
JDK

支持一下
您得支持,是我前进的动力.