Travis.ci

来源:互联网 发布:最新网络术语 编辑:程序博客网 时间:2024/05/17 05:15

1.创建一个java的项目

这里写图片描述这里写图片描述

2.上传到github仓库,并在Travis网站(github授权后自动关联)开启该项目的CI(如果没有及时刷新出来可以等个几分钟)

这里写图片描述
这里写图片描述

3.添加.travis.yml文件如下,script是运行的构建shell脚本,push到github。同时观察Travis变化

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

4.很多开源项目都有的build pass图标

这里写图片描述

这里写图片描述

5.直接部署到服务器

(我参考了http://blog.csdn.net/qq8427003/article/details/64921238)
在要部署的服务器上任意文件夹(例如~/下)下创建一个名为.travis.yml文件,然后运行两句shell指令

travis encrypt DEPLOY_USER=root -r sunwu51/travisdemo --addtravis encrypt DEPLOY_PASS=wodemima -r sunwu51/travisdemo --add

注意这里-r指定了仓库,如果是别人的仓库想用你的设置连入服务器是不被允许的。
然后打开.travis.yml文件多了以下内容
这里写图片描述

将这些内容追加到到项目的.travis.yml,然后做出以下改动
这里写图片描述

​ 这里我只是到了~/travisdemo目录下运行了git pull指令,具体部署的方式看自己的项目如何运行,这里换成自己的shell语句就行了(因为前面ssh已经连上了自己的服务器想怎么部署都行了)比如如果是java项目可能需要一个jar包,可以中间部分改成:

......script: mvn packageafter_success:- kill [原来的服务进程]- sshpass  scp target/xxx.jar  $DEPLOY_USER@ServerIP:/desdir/- sshpass -e ssh -o stricthostkeychecking=no $DEPLOY_USER@ServerIP "cd /desdir &&nohup  java -jar xxx.jar &"......

小结:

如果是一个开源的放到github上的项目使用Travis来进行自动化构建和测试是最爽的选择。每次更新代码都会自动构建,上面的那个图标也是动态的,如果本次构建失败,图标就不是pass了。

travis的构建过程是在一台linux机器上完成的,一般是分配的容器(例如docker),执行完毕后容器会被销毁,下次构建是一个新的容器,重新git clone 、mvn test等步骤。