Files
zjpb.net/git_patch_deploy_v2.2.sh
Jowe 2e9f634caa docs: 添加v2.2.0部署文档和脚本
- v2.2.0.patch: Git补丁文件(56KB)
- git_patch_deploy_v2.2.sh: 自动化部署脚本
- DEPLOY_v2.2.0.md: 完整部署指南
- DEPLOY_v2.2_CHECKLIST.md: 部署检查清单
2025-12-30 22:34:24 +08:00

111 lines
2.6 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# ZJPB v2.2 Git Patch 部署脚本
# 在生产服务器上执行
echo "================================"
echo "ZJPB v2.2 Git Patch 部署"
echo "================================"
echo ""
# 项目路径
PROJECT_DIR="/opt/1panel/apps/zjpb"
# 检查是否在正确目录
cd $PROJECT_DIR || { echo ">>> 项目目录不存在"; exit 1; }
echo "当前目录: $(pwd)"
echo ""
# 停止应用
echo "1. 停止应用..."
./manage.sh stop
sleep 2
# 检查Git状态
echo "2. 检查Git状态..."
git status
# 备份未提交的修改(如果有)
echo "3. 备份当前修改(如有)..."
if ! git diff-index --quiet HEAD --; then
echo " 发现未提交的修改,正在保存..."
git stash save "backup_before_v2.2_$(date +%Y%m%d_%H%M%S)"
fi
# 应用patch
echo "4. 应用v2.2.0补丁..."
if [ -f "v2.2.0.patch" ]; then
git apply --check v2.2.0.patch
if [ $? -eq 0 ]; then
git apply v2.2.0.patch
echo " >>> 补丁应用成功"
else
echo " >>> 补丁应用失败,请检查"
exit 1
fi
else
echo " >>> v2.2.0.patch 文件不存在"
exit 1
fi
# 提交更改
echo "5. 提交更改到Git..."
git add .
git commit -m "release: v2.2.0 - 博查新闻搜索功能
通过patch部署包含以下更新
- 集成博查Web Search API
- 新闻自动获取和展示
- 智能新闻更新机制(每日首次访问触发)
- News模型扩展source_name, source_icon
- 网站详情页新闻模块
- 定期任务脚本和测试工具
"
# 激活虚拟环境
echo "6. 激活虚拟环境..."
source venv/bin/activate
# 安装依赖(检查是否有新依赖)
echo "7. 检查依赖..."
pip install -r requirements.txt -q
# 运行数据库迁移
echo "8. 运行数据库迁移..."
if [ -f "migrate_news_fields.py" ]; then
python migrate_news_fields.py
if [ $? -eq 0 ]; then
echo " >>> 数据库迁移成功"
else
echo " >>> 数据库迁移失败"
exit 1
fi
else
echo " >>> migrate_news_fields.py 不存在,跳过"
fi
# 重启应用
echo "9. 重启应用..."
./manage.sh start
sleep 3
# 检查状态
echo "10. 检查应用状态..."
./manage.sh status
echo ""
echo "================================"
echo ">>> 部署完成!"
echo "================================"
echo ""
echo "Git提交历史"
git log --oneline -3
echo ""
echo "请访问网站验证更新是否成功"
echo ""
echo "验证清单:"
echo "1. 访问任意网站详情页,检查是否显示相关新闻"
echo "2. 登录后台 /admin/newsadmin/ 查看新闻管理"
echo "3. 检查日志确认没有错误"
echo ""