CI/CD自动化【核心:①流水线:将开发之后的测试、部署等所有过程定义为流水线;②自动化:将流水线中每个过程编为脚本,可以自动执行】【持续集成(CI)、持续交付/持续部署(CD)】
CI/CD 是一种通过在应用开发阶段引入自动化来频繁向客户交付应用的方法。
- CI指持续集成(Continuous Integration),代码的更新会定期构建、测试并合并到主分支;
- CD可以指持续交付(Continuous Delivery),开发人员对应用的更改会自动进行测试,然后由运维团队部署到生产环境;
- CD也可以指持续部署(Continuous Deployment),自动将开发人员的更改从存储库发布到生产环境,以供客户使用;
关于CI和CD的具体定义,尚有争议,比如有的定义里,CI包含了CD的内容
实际工作中,整个CI/CD流水线均在硬件配置较高的机器上运行、并且与公司内部的gitlab深度绑定
CI / CD的采用改变了开发人员和测试人员如何发布软件。