Maven在pom.xml VS jenkins构建后动作中部署配置

时间:2013-12-23 15:00:41

标签: maven jenkins continuous-integration nexus artifactory

实际上我看到两种替代方案如何将我的项目部署到NEXUS:

  1. distributionManagement中配置deploy-pluginpom.xml。在jenkins,我应该只调用mvn deploy,我的项目将被部署到环境
  2. 在Jenkins中创建Post-build Actions - > Deploy artifacts to maven repository,我可以设置repository URLrepository ID等等
  3. 问题

    每种方法相互比较的利弊是什么?

2 个答案:

答案 0 :(得分:3)

如果您在Jenkins构建配置中配置部署,那么您正在做两件事

  • 您正在将部署与项目本身分开,因此可能可以为同一项目进行不同的部署
  • 从版本控制设置/源代码中删除部署设置

如果您使用默认的Maven设置将其保留在pom中,则可以在任何正确设置凭据的计算机上运行部署项目而无需修改命令行。这可以极大地帮助进行故障排除,并使设置独立于您使用的任何CI服务器。

这两种方法以及更多自定义设置,例如使用Artifactory Build Integration或Nexus Staging Maven插件使用都可以。这主要取决于你的目标。

我个人认为配置不应该与Jenkins隔离,并且应该保留在pom中的项目中。但那只是我的2c。

答案 1 :(得分:1)

感谢您添加Artifactory标记,现在我可以再给您一个选项 - Artifactory Build Integration。使用Artifactory Jenkins插件,您可以配置部署选项(目标存储库,无论您是否要部署构建信息,环境变量和自定义属性等),而不会仅通过ci-eyes信息污染您的开发人员。