Travis-ci集成构建系统
2015-12-27 13:58
369 查看
travis-ci这款集成构建平台,他和github关系紧密,更关键的是,对于开源项目,永久免费使用,这让我在开发编译器的过程中,有了一款能够方便部署和测试的平台,获益匪浅.
install 安装步骤
script 执行脚本构建和测试
然而又有许多可以插入的流程:
before_install
install
before_script
script
after_success or after_failure
(可选) before_deploy
(可选) deploy
(可选) after_deploy
after_script
由于Ubuntu的版本问题,部分包不一致,默认为12.04版,为了使用对应的Ubuntu版本,可以在
这样可以指定Ubuntu为14.04的版本
然后需要安装什么开发包,都可以用带有sudo的指令直接操作:
注意update是必须的,因为虚拟机的映像并不知道是什么时间安装的,很可能源里面的版本较老。
另外,所有可能需要用户确认的参数都需要加
一种推荐的思路是添加一个权限处理脚本,然后用sh执行它,由于sh是系统程序,肯定能够执行,那么用其引导其他的脚本添加权限和进行调用就好。
https://docs.travis-ci.com/user/customizing-the-build/#Specifying-Runtime-Versions
Travis-ci都能做些什么
对于在github上托管的项目, 他可以根据你的配置, 在ubuntu虚拟机上为你构建项目, 运行测试, 打包发布等工作, 只需你每次提交代码或发pr, 对应的版本都能进过校验工作流程
Travis-ci对于你的每一次提交及每一次pr,都会获取对应的版本,将内容clone到虚拟机中,构建该项目,一般执行的顺序为:install 安装步骤
script 执行脚本构建和测试
然而又有许多可以插入的流程:
before_install
install
before_script
script
after_success or after_failure
(可选) before_deploy
(可选) deploy
(可选) after_deploy
after_script
本质是一台Ubuntu虚拟机
由于是Ubuntu服务器,那么可以方便的安装Ubuntu源里面的内容,大部分开发库都可以自动安装由于Ubuntu的版本问题,部分包不一致,默认为12.04版,为了使用对应的Ubuntu版本,可以在
.travis.yml加入如下配置:
dist: trusty
这样可以指定Ubuntu为14.04的版本
然后需要安装什么开发包,都可以用带有sudo的指令直接操作:
install: - sudo apt-get update - sudo apt-get install -y llvm-3.6-dev libedit-dev flex bison
注意update是必须的,因为虚拟机的映像并不知道是什么时间安装的,很可能源里面的版本较老。
另外,所有可能需要用户确认的参数都需要加
-y,否则脚本到那里肯定会被卡住,最终因超时异常退出
权限问题非常重要
一般在Windows下的开发者很少注意权限问题,但这在linux下十分重要,尤其是一些脚本和可执行文件,如果您的git仓库没有选择关联文件权限的话,那么默认clone的脚本和程序都是没有可执行权限的,那么怎么处理呢?一种推荐的思路是添加一个权限处理脚本,然后用sh执行它,由于sh是系统程序,肯定能够执行,那么用其引导其他的脚本添加权限和进行调用就好。
具体语言的参考
travis-ci是根据语言来选择不同的构建配置的,这点有其优势但也有弊端,不过目前对于绝大部分项目都还是较为合适的,所以我们根据需要,选择对应的语言配置项即可,而且travis-ci支持的语言非常丰富,具体配置方法,请参考:https://docs.travis-ci.com/user/customizing-the-build/#Specifying-Runtime-Versions
相关文章推荐
- Ubuntu 默认壁纸历代记
- Ubuntu Remix Cinnamon 20.04 评测:Ubuntu 与 Cinnamon 的完美融合
- 关于Ubuntu 11.10启动提示waiting for the network configuration的问题
- 在 Ubuntu 桌面中使用文件和文件夹
- 查看github pages文档的方式
- 使用BAE的基于Web.py的简单博客程序
- ubuntu下chrome无法同步问题解决
- Ubuntu Linux使用体验
- 使用 GNOME 优化工具自定义 Linux 桌面的 10 种方法
- 以Ubuntu 9.04为例 将工作环境迁移到 Linux
- VirtualBox虚拟机XP与宿主机Ubuntu互访共享文件夹
- 从USB安装Ubuntu Server 10.04.3 图文详解
- Ubuntu 15.04 正式版发布下载
- Linux-Ubuntu 10.04安装Cadence-ic610 方法总结图解
- Ubuntu 12.04和Windows 7双系统安装图解
- 开机出现:grub rescue的修复方法
- Ubuntu连接Android真机调试
- 你应该选择 Ubuntu 还是 Fedora?
- 100 个最佳 Ubuntu 应用(中)