Sonar实战
sonarqube部署
临时性部署
docker run -d --name sonarqube \
-p 9000:9000 -p 9092:9092 \
sonarqube
8.x以上的版本部署
docker run -d \
--name sonarqube_postgres \
-e POSTGRES_USER=sonarqube \
-e POSTGRES_PASSWORD=sonarqube \
-e PGDATA=/var/lib/postgresql/data/pgdata \
-v $PWD/postgresql:/var/lib/postgresql/data \
postgres
mkdir sonarqube_data sonarqube_extensions sonarqube_logs
chown -R 999:999 sonarqube_data sonarqube_extensions sonarqube_logs
docker run -d --name sonarqube_hogwarts -p 9000:9000 -p 9092:9092 --link sonarqube_postgres:db \
-e SONARQUBE_JDBC_USERNAME=sonarqube -e SONARQUBE_JDBC_PASSWORD=sonarqube \
-e SONARQUBE_JDBC_URL="jdbc:postgresql://db/sonarqube" \
-v $PWD/sonarqube_data:/opt/sonarqube/data \
-v $PWD/sonarqube_extensions:/opt/sonarqube/extensions \
-v $PWD/sonarqube_logs:/opt/sonarqube/logs \
sonarqube
学院演练公共服务器
手动安装插件:https://www.sonarplugins.com/
生成token
SONARQUBE_TOKEN=c7a93fb6bb1e3268f7099b0f26672ba43c117bb9
演练项目
git clone https://github.com/SonarSource/sonar-scanning-examples.git
cd sonar-scanning-examples
scanner
- 下载地址:SonarScanner
export SONAR_HOME=/usr/local/Cellar/sonar-scanner/4.2.0.1873
export PATH=$SONAR_HOME/bin/:$PATH
cd sonarqube-scanner
sonar-scanner \
-Dsonar.host.url=http://sonarqube.testing-studio.com:9000 \
-Dsonar.login=$SONARQUBE_TOKEN
通用测试数据分析
sonar-scanner \
-Dsonar.projectKey=generic_demo \
-Dsonar.coverageReportPaths=coverage.xml \
-Dsonar.testExecutionReportPaths=xunit.xml \
-Dsonar.host.url=http://sonarqube.testing-studio.com:9000 \
-Dsonar.login=$SONARQUBE_TOKEN
Web Api与勋章获取
bugs
code_smells
coverage
duplicated_lines_density
ncloc
sqale_rating
alert_status
reliability_rating
security_rating
sqale_index
vulnerabilities
作业1
在自己本地搭建sonarqube服务器,然后分析一个maven项目,把截图贴到回复里