SonarQube是一个开源的代码质量管理平台,专用于持续集成分析和测量技术质量,从项目的组合到方法。
部署SonarQube
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| version: '3.7'
services: sonarqube: image: sonarqube restart: always labels: - traefik.http.routers.sonarqube.rule=Host(`sonarqube.yourdomain.com`) - traefik.http.routers.sonarqube.entrypoints=websecure - traefik.http.routers.sonarqube.service=sonarqube - traefik.http.services.sonarqube.loadbalancer.server.port=9000 environment: - SONAR_JDBC_URL=jdbc:postgresql://postgres/sonarqube - SONAR_JDBC_USERNAME=postgres - SONAR_JDBC_PASSWORD=postgres volumes: - extensions:/opt/sonarqube/extensions
volumes: extensions:
|
在Jenkins中集成SonarQube
安装 SonarQube Scanner 插件
配置Jenkins
系统管理 -> 系统配置 -> SonarQube servers
系统管理 -> 全局工具配置 -> SonarQube Scanner
- Name: Scanner
- 自动安装: √
- Install from Maven Central: 选择最新版
添加任务
构建 -> Execute SonarQube Scanner -> Analysis properties
1 2 3
| sonar.projectKey=$project_name sonar.sources=. sonar.exclusions=build/*,dist/*,docs/*
|