跳转至

SonarQube 多分支检测

编译插件

插件地址
https://github.com/mc1arke/sonarqube-community-branch-plugin
git 拉取仓库
git clone git@github.com:mc1arke/sonarqube-community-branch-plugin.git
编译
./gradlew build

下载 sonarqube 插件

将编译后的 jar 包、移动至 sonarqube 插件目录
cp build/libs/sonarqube-community-branch-plugin-1.19.1.jar  /opt/sonarqube/extensions/plugins

配置 sonarqube 配置文件

/opt/sonarqube/conf/sonar.properties 添加以下两行,替换为自己的 plugin 版本
sonar.web.javaAdditionalOpts=-javaagent:./extensions/plugins/sonarqube-community-branch-plugin-1.19.1.jar=web
sonar.ce.javaAdditionalOpts=-javaagent:./extensions/plugins/sonarqube-community-branch-plugin-1.19.1.jar=ce

重启服务

docker compose up -d --force-recreate sonarqube

Sonarqube 多分支代码扫描

SonarQube_job=test-service
GIT_BRANCH=dev
SonarQube_TOKEN=123q32131231231
/usr/local/sonar/bin/sonar-scanner -Dsonar.host.url=${SonarQube_HOST} \
-Dsonar.sources=./ \
-Dsonar.projectname=${SonarQube_job} \
-Dsonar.projectKey=${SonarQube_job} \
-Dsonar.java.binaries=target/classes \
-Dsonar.java.test.binaries=target/test-classes \
-Dsonar.java.surefire.report=target/surefire-reports \
-Dsonar.token=${SonarQube_TOKEN} \
-Dsonar.sourceEncoding=UTF-8 \
-Dsonar.branch.name=${GIT_BRANCH}

查看效果

查看效果
image-20240731111100028