持续集成(CI Continuous integration/CD Continuous Deployment)的含义其实是在研发过程中团队开发成员持续性的将他们的工作集成到一个完整流程中,通常每个成员每天至少集成一次,每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。持续集成的主要流程如下:
整理研发体系里,开发、测试、运维的流程以及可集成部分包括:
-
- 开发:完成代码编写或修改,将代码提交到版本库合并后打包项目,可以集成的部分为:
-
-
- 从源码版本管理工具(比如SVN、git)中拉取源码
- 基于版本源码使用编译工具完成打包(maven/gradle/ant等),执行单元测试,形成可以部署或安装运行的应用(war或者jar包等)
-
-
- 运维:在编译打包生成了可部署的项目后,部署到各种环境上,整个过程都可以进行持续集成
-
-
- 将可部署的项目,通过部署脚本流程(shell、bat、docker命令等)完成服务器环境上的部署
-