关于windows中使用bat脚本一键发版到linux的自动化实现

由于之前用的mac系统, 直接写shell本地运行一键发版开发/测试/生产, 后公司配电脑后调试发版贼麻烦. 于是想着写一个bat脚本直接一键发版岂不美哉. 想到就做!

目标: 实现bat脚本一键去拉代码, 去打包, 传输到linux, 执行写好的shell脚本.


windows中需要一些exe程序来搭桥, 其中我用到了两个 plink.exe 和 pscp:
pscp : 可以连接拷贝文件到linux, 即我使用这个将前端vue的dist目录和后端jar包上传上去
plink.exe: 可以连接linux执行shell脚本, 即再服务器写一些启动脚本,用这个去调用
以上两个工具需要搜索下载,然后放到一个目录即可(很好找,请自行百度哈)

我写了两个bat, 第一个build_datam.bat即git本地操作拉代码和打包, 第二个start_datam_docker.bat传输和执行shell发版

// build_datam.bat    进入f盘 cd到项目路径, 执行git拉代码 和编译打jar包
f: 
cd projects
cd java
cd datamanagement-slave
set startDir=%cd% 
git pull origin master
mvn clean package
TIMEOUT /T 2


// start_datam_docker.bat 首先调用第一个bat, 然后调用shell删除原来运行的程序和jar包,传输新的jar包,并调用shell启动新的程序(我这里用到了docker,所以shell脚本名都含有docker,请忽略)
@echo off
echo start..........

call build_datam.bat


set passwd=g@)20
set name=data-manager-agent-0.0.1-SNAPSHOT.jar
set folder=F:\projects\java\data-manager-agent\target\

plink.exe -batch -pw %passwd%  root@datams cd /root/xings1/solfware/docker/;sh del_docker_jar.sh
pscp -r  -P 22 -pw %passwd% %folder%%name% root@datams:/root/xings1/solfware/docker/
plink.exe -batch -pw %passwd%  root@datams cd /root/xings1/solfware/docker/;source /etc/profile;sh docker.sh restart
echo end



总结

至此结束, 发版自己搭建的测试环境可以直接点一下bat就行了,
生产最好不要这样搞, 可以使用jekins等工具更方便.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值