refactor: 版本号从version.json读取 配置模板删version字段

This commit is contained in:
qinglong
2026-06-14 16:03:04 +08:00
parent 4d51a7620e
commit 3f5b01f817
2 changed files with 15 additions and 17 deletions
@@ -1,7 +1,6 @@
framework:
debug: true
name: SenSu
version: v0.8.0
branch: dev
repo_url: https://git.yeij.top/AskaEth/SenSu
logging:
+13 -14
View File
@@ -149,10 +149,15 @@ class UpdateService:
return None
def _current_version(self) -> str:
"""从 version.json 读取本地版本号"""
try:
init = self.sm.get_service("init")
return init.get_config("base").get("framework", {}).get("version", "0.0.0").lstrip("vV")
vf = _PROJECT_ROOT / "version.json"
if vf.exists():
with open(vf) as f:
data = json.load(f)
return data.get("framework", {}).get("version", "0.0.0").lstrip("vV")
except Exception:
pass
return "0.0.0"
# ── 执行更新 ──
@@ -250,19 +255,13 @@ class UpdateService:
# 4.5 同步版本号到旧配置文件
try:
old_cfg_path = str(_PROJECT_ROOT / "config" / "framework" / "base_config.yaml")
new_tpl_path = str(_PROJECT_ROOT / "config" / "framework" / "base_config.yaml.example")
if os.path.exists(old_cfg_path) and os.path.exists(new_tpl_path):
import yaml as _yaml
with open(new_tpl_path) as f:
new_tpl = _yaml.safe_load(f)
new_ver = new_tpl.get("framework", {}).get("version", "")
# 同步版本号到 version.json
vf = _PROJECT_ROOT / "version.json"
if vf.exists():
with open(vf) as f:
vdata = json.load(f)
new_ver = vdata.get("framework", {}).get("version", "")
if new_ver:
with open(old_cfg_path) as f:
old_cfg = _yaml.safe_load(f) or {}
old_cfg.setdefault("framework", {})["version"] = new_ver
with open(old_cfg_path, "w") as f:
_yaml.dump(old_cfg, f, default_flow_style=False, allow_unicode=True)
self._log(f"版本号已同步: {new_ver}")
logger.info(f"📝 版本号已同步: {new_ver}")
except Exception as e: