xubin 发表于 2022-2-26 13:40:52

知晓:浅谈CICD与项目实战


  持续集成的重点是将各个开发人员的工作集合到一个代码仓库(如Gitlab)中。通常,每天都要进行几次提交,主要目的是早发现,早更正,防患于未然,使团队更加紧密结合,更好地协作。ARTIFACTORYhttps://www.jfrogchina.com/artifactory/一直是行业的佼佼者,在业内好评如潮,备受大众所青睐。
https://www.jfrogchina.com/wp-content/uploads/2017/12/Jfrog-Logo.svg

  持续集成的本质是要自动化测试。如果研发部不具备自动化测试的能力,持续集成怎么做都是失败的。

  持续集成里最重要的一点就是要推行单元测试、集成测试还有系统测试,单测是保证自己没问题,集成测试是保证跟上下游没问题,系统测试是保证整个系统没问题。

  图片来源:https://blog.csdn.net/csdnnews/article/details/104624343

  持续交付的目的是最小化部署或释放过程中固有的摩擦。频繁地将软件的新版本,交付给质量团队或者用户,以供评审。如果评审通过,代码就进入生产阶段。

  持续交付可以看作持续集成的下一步。它强调的是,不管怎么更新,软件是随时随地可以交付的。

  持续交付里很关键的一点就是我们要解决它的环境一致性、配置一致性。可以用Docker解决,Docker 本身就是一种标准化的东西。另外一个问题,配置是不是一致性,是不是动静分离。

  持续交付是一种能力。只有具备持续交付的能力,才能够实现持续部署。

  持续部署是一种更高程度的自动化,无论何时对代码进行重大更改,都会自动进行构建/部署。

  以提高研发效率为目标紧贴实际业务以人为本,尽可能将一切繁琐的过程交给程序去执行

  如果一个团队缺乏统一标准的环境,再努力,也是事倍功半。而使用容器化技术、CI/CD,不仅能让开发环境、测试环境、预发环境、生产环境保持一致,同时也对测试和质量保证有至关重要的作用,能达到事半功倍的效果。

  原文链接:https://blog.csdn.net/csdnnews/article/details/104624343

  开发人员每天都将自己的更改推送到主分支中进行集成,通常,这样的操作每天都会发生很多次。从更高的视角来看,CI 能使开发者更快的发现模块或功能中的错误。持续集成的整个流程如下:

  如果上述任何阶段,出现任何问题(包括测试用例失败),整个 CI 流程将会被停止,并且将错误信息发送给开发人员。

  持续交互在业界被简称为 CD ,是指在自动完成所有的自动化测试代码过后,将通过的代码进行直接部署。

  从本质上来讲,这是软件发布的最佳实践。—— Jez Humble(译者注:Jez Humble,被誉为「持续交付之父」,《DevOps 实践指南》、《精益企业》、《持续交付》作者。)

  持续交互包含以下几点:

  在部署过程中,所有的修改都是单独提交的,因此由部署带来的风险和 Bug 也会相对较少。这意味着,企业能够根据需求,更加快速地开发并部署代码。如果能将 CD 与容器化技术(如 Docker、k8s)配合使用,在云平台上,甚至可以实现不停机部署,这样开发团队就可以在任何时间进行代码部署。

  正如 《Accelerate》一书中所说,软件团队的性能和效率可以通过四个指标来检查。而良好的 CI / CD 的实践可以大大改善四个指标的得分。

  1.交付时间:

  2.部署频率:

  3.平均故障恢复耗时:

  4.变更失败率:

帅气晓维 发表于 2022-3-16 04:51:08

找到好贴不容易,我顶你了,谢了

累累累 发表于 2022-4-15 03:33:09

谢谢楼主,共同发展

钻石翘翘 发表于 2022-6-10 09:41:41

我是来刷分的,嘿嘿

信念 发表于 2022-9-13 18:52:36

才发现昌平也有网络平台,挺好 支持了。

欲望! 发表于 2022-12-15 08:51:19

我是来刷分的,嘿嘿

彩海明灯 发表于 2023-1-4 16:26:06

为自己家乡的社区网贡献点力量,回个帖子
页: [1]
查看完整版本: 知晓:浅谈CICD与项目实战