Jenkins-一个发行版有多少CI / CD管道?

时间:2019-01-14 00:09:40

标签: git jenkins continuous-integration continuous-delivery

在Git工作流程下使用任何版本,

enter image description here

对于连续交付,我的理解是,需要创建两条詹金斯管道,如下所示:

1)构建管道,该合并管道在每个功能分支(绿色)合并到 Develop 分支(紫色)时触发。管道将在Nexus存储库中推送product-x.y-snapshot.jar。 这个jar的目的是进行质量检查

2)发布管道,该管道在每个新的 Release 分支合并到 Master 分支时触发。管道将在Nexus存储库中推送product-x.y.jar。这个罐子直接投入生产。

两个管道均对每种功能进行自动测试。  在两个管道中运行相同数量的自动测试


1)是否有两个管道足以稳定释放? product-x.y.jar 在该版本中添加了新功能

2)如果是,那么必须如何为构建和发布管道维护二进制工件?使用Nexus ...请提供任何参考

1 个答案:

答案 0 :(得分:1)

1)这个问题没有一个正确的答案-在大多数情况下,两个管道(一个用于功能分支,另一个用于 master 分支)足以创建稳定的管道版本,但通常团队使用三种过渡环境(例如,请参见this文章中的详细信息):

  • Dev 环境:用于在 develop (或功能)分支上运行并运行自动化测试;
  • 质量检查环境:用于提供质量更稳定的代码以供质量检查小组进行测试;
  • 产品环境:用于构建当前位于 master 分支上的可投入生产的代码。

在这种情况下,对于每个登台环境,您可以具有三个管道(或者一个具有用于选择和构建每种类型的环境的参数的管道)。互联网上有很多詹金斯连续交付配置的示例。

2)如果我对您的理解正确,则可以使用Nexus Platform Plugin(请参见this示例)或Nexus Artifact Uploader来维护特定的工件,从而将特定的工件从Jenkins发布到Nexus。