【预习帖】-测试左移

Sonar实战

sonarqube部署

临时性部署

docker run -d --name sonarqube \
-p 9000:9000 -p 9092:9092 \
sonarqube

8.x以上的版本部署

docker run -d \
    --privileged=true \
    --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

#mac无需执行以下命令,linux需执行
chown -R 999:999 sonarqube_data sonarqube_extensions sonarqube_logs

#docker启动sonarqube
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

访问 http://127.0.0.1:9000
用户名:admin 密码:admin

演练项目

git clone https://github.com/SonarSource/sonar-scanning-examples.git
cd sonar-scanning-examples

sonar-scanner

#login为生成的token

#js项目
sonar-scanner  \
  -Dsonar.host.url=http://127.0.0.1:9000 \
  -Dsonar.login=你sonar生成的token值

#maven项目
mvn clean verify sonar:sonar  \
  -Dsonar.host.url=http://127.0.0.1:9000 \
  -Dsonar.login=你sonar生成的token值

小坑

使用sonar-scanner的时候,会因为以下插件导致扫描失败
AEM Rules for SonarQube插件不支持jdk1.8