概念普及
ci (Continuous integration) 持续集成
cd(Continuous Delivery)持续交付
cd (Continuous Deployment) 持续部署
CICD一般流程
一般中等规模的互联网公司都会有四套环境:
开发(dev)
测试(test )
预生产(pre)
生产(prd)
完整流程应该是将代码先合并到 test 分支,如下:
- 提交代码合并到 test 分支。开发人员向 test 分支提交代码。推代码操作自动触发构建(build),就是将源码转换为可以运行的实际代码。
- 第一轮测试。测试人员拿 test 分支代码构建出的程序包运行测试,如果测试不通过,把结果返回给开发人员,开发继续修改代码提交到 test 分支,再自动打包,以此循环,直到测试通过进入下一步。
- 提交。开发人员将测试通过的 test 分支代码合并入 pre 分支,自动构建打包。
- 第二轮测试。测试人员拿 pre 分支代码构建出的程序包运行测试,如果测试不通过,把结果返回给开发人员,开发继续修改代码提交到 test 分支,再自动打包,以此循环。注意是直接打回到最底层的 test 分支,重新来过。
- 部署。pre 的包测试没问题后,后续 prd 环境就直接使用 pre 环境的包,生产环境的部署一般都是由运维人员操作。