1.使用场景
因为现在项目组的项目未实现自动化发布,所以每次打包部署前各种问题频出,所以整了个简单的脚本,实现部署前的环境选择、代码更新、编译打包这三步骤。
因为部署启动需要到对应环境服务器的权限,还要考虑运行环境、代码拉取、代码更新、状态监测等,实现上还是蛮复杂的(研究这个不如直接研究Jenkins等自动化部署的配置使用)。
2.简单实现
版本1
win10环境下这类按步骤实行的流程,选择用.bat脚本实现,语言不用深究,用啥查啥看的懂就行(语言的本质是相通的),以下是我的打包脚本install.bat,双击运行后输入环境变量即可:
::关闭回显,执行过程不会显示
@echo off
::背景我喜欢白色
color F1
::输入环境简称
set /p ENV="请输入编译环境:"
::根据环境简称映射到工程文件根目录路径,我本地是不同环境代码存不同路径
if %ENV%==dev set fPATH=D:\Git-Version\APP\ybtapp_dev
if %ENV%==uat set fPATH=D:\Git-Version\APP\ybtapp_uat
if %ENV%==pre set fPATH=D:\Git-Version\APP\ybtapp_pre
if %ENV%==prd set fPATH=D:\Git-Version\APP\ybtapp_master
echo ---------------------进入分支路径 ---------------------
cd "%fPATH%"
chdir
echo ---------------------更新分支代码 ---------------------
::开启回显,看代码更新日志,务必看下是否更新正常(大坑,更新失败打包就是上一版本)
@echo on
::我用的Git更新命令,如果是Svn更新换成:call svn update
call git pull
::关闭回显
@echo off
echo ---------------------更新代码结束 ---------------------
echo ---------------------打包分支代码 ---------------------
::开启回显,能看到maven打包日志
@echo on
::这里的环境参数,看情况取用
call mvn clean install -e -DskipTests -P"%ENV%"
::关闭回显
@echo off
echo ---------------------打包代码结束 ---------------------
pause
echo ---------------------打开当前路径 --------------------
::打开当前文件夹,打包结束文件资源管理器自动打开当前路径
start explorer .
双击运行效果如下:
版本2
后来看到个vbs弹窗,觉得不错,就再包了一层,直接windows小窗口输入
首先是install .vbs脚本,里面执行install.bat脚本并传入输入的参数:
Dim name
name=Inputbox("请输入APP打包版本: 可用关键字:uat、prd","APP项目打包")
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c D:\Git-Version\APP\install.bat "&name
install.bat小改下,键盘输入部分注释掉,取用传入的参数:
::输入环境简称
::set /p ENV="请输入编译环境:"
::传入的第一个参数设为环境简称
set ENV=%1
最终效果如下: