React项目部署脚本

本地脚本 deploy_to_server.sh

# 发布react项目到线上服务器

## 前端构建
npm run build
if [ $? -ne 0 ]; then
  echo "build failed" 1>&2
  exit 1
fi

## 压缩打包
tar -czf build.tar.gz ./build
if [ $? -ne 0 ]; then
  echo "tar create failed" 1>&2
  exit 1
fi

## 传输到远程服务器
scp ./build.tar.gz root@calm-welcome:/root/upload/react-wordpress-website

## 远程执行更新脚本
ssh root@calm-welcome "/bin/bash -x /root/upload/react-wordpress-website/deploy.sh"


线上脚本 deploy.sh

cd /www/react-wordpress-website

## 清理目录
if [ -e "build" ]; then
    rm -rf build
fi

## 解压
tar -xzf ./build.tar.gz
if [ $? -ne 0 ]; then
    echo "tar extract failed" 1>&2
    exit 1
fi

## 移除备份版本
if [ -e "old_release" ]; then
    rm -rf old_release
fi

## 替换部署目录
mv ./release ./old_release
mv ./build ./release