Refactor environment and configuration management

- Updated the project structure to store configuration files (.env, models.yaml, extensions.yaml) in the project root instead of the user's home directory.
- Enhanced the setup process to automatically copy example files to the project root on first run.
- Implemented a migration function to transfer legacy configuration files from the user's home directory to the new project structure.
- Revised documentation to reflect changes in file locations and setup instructions.
- Improved code readability and maintainability by refactoring path management functions.
This commit is contained in:
Leonid Pershin
2026-08-21 03:20:18 +03:00
parent c2ca39a4a7
commit 343f741baa
22 changed files with 202 additions and 90 deletions
+2 -2
View File
@@ -8,7 +8,7 @@ from datetime import datetime, timezone
from pathlib import Path
from typing import Any
from gpu_rent.paths import home_dir, state_path
from gpu_rent.paths import runtime_dir, state_path
CURRENT_VERSION = 1
@@ -60,7 +60,7 @@ def load_state() -> SessionState:
def save_state(state: SessionState) -> None:
home_dir().mkdir(parents=True, exist_ok=True)
runtime_dir().mkdir(parents=True, exist_ok=True)
path = state_path()
path.write_text(json.dumps(state.to_dict(), indent=2) + "\n", encoding="utf-8")