求教:如何实现SonarQube与Upsource的集成?
SonarQube与Upsource集成实现经验分享
我之前帮团队完成过SonarQube和Upsource的集成,用的就是你提到的这个0.1-SNAPSHOT版本插件,给你梳理几个关键注意点,应该能帮到你:
补全配置项:你提到的配置内容没写完,完整的必填配置要覆盖这些项:
sonar.upsource.url:Upsource的完整访问地址(比如http://your-upsource-host:1111)sonar.upsource.project:Upsource后台能查到的项目IDsonar.upsource.revision:要匹配的SVN版本号(需确保该版本已被Upsource索引)sonar.upsource.login&sonar.upsource.password:拥有Upsource项目读写权限的账号密码
这些属性可以写在SonarQube的全局配置文件里,也可以在运行SonarScanner时通过命令行参数传递(比如-Dsonar.upsource.login=xxx)。
插件安装与生效:把
upsource-sonar-plugin-0.1-SNAPSHOT.jar放到SonarQube的extensions/plugins目录后,一定要重启SonarQube服务,否则插件不会被加载。版本兼容性检查:这个早期插件只兼容SonarQube 6.x左右的版本,如果你的SonarQube是7.x及以上版本,大概率会出现兼容性问题,建议先确认插件支持的SonarQube版本范围。
运行验证命令:配置完成后,在项目代码目录下执行SonarScanner命令测试,示例如下:
sonar-scanner -Dsonar.projectKey=your-project-key -Dsonar.sources=. -Dsonar.upsource.url=http://your-upsource-host:1111 -Dsonar.upsource.project=your-upsource-project-id -Dsonar.upsource.revision=1234 -Dsonar.upsource.login=admin -Dsonar.upsource.password=admin执行完成后去Upsource的项目页面,检查代码审查或统计模块是否能看到SonarQube的分析结果。
日志排查问题:如果集成失败,优先查看SonarQube的
logs/sonar.log日志,里面会有插件的具体报错信息——比如权限不足、Upsource地址不通、版本号未被索引等,根据日志定位问题会更高效。
内容的提问来源于stack exchange,提问作者Tanzy
相关产品推荐
相关产品推荐

