【发布时间】:2012-06-04 11:13:48
【问题描述】:
我正在配置一个多模块 maven 项目,该项目在 verify 阶段强制执行 sonar:sonar。
我还使用了 sonar 的 build-breaker-plugin 来避免在 sonar 抛出一些警报时部署模块。
这种方法的问题是开发人员应该去声纳服务器检查警报。这还不错,但是如果多个用户尝试同时分析同一个模块,则不可能知道上次/当前分析是否有您的警报。
上下文:我们有一个 CI 系统,每小时构建所有模块。所以有时这会与一些开发人员部署相冲突(这会强制分析)
恕我直言,只有 CI 系统应该将分析提交给声纳服务器,因为 CI 具有最后提交和部署的代码。但是开发人员应该只在本地检查他的更改。
那么,为什么我们要强制在开发人员构建中进行分析?避免部署不遵守代码质量阈值的模块(sonar 的 build-breaker 插件对此有所帮助)。
有没有办法配置 maven-sonar-plugin 来做到这一点?
- 开发人员构建中的本地分析。
- CI 构建中的服务器分析
【问题讨论】:
-
目前尚不清楚为什么允许开发人员
deploy modules而不仅仅是 CI。也许您想要的是开发人员不应该check-in可能破坏声纳的代码? -
我同意你的观点,但最后还是同样的问题:我需要在 scm:checkin 之前运行本地分析。上下文:开发人员负责一些模块,因此允许他们部署 SNAPSHOTS。 CI 旨在验证所有已部署的模块是否已正确集成(构建和执行集成测试)。
-
你达到你想要的了吗?你有没有遇到过这个问题? stackoverflow.com/questions/29099614/…