31 lines
544 B
Bash
Executable File
31 lines
544 B
Bash
Executable File
#!/bin/bash
|
|
# 严格模式
|
|
set -euo pipefail
|
|
|
|
PROJECT_ROOT=$(cd -- "$(dirname "${BASH_SOURCE[0]}")/.." &> /dev/null && pwd)
|
|
REMOTE_SERVER="02"
|
|
REMOTE_DIR="/srv/docker/nginx/www/blog"
|
|
|
|
cd "${PROJECT_ROOT}"
|
|
|
|
pnpm run build
|
|
|
|
tar -czf dist.tar.gz ./dist >/dev/null 2>&1
|
|
|
|
scp dist.tar.gz "${REMOTE_SERVER}:${REMOTE_DIR}"
|
|
|
|
ssh "$REMOTE_SERVER" bash -s -- "${REMOTE_DIR}" << 'EOF'
|
|
REMOTE_DIR="$1"
|
|
|
|
set -euo pipefail
|
|
|
|
cd "${REMOTE_DIR}"
|
|
rm -rf dist
|
|
tar -xzf dist.tar.gz
|
|
rm dist.tar.gz
|
|
EOF
|
|
|
|
rm -rf dist
|
|
rm -f dist.tar.gz
|
|
echo "部署完成"
|