CI/CD持续集成概念(一)

持续集成

1.集成的概念

1.1.什么是集成

在实际的软件开发中,常常会有如下两种场景:

  • 1.现在有一个电商平台开发,由于平台需要开发的某块较多,此时需要不同的开发人员开发不同的模块,最后将所有人开发好的代码集成到一个系统中,集成完毕后需要对其进行部署上线
  • 2.随着时间的推移,该系统无论是bug修复、还是新功能开发,后续都需要对系统进行不断的更新迭代

1.2.项目软件开发过程

在这里插入图片描述

2.持续集成的概念

2.1.什么是持续集成

持续集成指的是频繁地,一天多次将代码集成到主干
在这里插入图片描述

2.2.使用持续集成带来的好处

  • 1.快速发现错误,每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易
  • 2.节省人力成本
  • 3.加快软件开发进度
  • 4.实时交付

2.3.持续集成的目的

让产品可以快速迭代,同时还能保持高质量

它的核心措施是,代码集成到主干之前,先进行自动化测试,只要有一个测试用例失败,就不能集成,当然持续集成并不能完全的消除bug,而是让他们非常容易发现和改正

2.4.什么情况下使用持续集成

如果项目开发的规模比较小,软件集成不是问题,但是如果项目很大,需要不断添加新功能,或不断的升级产品。则需要进行反复集成,这个时候就需要用到持续集成来简化我们的工作

3.持续交付的概念

3.1.什么是持续交付

持续交付指的是在持续集成的环境基础之上,将代码部署到预生产环境,也就是在开发写好代码之后部署到生产环境中的过程

持续交付:代码开发–单元测试–合并代码–测试–手动–部署到生产

首先将代码编码提交到gitlab仓库,再由jenkins拉取代码,jenkins拉取代码的方式分为手动、自动、定时,常用的为手动,拉到本地后,jenkins再去调用插件去构建、测试,最后将结果返回给开发人员,测试会进行两轮测试,第一轮是测试代码的质量,第二轮测试会进行代码的功能测试最后部署到正式环境

在这里插入图片描述

4.持续部署

持续部署时持续交付的下一步,指代码在任何时刻都是可部署的,最后将部署到生产环境的过程自动化。

持续部署和持续交付的区别就是最终部署到生产环境是自动化的,持续部署指的是将程序部署到正式环境。

持续部署:代码开发—单元测试—合并代码—测试—自动—部署到生产

开发写好代码上传到gitlab,jenkins从gitlab上拉取代码,然后通过各种插件对代码进行测试,对代码进行质量检测,没问题之后部署到正式环境
在这里插入图片描述

5.持续集成实施流程

根据持续集成的设计,代码从提交到生产,整个过程有以下几步

首先提交代码到gitlab,jenkins获取代码然后通过各种插件对代码进行测试,测试完成后就将源码编译成war包,在通过黑盒测试将所有功能进行检测,各项功能都完成后进行部署,部署成功后,如果需要回退就进行回退。

在这里插入图片描述

常见的持续集成实施流程

第一种适用于正式环境,先将代码进行测试然后统计开发,并打标签,然后拉取标签进行编译然后部署

第二种适用于测试环境,直接拉取标签测试编译部署
在这里插入图片描述

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jiangxl~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值