持续集成与 Travis CI 入门实践
按:作为一个 Description 是 "Dev+Ops" 的博客,竟然从来没写过 DevOps 相关的内容,实在...
持续集成 Continous Integration
1 | +------+ +-------+ +-----------+ +------+ +---------+ +--------+ |
持续集成是指软件个人研发的部分向软件整体部分交付,频繁进行集成,以便更快地发现其中的错误,以及防止分支大幅偏离主干。持续集成的目的,是让产品可以快速迭代,同时还能保持高质量。它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。
而不是为了那个 的图标 xd
Travis CI
Travis CI 为 Github 上面的项目提供持续集成服务(Public 免费,私有仓库收费),只要有新的代码,就会自动抓取,提供运行环境进行测试和构建,还能设置部署到服务器。
Travis CI 几乎支持所有流行语言(当然 VC++ 这种目前还是不支持),可以和 Coveralls 等测试统计工具配合使用,可以和 Docker 等配合部署。
Quick Start
登录 Travis CI
仓库同步完成后,在个人页面里,给需要的项目打钩
在项目根目录添加
.travis.yml
1 | # 这是一个 JS 的例子,配置文件写法参照文档 |
push
在 Travis CI 的状态页面查看构建状态(并获取图标地址)
有意思的玩法
本文参考了
[1] 谈谈持续集成,持续交付,持续部署之间的区别 http://blog.flow.ci/cicd_difference/
[2] 什么是devops,基于Gitlab从零开始搭建自己的持续集成流水线(Pipeline) https://blog.csdn.net/Chengzi_comm/article/details/78778284
[3] 持续集成服务 Travis CI 教程 http://www.ruanyifeng.com/blog/2017/12/travis_ci_tutorial.html
[4] 如何简单入门使用Travis-CI持续集成 https://github.com/nukc/how-to-use-travis-ci