music(chord): yopu UI 升级修 selector + 加 PVC override 与调试 dump
deploy music / build-and-deploy (push) Successful in 1m59s

- yopu 现在搜索结果默认全是和弦谱(不再标「和弦谱」字样),改成直接取第一个 a.post-main
- chord_server 启动时把 /data/chord-overrides/ 加到 sys.path 优先级最高,方便后续不 rebuild image 直接 cp yopu.py 热修
- 失败路径 dump HTML + 截图到 /data/chord-debug,view 页 selector 失败也能事后看
This commit is contained in:
Fam Zheng
2026-05-09 23:02:34 +01:00
parent e111398157
commit 05df371435
2 changed files with 69 additions and 24 deletions
+10 -1
View File
@@ -8,6 +8,7 @@ worker 单线程串行(chromium 一次跑一个,省资源),文件落 /da
import json
import logging
import queue
import sys
import threading
import os
from pathlib import Path
@@ -16,7 +17,15 @@ from typing import Optional
from fastapi import FastAPI, HTTPException
from fastapi.responses import FileResponse
import yopu
# 调试热更:/data 是 PVC mount,重启容器不丢;放 yopu.py 在 /data/chord-overrides/
# 启动时把它放最高优先级,方便不重 build image 直接 hot-fix selector。
_OVERRIDE_DIR = Path('/data/chord-overrides')
_OVERRIDE_DIR.mkdir(parents=True, exist_ok=True)
if (_OVERRIDE_DIR / 'yopu.py').exists():
sys.path.insert(0, str(_OVERRIDE_DIR))
print(f"[chord-server] using yopu.py override from {_OVERRIDE_DIR}")
import yopu # noqa: E402
logging.basicConfig(level=logging.INFO,
format='%(asctime)s %(levelname)s %(name)s: %(message)s')