Choerodon猪齿鱼实践之持续交付流水线


在之前的文章《继续集成与继续交给之间的联系和区别》中,我们提到了继续集成与继续交给的基本概念以及两者之间的联系和区别。而本文将更进一步,旨在为我们具体介绍怎么经过Choerodon 猪齿鱼的CD流水线功用来协助项目团队完结继续交给。

什么是继续交给

在进行功用介绍之前,4 I F q &我们先来回顾下继续交给的概念。**继续交给是指在继续. [ d s = z & @ 4集成的根底上,将集成后的代码继续不断地布置到开发、测验或预出产环境进行测H – r 4 o K验与验证的才能。**也就是说) 4 D,继续交给是对非出产环境的每一次改变进行交给,而终究挑选布置到出产环境的将会是一项完好的功用或一组功用,又或者是一项完好的使用或服务。

Choerodon猪齿鱼实践之持续交付流水线

上图很好的展P H k t P N * n e现了继续交给的整个流程,在经过继续集成之后,便能够继续地将代码布置至D ^ G ) G p q开发或测验环境。最终,待全体功用与需求测验检验完结,就能够将其手动布置至出产环境之中。当然,还需求注意的是:

继续交给并不意味着每一次变化都要尽快布置到出产环境。而是意味着每一次变化T ( ~ s ( ^ j都是随时能够布置的。 —— Carl Caum(Caum,2013)

为什么要进行继续交给

众所周知,继续交给是DevOps实践中重要的一环,f Q . v但继续交给能为团队带来哪些好处呢?

  • 快速发布u d u # ! +。能够快速响应业] _ u L务需求,并更快地完结软件价值;
  • 继续交给倡议的频频布置以及主动布置,是继续测验的前提,进而进步y 8 h ^ G V Q ]软件质量;
  • 高质量的软件发布标准。整个交给过程标准化、可重复、可靠;
  • 整个交给过程可视化,便利团队人员了解项目进展;
  • 更先进的团队协作方法。从需求分析、产品n 1 ? K j的用户体验到交互 设计、开发、测+ } ] i s M | a O验、d F 6运维等角色密切协作,比较于传统的瀑布式软件团队,更少浪费。

怎么经过Choerodon完结继续交? & / 8 P u ) =给?

Choerodon渠道经过CD流水线的形式将开发模块与布置模块进行串联,用户只需在流水线中预设对应的布置b b M g : B S l使命或人3 v &工卡点使命,便能将目标使用服务集成后的代码主动布置到开发环境、/ E 4 t I { n %测验环境、预出产环境以及出产环境(流通至出产环境阶段需求经过设置批阅人员)Q H . + # Z。然后再设置人工卡点使命,即可经过邮件与站内信的方法及时告诉到产品负责人或测验人员对新的布置进行检验与测验。

创立继续交给流| s r n [ 1 g Q水线

首先在“布置-使用布置-流水线”菜单页面,点击创立流水线,此刻出现下图的z h J J流水线创立页面。项目人员可在此按需求界说多个流水线阶段,同时也可在各阶段中界说多个使命= % ` y s g 2

Choerodon猪齿鱼实践之持续交付流水线

流水线根底设置

在创立CD流水线时,需自界说该条流水线的称号,并设置该条流水x , x Z c l h线的触发方法为主动触发或是人工触发;

  • 主动触发:满足一切触发条件时,该流水线才会主动履行。若挑选主动触发,则该流水线中阶段一的使命一只能为布置类型的使命来作为触发器。
  • 手动触发:需求手动点击履行,才干触发流水线。若挑选手动触发,则需求为该流水线挑选触发人员(可多选),只有被选中的人员才有权限履行该流水线。若流水线中含有布置使命,则要求触发人员必须拥有流水线中一切布置使命对应的环境权限。

增加与设置阶段

  • 增加阶段;点击阶段之间的增加按钮,即可成功增加一个阶段;此外还支持修改该阶段的称号,设置阶段之间的流通方法,若挑选手动流通,需求为此设置审阅人员(可多选,且默以为其1 A @ ( ; r s间一个人员审阅经过则该使命经过,第一个审阅人员点击间断则该使命间断)。
  • 使命设置;每个阶段下,需求挑选设置对C 1 d g应阶段中使命的履行方法。分别是:使命串行与使命并行f ( p x K 9 4 2,其间使命串行是指阶段中的一切使命从上至: { j s 0 d F I }下依次履行;并行是指阶段中一切使命同时履行,但阶段中使命并行时,此阶段中% ] R k Q ( M `便不能增加人工卡点的使命。
  • 只有当一个阶段中的一切使命均履行成功后,才干进入下一阶段。

增加布置使命

Choerodon猪齿鱼实践之持续交付流水线

为了完结布置流程的可重复性、可靠性以及可伸缩性,继续交给流水线中支持了主动布置的使命类型;但需求在其间装备使用服务、触发版别类型、环境以Q k 2 ] ^ e q d及实例布置的相关信息,具体过程如下:

  • 挑选使命类型为布置后,需填写使命称号,并在项目下挑选一个已存在版别的使用服务;
  • 输入或_ _ L ; J O P {挑选服务版别类型(此处能够挑选默许给出的版别类型或手动输D = Z入自界说@ 2 @ U U的版别类型。若不填写此栏,则默许主动布置该使用服务的一t b q :l } =版别);
  • 挑选环境;只可挑选运转中的环境;
  • 挑选布置形式(布置形式有新建实例和替换实例两种);
  • 挑选布置装备, 此处会根据您选的使用服务与环境主动匹配一切关联的布置装备,您可根据给出的装备信息进行挑选。若所选使用服务与环境暂无对应的布置装备,则需求在布 a g C Y _ Y i A置装备页面创立一个对应R W =的布置装备。

若流水线中仅存在这一个布置使命,那么当开发人员提交代码,跑完CI,生成了满足条件的使用服务版别后(生成的版别称号中须包含在使命中界说的版别类型),该条流水线便会被触发。当流水线中存在多个布置使命,第g 2 + 9 B ` I一次触发流水线时,需求满足其间一切流水线的触发条件(生成满足条件的服务版别)。

增加人工卡点使命

Choerodon猪齿鱼实践之持续交付流水线

人工卡点使命用于为阶段中的布置使命增加控制与审阅人员,指定的审阅人员审阅经往后,流水线才干继续履行。若审阅未不经过,整条流水线便会在此使命节点停止。增加人工卡点使命的过程如# W ^ e下:

  • 挑选人工卡点使命b 7 G H类型后,需求填写使命称号,并挑选审阅人员(可多选);
  • 3 @ G挑选了多个审阅人员,还需挑选审阅形式,其间包含:会签和或签。(会签[ M ; Y R是指所选的审K S F ? % = )阅人员全部审阅经往后才算经过,其间有一人8 d v ~ u f A W挑选停止,则此使命停止;或签是指所选x 3 F @ q c G s &的审阅人员中,一人审阅经往后此使命便经过,一人挑选停e a Z . i d止则此使命停止,以其间第一个审阅+ I d人员的审阅成果为准)。

人工卡点使命创立成功后,当流水线履行到此类型的使命时,会默许经过邮件与站内信的方法奉告审阅人员。在测验与检验了对应的布置之后,审阅人员便可将此使r P + U命审阅经过& O F A ` 6,使得流水线继续履行。

0 Q s w ]查继续交给流水线记载

Choerodon猪齿鱼实践之持续交付流水线

CD流水线的每一次履行,都会产生一条履行记载,每条记载里还包含了一切阶} , ~ N ^ r b段与使命的履行概况。

在“使用布置-3 v K 7 k e m + u布置Y [ / M”菜单页面,项目人员能在列表中检查到流水线布置记载的编O n K * 9 } y号、对应的流水线称号、触发方法、履行者、运转时间以及运转成果;目前,运转成果存在以下几种情况:

运转成果 意义
成功 流水线中一切使命履行成功
失利 流水线中有使命履行失利
履行中 流水线+ & W W 5 { (中有使命正在运转
待审阅 流水线正停留在人工审阅的节点,包含人工卡点与阶段间的人工审阅
已停止 人工审阅时,点击Y f e停止使命,最终流水线为已停止状况
已删除 原流水线已被删除,但是履行记载仍然保存在此页面

在记载列表中,对不同状况的流水线布置能够履行相应的操作。关于履行q 0 d失利的流水线,项目一切者能够重新履行流水线中的一切使命;若流水线状况为待审阅,则需指定的审阅人员审阅后才干继续履行;而关于履W G } ; _ B X 6行中状况的流程,项目一切者能够对其进行强制失利的操作。

点击某条记载的编号,便能检查到该条记载的概况,在此概况页面c p n s 2 Y中,会展现出对应流水线的@ $ @ G o w = }履行概况。其间包含了流水线的触发方法、触发人员、阶段概况以及使命概况。

Choerodon猪齿鱼实践之持续交付流水线

总结

总的来说,继续交给是继续不断地将使用服务布置到交给流水线各种环境中的才能。而与继续交给相关的继续集成、继续& t r & [ c布置、继续测验、1 [ ~ i l R继续反馈以及他们共同效果带来的继续改进,都是DevOps实践落地过程中不可或缺的一部分。

关于猪齿鱼

Choerodon 猪齿鱼作为开源多云使用灵敏全链路技能渠道,是根据开源技能Kubernet[ $ 6 _ I C v g res,Istio,knative,Gitlab,Spring Cloud来完结本地和云端环境的集成K ~ },完结企业多云/混合云使用环境的一致性。渠道经过提供精益灵敏、继续/ M w j } D p交给、容器环境、微服务、H k : l l d ) ! yDevOps等才能来协助安排团队来完结软9 U l 2件的生命周期办理,从而更^ 2 X e ] n $快、更频频地交给更稳定的软件。

愈加具体的内容,请参阅Release Notes和官网。

我们也能够经过以下社区途径了解猪齿鱼的最新动态、产品特性,以及参加社区奉献:

  • 官网:choerodon.io
  • 论坛:forum.choerodon.io
  • Github:github.com/choerodon

欢迎加入Choerodon猪齿鱼社区,共同为企业数字化服务打造一个开放的生态渠道。

本篇文章出自Ch6 l ^ n S eoerodon猪齿鱼社区毛智伟。

发表评论

提供最优质的资源集合

立即查看 了解详情