DevOps
Development 和 Operations 的组合, 是一种重视开发人员和运维人员之间沟通协作流程的开发方式, 通过自动化的软件交付, 视软件的构建、测试和发布更加效率且稳定
CI
全称持续集成 ( Continuous Integration )
软件在开发过程会不断地对代码进行提交、检查、测试和构建等一系列流程, 如果这一系列流程都需要人工执行, 难免会出现疏漏, 而且效率低下
持续集成就是实现自动化, 在源码变更后自动执行这一系列流程
CD
包含两个概念, 持续交付 ( Continuous Delivery ) 和持续部署 ( Continuous Deployment )
通常持续集成后得到的构建产物还不能直接部署到生产环境中, 还需要先将构建产物部署到测试环境供测试人员进行一系列测试, 确保代码稳定可靠后, 才由运维人员部署到生产环境给最终用户使用
持续交付就是持续性交付开发好的代码到测试环境中, 从开发阶段进入测试阶段的过程
持续部署则是对持续交付的进一步延伸, 每次代码变更则自动部署的生产环境中, 没有人工干预, 通过频繁的小规模发布达到减少发布风险且快速交付给最终用户使用的目的
平台
- Jenkins
- CircleCI
- Travis CI