首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Travis进行持续集成

持续集成(Continuous Integration),简称CI,意思是只要代码有变更,就自动运行构建和测试,反馈运行结果(甚至自动部署到测试环境)。其好处在于,随时发现问题,随时修复。因为修复问题的成本随着时间的推移而增长,越早发现,修复成本越低。持续集成并不能消除bug,而是让他们容易发现和纠正。

Travis CI

Travis CI 是在线托管的CI服务,用Travis来进行持续集成,不需要自己搭服务器,在网页上点几下就好,用起来更方便。它对开源项目是免费的,和GitHub天生一对,如果你的项目是开源的并放在 GitHub 那么使用它很方便。

话不多说,访问其官网 https://travis-ci.org/ ,使用GitHub登录(sign in with github)。Travis 会列出 Github 上面你的所有仓库。

此时你只需要打开项目的那个开关,然后Travis会监听这个仓库的代码变化,在代码push时收到GitHub通知,然后自动获取最新代码,进行CI。下载依赖,运行测试,以及你在配置文件指定的其他动作。

配置文件 .travis.yml

我们需要使用一个配置文件来告诉Travis 一些项目信息,比如使用的语言环境 版本什么的,GitHub仓库有变化时,Travis 就会根据这个文件来执行相应的动作。比如说我们一个node项目(最简单的配置),需要放在项目根目录下

Travis 的运行流程很简单,任何项目都会经过两个阶段,但是这儿我们的node项目在这两个阶段都有默认执行任务

install 阶段:安装依赖 (node默认为 )

script 阶段:运行脚本 (node默认为 )

当然除了这两步,你可以在 script 跑完还可以添加部署阶段(deploy),也可以在安装步骤(beforeinstall)之前、在运行脚本步骤(beforescript)之前或在运行脚本步骤(after_script)之后运行自定义命令。

当您的构建成功或失败时,你可以使用(比如构建文档,或者部署到自定义服务器)或(比如上传日志文件)选项执行其他步骤。

完整的构建生命周期如下:

apt addons 使用apt安装软件包

cache components 缓存目录,缓存不经常更改的内容

install 阶段之前执行

安装依赖

script 阶段之前执行

运行脚本

清理缓存

script 阶段成功时执行 or script 阶段失败时执行

deploy 步骤之前执行

部署

deploy 步骤之后执行

script 阶段之后执行

更多配置可以参阅官方文档 https://docs.travis-ci.com/

构建结果

在构建完后,可以设置通知( ),使用email等来通知我们构建结果

很多开源项目都有一个高大上的 图标,告诉使用者老夫这个项目的测试是跑通的(但是并不是用了CI代码质量就有了保证),如果你的项目构建成功,那么它会为你生成这样一个图标。

不是开源项目怎么办?

如果你的项目不是开源项目,免费的肯定是不能用了。你比较有钱就可以继续使用它(最低配 $129/月)如果不想出钱咋办?下期咱们再聊。

左手代码右手砖,抛砖引玉

给点个赞,好不好啊

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180612B1OEV100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券