系统设置增加备份恢复:凌晨3点自动备份,保留10天,含 env 与复盘图片。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -388,6 +388,43 @@ def register_hub_bridge_routes(app: Flask, app_module: Any) -> None:
|
||||
finally:
|
||||
conn.close()
|
||||
|
||||
@app.route("/api/hub/backup/list", methods=["GET"])
|
||||
def hub_backup_list():
|
||||
if not hub_bridge_token_ok(request.headers):
|
||||
return jsonify({"ok": False, "msg": "未授权"}), 401
|
||||
from lib.instance.backup_lib import backup_dir, backup_keep_days, list_backups
|
||||
|
||||
return jsonify(
|
||||
{
|
||||
"ok": True,
|
||||
"items": list_backups(),
|
||||
"backup_dir": backup_dir(),
|
||||
"keep_days": backup_keep_days(),
|
||||
"auto_hour_bj": 3,
|
||||
"includes": [".env", "database", "options_journal"],
|
||||
}
|
||||
)
|
||||
|
||||
@app.route("/api/hub/backup/download/<name>", methods=["GET"])
|
||||
def hub_backup_download(name: str):
|
||||
if not hub_bridge_token_ok(request.headers):
|
||||
return jsonify({"ok": False, "msg": "未授权"}), 401
|
||||
import os
|
||||
|
||||
from flask import send_file
|
||||
|
||||
from lib.instance.backup_lib import backup_path
|
||||
|
||||
path = backup_path(name)
|
||||
if not path or not os.path.isfile(path):
|
||||
return jsonify({"ok": False, "msg": "备份不存在"}), 404
|
||||
return send_file(
|
||||
path,
|
||||
mimetype="application/gzip",
|
||||
as_attachment=True,
|
||||
download_name=os.path.basename(path),
|
||||
)
|
||||
|
||||
@app.route("/hub_sso")
|
||||
def hub_sso_login():
|
||||
token = (request.args.get("token") or "").strip()
|
||||
|
||||
Reference in New Issue
Block a user