npm/vue项目自动部署脚本

1. 前提

  1. 安装npm环境
  2. 发布的都是静态文件,需要用到nginx或者需要放到项目中

2. 说明

  1. 首先通过Git更新本地的文件
  2. 通过npm编译项目
  3. 清除发布目录的旧文件
  4. 将编译好的文件复制到生产目录

3. 脚本文件

#! /bin/bash

##总说明
##编译该项目并发布到指定目录下
##运行改脚本请使用 sh -x build_prod.sh 或者 ./build_prod.sh
##如果出现权限不够 请使用 chmod +x build_prod.sh

d=`date "+%Y-%m-%d %H:%M:%S"`
st=`date -d "${d}" +%s`
echo "--------------------当前日期:${d}--------------------"

echo "--------------------拉取项目--------------------"
git pull origin master
echo "--------------------拉取项目完成...--------------------"

dist="/first/application/projects/collapse-view/dist/*"
echo "--------------------源码目录:${dist}"

product="/first/application/ui/collapse-view"
echo "--------------------生产目录:${product}"

#编译项目
d=`date "+%Y-%m-%d %H:%M:%S"`
echo "--------------------开始编译项目-${d}----------------------"
npm run build:prod
d=`date "+%Y-%m-%d %H:%M:%S"`
echo "--------------------编译项目完成-${d}----------------------"


#清空发布目录的文件
echo "--------------------开始清除发布目录文件--------------------"
cd ${product}
for file in ${product}/*; do
  fileName=${file#*.}
  echo "-------------------->删除:${fileName}"
  rm -rf ${fileName}
done
echo "--------------------清除发布目录文件完成--------------------"

echo "--------------------复制文件--------------------"
#复制编译好的文件到发布目录
cp -rf ${dist} ${product}

d=`date "+%Y-%m-%d %H:%M:%S"`
##计算耗时
ed=`date -d "${d}" +%s`
tt=$[ed-st]
fen=0
second=${tt}
if((tt>60));then
  fen=$[tt/60]
  second=$((tt%60))
fi

echo "--------------------完成:${d}--------------------"
echo "--------------------耗时:${fen}${second}秒--------------------"



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章