说来挺有意思,最近很忙,以前由于前公司裁人,现找了一家离家近的公司。纯粹为了离家近,没想到接的新项目计划2个月完成压缩到了25天交付。好在我是个有责任担当的人,基本天天都加班,周末也是。java
新公司测试组的现状是产品打版本是直接在IDEA里,直接运行, 因而常常会赶上本地打包失败(由于须要import一些什么进来),每次这样的状况都须要开发来排查,这个流程原本就是很是落后的。因而我引入了持续集成的持续发布。 秒发布一个版本,这样取得的效果是开发同事过来讲,你这个发布那么快,好厉害^-^; 架构师跑过来,看到我在写shell脚本,说测试会作这些很是少见。,新近公司最重要的就是获得同事和领导的承认了。shell
下面总结了持续发布的几个重要知识点(按照步骤去百度搜索结果一大把):数据库
1. 有jenkins环境,你要jenkins机器上要安装maven,jenkins管理界面里,要安装maven插件;jenkins里配置ssh远程发布内容和远程执行命令服务器
1.1 maven clean install 打包(这个问开发,开发确定会)微信
1.2 修改配置文件架构
1.2.1 打出来的包要想好是哪一个环境使用,一些配置文件能够在jenkins拉取代码,maven打包前就修改好; 也能够在maven打包出来的jar或者war包,解压修改; 我的推荐前者运维
1.2.2 测试环境和测试数据库要和开发分开,测试须要本身的测试数据库,本身配置一个ssh
1.3 将war包或者jar包经过jenkins的ssh插件发布到测试应用服务器上maven
1.4 经过ssh插件远程执行命令,关闭当前启动的应用,运行新的war包测试
1.4.1 你要会一些shell脚本,来远程执行shell命令, 循环关闭进程的shell脚本,网上一搜一大把
1.4.2 (坑1)你要在shell文件里 使用 这个命令不然 会报错,不少系统变量都会找不到
source /etc/profile
1.4.3 (坑2)你要这样运行你的jar包,不然java启动后会随着构建结束而自动退出
JAR_PACKAGE=`ls|grep YOUR_PACKAGE*.jar` BUILD_ID=dontKillMe nohup java -jar ${JAR_PACKAGE} >nohup.out &
1.5 好了,接下来就是在jenkins里点【马上构建】,随时发布了
让发布自动化,能够把精力花在找更多的bug上了。
聚沙成塔,滴水穿石,但愿有所进步!
做者: 梅梅~
出处: https://www.cnblogs.com/keeptesting
关于做者:专一软件测试,测试运维相关工做,请多多赐教!
本文版权归做者和博客园共有,欢迎转载,但未经做者赞成必须保留此段声明,且在文章页面明显位置给出, 原文连接 欢迎沟通交流加微信联系。 微信:yangguangkg20140901 暗号:博客园.