也许大家作为程序员,已经写了一手漂亮的代码。关于持续集成和发布,很多人可能还有困惑,我甚至看到过,很多开发,找到开发环境里的某某jar包,apk包,exe文件,就直接丢给客户发布了。这样做肯定是不对的。我今天就来聊聊发布大致有哪些流程。
假定我们从0开始作手准备开发一个项目。
- 需要准备一个代码仓库(github、gitlab、svn、或者自建一个git仓库也可以)
- 准备一台设备,用来做编译
- 准备一个自动化发布工具(如Jenkins,docker,devops等)并配置好相关的用户权限,哪些用户对应哪些项目。
- 配置好编译设备和发布设备之间的权限
对应的实际流程是
持续开发 [@个人设备]
- 开发埋头开发代码
- 写好对应模块的单元测试
- 提交到 [@代码仓库]
持续交付 [@编译设备]
- 下载 [@代码仓库]里最新代码。
- 编译项目,运行单元测试,通过则继续
- 编译完毕后,生成目标文件
持续发布
- 把 [@编译设备] 上的目标文件移动到服务器
- 重启服务/热部署