Travis CI对Python Django项目进行持续集成

Travis CI简介

Travis CI 是目前新兴的开源持续集成(Continuous Integration)构建项目,采用yaml格式,简洁清新独树一帜。目前大多数的github项目都已经移入到Travis CI的构建队列中,据说Travis CI每天运行超过4000次完整构建。

搭建Travis CI

  1. 点击进入Travis CI网页https://www.travis-ci.org/
  2. 用git账号登录Travis CI,进入主界面如下
    Travis CI对Python Django项目进行持续集成_第1张图片
  3. 在下面红框中打开你想要Travis CI自动构建的项目Travis CI对Python Django项目进行持续集成_第2张图片
  4. 点击进入想要查看的项目,此时应该如下图所示Travis CI对Python Django项目进行持续集成_第3张图片
  5. 进入该项目的git库中,在根目录下添加“.travis.yml”文件,文件内填写相应的操作,指定Travis的行为,之后当git上进行commit操作时,Travis CI 便会进行对该项目构建,并显示是否构建通过,同时显示在git上Travis CI对Python Django项目进行持续集成_第4张图片
    Travis CI对Python Django项目进行持续集成_第5张图片

.travis.yml文件编写

以下是使用Travis CI构建Python Django文件的一个例子

language: python
sudo: enabled
services:
    - mysql
python:
    - "3.5"
env:
    global:
     - TRAVIS=true
before_install:
    - mysql -e 'CREATE DATABASE IF NOT EXISTS wechat_ticket;'
    - mv configs.example.json configs.json
# command to install dependencies
install:
    - pip install -r requirements.txt
    
script:
    python manage.py test

其中主要内容在于language,install与Script
language表明了该项目使用的语言
install为配置该项目运行需要的环境,此处,在git的根目录下有requirement.txt文件,里面写有需要的配置,使用上述命令行即可自动完整install
Script中的内容便是你想要对该项目做些什么,如上面写的“python manage.py test”便是对项目进行单元测试,Travis CI 会自动构建整个项目,然后对test.py文件夹进行运行
具体yml文件编写过程见官网

注意事项

  • Travis CI在运行时会构建整个项目,并不是指关心与test相关的文件,当其他的文件出错时,Travis CI构建出错,依然会显示error
  • 在这个例子中,我们搭配了本地的数据库,可能我们会修改本地数据库的信息,比如密码,但是这并不影响Travis CI的构建,Travis CI在运行中会自动配置需要的环境,对于数据库,会使用自己新配好的,所以对Travis CI来说,依旧是默认密码“”,所以在配置settings.py时不要贸然修改数据库密码,会导致密码错误,构建error(血的教训啊)
  • 有人说使用Travis CI进行全自动测试,这个说法是不正确的,或者说是片面的,作者本来以为Travis CI可以自动测试你写的代码的正确性,即直接实现单元测试;但是其实Travis CI只是用来全自动构建的,当你把单元测试的代码写好之后,帮助你运行这些代码
  • 使用Travis CI最好的一点就是你可以在确定构建成功后将代码merge到git上,防止commit错误的代码使得整个项目失败

你可能感兴趣的:(Travis,CI感悟)