08335 / hivui-platform-template
hivui平台项目模板
Newer
Older
hivui-platform-template / build / bin / oper.sh
caibinghong on 9 Sep 2021 add
#!/bin/bash
## 权限问题,用  chmod u+x *.sh
## eg:
## cd /mobileproject/$1/XcxProject hivui create $1
if [ $# -gt 4 ] ; then
    echo "$3 操作命令有误,请重新输入!"
    exit 1
fi

basePath='/opt/eap5/desktop'
tagPath=$basePath'/preview'
tmpPath=$basePath'/project-template'
workName=$1
projectName=$2
oper=$3
uploadPath=$4

  

## aaa=$(pm2 id "vite-${workName}-${projectName}")
## [] 说明服务有启动但是,没有执行
## if [ ${#aaa} = 2 ] ; then
##	echo "==================="
## fi

## 参数  工号$1  项目名$2  端口$3
## 工号=工作空间
## 1、判断工作空间 没有就创建
if [ ! -d "${tagPath}/${workName}" ];then
    echo "${oper} 命令: 工作空间不存在!"
    exit 1
fi

## 2、判断项目名
# if [ ! -d "${tagPath}/${workName}/${projectName}" ];then
#     echo "${oper} 命令: 项目名不存在!"
#     exit 1
# fi

## 返回预览目录
# cd ${tagPath}/${workName}/${projectName}/deploy


if [ $3 = "restart" ] ; then
    ### 用pm2管理,用pm2 重启指定的
    pm2 restart "vite-${workName}-${projectName}" 
    #yarn run pm2:restart vite-${workName}-${projectName}
fi

if [ $3 = "start" ] ; then    
    pm2 delete "vite-${workName}-${projectName}"
    ### 用pm2管理,用pm2 重启指定的
    cd ${tagPath}/${workName}/${projectName}/deploy
    yarn run pm2:start
fi

if [ $oper = "kill" ] ; then
    ### 用pm2管理,用pm2 重启指定的
    pm2 delete "vite-${workName}-${projectName}" 
    #yarn run pm2:kill vite-${workName}-${projectName}
fi

if [ $oper = "stop" ] ; then
    ### 用pm2管理,用pm2 重启指定的
    pm2 stop "vite-${workName}-${projectName}" 
    #yarn run pm2:stop vite-${workName}-${projectName}
fi

if [ $oper = "del" ] ; then

    curPid=`pm2 pid vite-${workName}-${projectName}`
    if [ ! -z "$curPid" ];then
        echo "vite-${workName}-${projectName} 服务正在关闭!"
        pm2 delete "vite-${workName}-${projectName}" 
    fi

    ### 删除用户项目
    cd "${tagPath}/${workName}"
    rm -r -f "${projectName}"
    echo "vite-${workName}-${projectName} 删除成功!"

fi



if [ $oper = "build" ] ; then
    ### 用pm2管理,用pm2 重启指定的
    cd "${tagPath}/${workName}/${projectName}/deploy"
    npm run build
    #yarn run pm2:stop vite-${workName}-${projectName}
    cd "${tagPath}/${workName}/${projectName}/deploy/"
    zip -q -r "${workName}_${projectName}_dist.zip"  ./dist

    if [[ ! -d "$uploadPath" ]]; then
        echo "${oper} 命令: 上传文件夹不存在, 正在帮您创建目录..."
        mkdir -p "${uploadPath}"
    fi

    cp -f "${workName}_${projectName}_dist.zip"  "${uploadPath}"
    # echo "(‐^▽^‐) 恭喜您 ${oper} 命令,很顺利的执行完毕!"
fi