竹阶段和Maven生命周期

假设我有一个非常标准的基于maven的
java项目,几乎使用了所有的maven生命周期.在编译时编译,在测试时使用JUnit测试用例,在集成测试/验证时使用自动启动和停止的jetty进行集成测试,在部署时部署到我们的内部maven repo.基本的东西.

这也作为Bamboo服务器上的构建计划运行.目前,只有一个阶段,一个任务有一个任务,执行mvn clean deploy.这可以确保我们的repo上的SNAPSHOT始终是源代码控制中的最后一个版本,可以在没有测试失败的情况下进行编译.

现在,我的感觉是,Bamboo可以做得更多……如果所有事情都在一个孤独的任务中处理,那么所有的阶段,任务和事情是什么?所以我想,也许可能是一个“测试”阶段,一个“集成测试”阶段和一个执行mvn test,mvn verify和mvn deploy的“部署”阶段……但是:每个阶段都有它自己的结帐目录和因此,最后一个阶段必须重新部署整个maven生命周期,包括测试和验证……

什么是将maven映射到竹子的好方法?我没有找到这样的任何示例配置.有没有人以一种连贯的方式做到这一点?或者我应该将测试内容从pom.xml移动到直接配置的Bamboo作业?

最佳答案 从我使用的Bamboo开始,这些阶段在构建方面是独立的实体,每个实体在服务器上都有不同的文件夹.但是,您可以在不同阶段之间共享构建的工件.

Configuring artifact sharing between jobs

这样您就可以使用deploy阶段从Bamboo中的包阶段获取jar.

点赞