deploy_emspara.sh 1.1 KB

12345678910111213141516171819202122232425262728
  1. #!/bin/bash
  2. set -e
  3. # 生成 EMS 参数字典(PID / VID)SQLite 并拷贝到部署目录。
  4. # 主服务与 fwh-agent-mcp 启动时把它加载到 Redis(utils/emspara),Redis 中没有字典时也会从这里重新加载。
  5. # 由 deploy_toolbox.sh、deploy_agent_mcp.sh 调用,也可以在 service/ 目录下单独执行:./cmd/deploy_emspara.sh
  6. # 头文件更新:替换 utils/emspara/updateCmd/vid_macro.h、pid_macro.h 后重新部署(或执行本脚本后重启服务)。
  7. # ===== 配置部分 =====
  8. APP_DIR="/var/www/fwh-toolbox/server"
  9. DB_NAME="emspara.db"
  10. DB_PATH="$APP_DIR/$DB_NAME"
  11. SERVICE_DIR="$(cd "$(dirname "$0")/.." && pwd)"
  12. cd "$SERVICE_DIR"
  13. # ===== 生成字典 =====
  14. echo "📚 Generating $DB_NAME..."
  15. go run ./utils/emspara/updateCmd -out "./$DB_NAME"
  16. # ===== 拷贝到部署目录(先拷临时文件再改名,运行中的进程不会读到写了一半的文件) =====
  17. echo "📦 Copying $DB_NAME to $DB_PATH..."
  18. sudo cp "./$DB_NAME" "$DB_PATH.tmp"
  19. sudo chmod 644 "$DB_PATH.tmp"
  20. sudo mv "$DB_PATH.tmp" "$DB_PATH"
  21. rm -f "./$DB_NAME"
  22. echo "✅ $DB_NAME deployed to $DB_PATH"