来源于互联网
# 一、什么是持续集成?
Travis CI提供的是持续集成服务(Continuous Integration,简称CI)。它绑定Github上面的项目,只要有新的代码,就会自动抓取。然后,提供一个运行环境,执行测试,完成构建,还能部署到服务器。- 持续集成指的是只要代码有变更,就自动运行构建和测试,反馈运行结果。确保符合预期以后,再将新代码"集成"到主干。
- 持续集成的好处在于,每次代码的小幅变更,就能看到运行结果,从而不断累积小的变更,而不是在开发周期结束时,一下子合并一大块代码
# 二、.travis.yml
Travis 要求项目的根目录下面,必须有一个
.travis.yml文件。这是配置文件,指定了Travis的行为。该文件必须保存在Github仓库里面,一旦代码仓库有新的Commit,Travis就会去找这个文件,执行里面的命令
- 这个文件采用
YAML格式。下面是一个最简单的Python项目的.travis.yml文件
language: python
script: true
@前端进阶之旅: 代码已经复制到剪贴板
language字段指定了默认运行环境,这里设定使用Python环境script字段指定要运行的脚本,script: true表示不执行任何脚本,状态直接设为成功
面是一个稍微复杂一点的.travis.yml
language: python
sudo: required
before_install: sudo pip install foo
script: py.test
@前端进阶之旅: 代码已经复制到剪贴板
# 三、运行流程
Travis的运行流程很简单,任何项目都会经过两个阶段install阶段:安装依赖script阶段:运行脚本
# 3.1 install 阶段
install字段用来指定安装脚本
install: ./install-dependencies.sh
@前端进阶之旅: 代码已经复制到剪贴板
- 如果有多个脚本,可以写成下面的形式
install:
- command1
- command2
@前端进阶之旅: 代码已经复制到剪贴板
- 上面代码中,如果
command1失败了,整个构建就会停下来,不再往下进行。 - 如果不需要安装,即跳过安装阶段,就直接设为
true。