k8s 学习笔记
CI / CD 基本原理
CI/CD 是两个流水线,持续集成 Continuous Integration(CI)是服务构建流程,持续部署 Continuous Deployment(CD)是服务发布流程。也可以视作三个流水线,加上持续交付 Continuous Delivery(CD)给测试和质量团队的中间过程。
持续集成(CI)
持续将代码集成到主干。
好处:
- 快速发现错误,定位比较容易
- 防止分支大幅偏离主干
持续集成强调开发人员提交了新代码之后,立刻进行构建、测试。根据测试结果来判断新代码是否和原有代码正确集成在一起。
持续交付(CD)
Continuous Delivery
频繁地将软件的新版本交付给质量团队或用户,以供评审。如果通过,代码就进入生产阶段。
持续交付强调的是代码不管怎么更新,软件是随时可以交付的。
自动部署到类生产环境完成更多的测试,如果代码没有问题,可以继续手动部署到生产环境中。
持续部署(CD)
Continuous Deployment
和持续交付的区别在于自动化部署到生产环境。
持续部署强调的是代码在任何时刻都是可部署的,可以进入生产阶段。
持续部署的前提是能自动化完成测试、构建、部署等步骤。
Jenkins
开源 CI&CD 软件 官方网站