我为我们的 Maven 多项目创建了一个 hudson 作业,其中包含 5 个模块来部署SNAPSHOT
工件到 Maven 存储库。没关系,只要构建成功且没有测试失败即可。但是,现在我想满足以下要求:
- 当一个模块测试失败时,构建应该继续构建并测试其他模块,但会变成黄色。使用
-Dmaven.test.failure.ignore=true
完成,但未满足下一个要求。
-
当模块测试失败时,不应将任何工件部署到 Maven 存储库。其他项目依赖于该项目的快照,而那些项目只想使用没有任何失败测试的最新快照.
- 最好使用 hudson maven 集成而不是免费脚本,我们可以获得 hudson 报告页面(每个模块的红色/黄色/蓝色状态,构建日志错误着色,...)。具体运行 Maven 构建两次(第一次
mvn test -Dmaven.test.failure.ignore=true
, than mvn deploy -DskipTests
)不是一个解决方案,因为它会造成性能损失,并且会混淆 Hudson 报告页面,而且它不是原子的(它在第二个构建中再次从存储库更新)。
有什么办法可以做到这一点吗?
有一个名为的构建后选项将工件部署到 Maven 存储库。如果您不选择即使构建不稳定也可以部署,那么这意味着如果测试失败,它将不会部署任何内容。与-fae
在命令中,事情应该按您想要的方式工作
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)