feat: add blog deployment script
Some checks failed
Linter / lint (push) Failing after 9s
Test / unit-test (push) Failing after 7s

- Build blog with pnpm blog:build
- Clear target directory before deployment
- Copy dist files to /home/yuany3721/webpages/blog/
This commit is contained in:
yuany3721 2026-04-05 23:39:32 +08:00
parent 4be218d012
commit 7989a8586b

74
deploy-blog.sh Executable file
View File

@ -0,0 +1,74 @@
#!/bin/bash
# Blog 部署脚本
# 功能:构建博客并部署到服务器指定目录
set -e # 遇到错误立即退出
# 配置
SOURCE_DIR="examples/blog/docs/.vuepress/dist"
TARGET_DIR="/home/yuany3721/webpages/blog"
# 颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
echo -e "${YELLOW}========================================${NC}"
echo -e "${YELLOW} 开始部署博客${NC}"
echo -e "${YELLOW}========================================${NC}"
echo ""
# 检查是否在项目根目录
if [ ! -f "package.json" ]; then
echo -e "${RED}错误:请在项目根目录运行此脚本${NC}"
exit 1
fi
# 步骤 1: 构建博客
echo -e "${YELLOW}[1/3] 正在构建博客...${NC}"
pnpm blog:build
if [ $? -ne 0 ]; then
echo -e "${RED}构建失败!${NC}"
exit 1
fi
echo -e "${GREEN}✓ 构建成功${NC}"
echo ""
# 步骤 2: 检查源目录是否存在
if [ ! -d "$SOURCE_DIR" ]; then
echo -e "${RED}错误:构建输出目录不存在: $SOURCE_DIR${NC}"
exit 1
fi
# 步骤 3: 清空目标目录
echo -e "${YELLOW}[2/3] 正在清空目标目录...${NC}"
if [ -d "$TARGET_DIR" ]; then
rm -rf "${TARGET_DIR:?}/"*
echo -e "${GREEN}✓ 已清空: $TARGET_DIR${NC}"
else
echo -e "${YELLOW}目标目录不存在,正在创建...${NC}"
mkdir -p "$TARGET_DIR"
echo -e "${GREEN}✓ 已创建: $TARGET_DIR${NC}"
fi
echo ""
# 步骤 4: 复制文件
echo -e "${YELLOW}[3/3] 正在复制文件到目标目录...${NC}"
cp -r "$SOURCE_DIR/"* "$TARGET_DIR/"
if [ $? -eq 0 ]; then
echo -e "${GREEN}✓ 文件复制成功${NC}"
else
echo -e "${RED}文件复制失败!${NC}"
exit 1
fi
echo ""
echo -e "${GREEN}========================================${NC}"
echo -e "${GREEN} 部署完成!${NC}"
echo -e "${GREEN}========================================${NC}"
echo -e "目标目录: ${TARGET_DIR}"