您现在的位置是:网站首页> 编程资料编程资料
jenkins 实现shell脚本化定时执行任务的方法_linux shell_
2023-05-26
312人已围观
简介 jenkins 实现shell脚本化定时执行任务的方法_linux shell_
1.开发需求socket连接的auction拍卖jar包服务更新重启前半小时切走nginx的访问请求。
socket发起请求之后不需要nginx执行交互可以断开了,但是socket这个任务在auction拍卖任务没结束前重启auction就会出问题。
解决访问是jenkins构建好之后将jar远程推送到生产服务器,提前退出后台执行服务器远程脚本,脚本通过ngnx提前切走nginx代理auction sleep 1800s,半小时后执行更新重启。





指定构建目录获取同级依赖
#!/bin/bash # 脚本中只要出现执行不是true的语句,就退出不再往下执行 set -e sed -i 's/server 192.168.0.31:8090/#server 192.168.0.31:8090/g' /home/nginx.proxy/conf/nginx.conf /home/nginx.proxy/sbin/nginx -s reload sleep 1800s # 导入环境变量 export jar_PATH=/data/web export APP_PATH=/home/auction # 判断老的进程是否存在,若存在就杀掉 killjar() { pid=`ps -ef|grep auction |grep java |awk '{print $2}'` echo "auction Id list :$pid" if [ "$pid" = "" ] then echo "no auction pid alive" else kill -9 $pid fi } # 调用函数 killjar # 判断老的jar包是否存在,若存在就删除 [ -f $APP_PATH/auction-1.0-SNAPSHOT.jar ] && \ rm -rf $APP_PATH/auction-1.0-SNAPSHOT.jar # 更新最新的jar包 if [ -f $jar_PATH/auction-1.0-SNAPSHOT.jar ]; then mv $jar_PATH/auction-1.0-SNAPSHOT.jar $APP_PATH fi # 重新启动 cd $APP_PATH #nohup java -jar -Dspring.config.location=/home/auction/config/application.yml auction-1.0-SNAPSHOT.jar >/dev/null 2>&1& nohup java -jar auction-1.0-SNAPSHOT.jar >/dev/null 2>&1& # sleep 10秒, 等待java进程完成起来 sleep 5s sed -i 's/#server 192.168.0.31:8090/server 192.168.0.31:8090/g' /home/nginx.proxy/conf/nginx.conf /home/nginx.proxy/sbin/nginx -s reload echo 'Start success!'
到此这篇关于jenkins 实现shell脚本化定时执行任务的文章就介绍到这了,更多相关jenkins实现shell脚本定时执行任务内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
您可能感兴趣的文章:
相关内容
- shell脚本查看k8s日志介绍_linux shell_
- shell中的流编辑器awk工作原理_linux shell_
- 结合示例说明shell是如何被解析的_linux shell_
- shell中的排序算法示例代码_linux shell_
- shell实现Fisher–Yates shuffle洗牌算法介绍_linux shell_
- 隐藏shell脚本内容的工具 shc详解_linux shell_
- Linux系统上实现定时重启Tomcat服务脚本介绍_linux shell_
- shell脚本for循环实现文件和目录遍历_linux shell_
- Shell编程控制结构的基本使用_linux shell_
- Shell编程条件测试的实现_linux shell_
