feat: mv data folder to root

This commit is contained in:
qixinbo
2026-03-27 15:59:23 +08:00
parent 37070d7896
commit 5d479bed68
18 changed files with 175 additions and 39 deletions
+39
View File
@@ -0,0 +1,39 @@
import os
from pathlib import Path
BACKEND_ROOT = Path(__file__).resolve().parents[2]
REPO_ROOT = BACKEND_ROOT.parent
DEFAULT_DATA_ROOT = REPO_ROOT / "data"
LEGACY_DATA_ROOT = BACKEND_ROOT / "data"
def get_data_root() -> Path:
configured = (os.getenv("DATA_ROOT") or "").strip()
if configured:
return Path(configured).expanduser().resolve()
if DEFAULT_DATA_ROOT.exists():
return DEFAULT_DATA_ROOT
if LEGACY_DATA_ROOT.exists():
print(f"[DATA_ROOT] legacy path detected: {LEGACY_DATA_ROOT}. Please migrate to {DEFAULT_DATA_ROOT}.")
return LEGACY_DATA_ROOT
return DEFAULT_DATA_ROOT
def get_workspace_root() -> Path:
return get_data_root() / "workspace"
def get_uploads_root() -> Path:
return get_data_root() / "uploads"
def get_reports_root() -> Path:
return get_data_root() / "data"
def ensure_data_layout() -> None:
get_data_root().mkdir(parents=True, exist_ok=True)
get_workspace_root().mkdir(parents=True, exist_ok=True)
get_uploads_root().mkdir(parents=True, exist_ok=True)
get_reports_root().mkdir(parents=True, exist_ok=True)