| """Check Space secrets and model storage without printing secret values.""" |
|
|
| from __future__ import annotations |
|
|
| import os |
| import shutil |
| from pathlib import Path |
|
|
| from bootstrap_comfy import MODEL_LINKS, model_root, model_target |
|
|
|
|
| def masked_secret(name: str) -> str: |
| value = os.environ.get(name) |
| if not value: |
| return "missing" |
| return f"present, length={len(value)}" |
|
|
|
|
| def disk_summary(path: Path) -> str: |
| existing = path |
| while not existing.exists() and existing != existing.parent: |
| existing = existing.parent |
| usage = shutil.disk_usage(existing) |
| total_gb = usage.total / 1024**3 |
| free_gb = usage.free / 1024**3 |
| return f"{existing}: free={free_gb:.1f}GB total={total_gb:.1f}GB" |
|
|
|
|
| def main() -> None: |
| print("Secrets:") |
| for name in ["DEEPSEEK_API_KEY", "DEEPSEEK_BASE_URL", "DEEPSEEK_MODEL", "HF_TOKEN"]: |
| print(f" {name}: {masked_secret(name)}") |
|
|
| root = model_root() |
| print("\nModel storage:") |
| print(f" VOICEGATE_MODEL_ROOT: {os.environ.get('VOICEGATE_MODEL_ROOT') or '(default)'}") |
| print(f" resolved model_root: {root}") |
| print(f" disk: {disk_summary(root)}") |
| for name, link in MODEL_LINKS.items(): |
| target = model_target(name) |
| print(f" {name}:") |
| print(f" ComfyUI path: {link}") |
| print(f" persistent target: {target}") |
| print(f" target exists: {target.exists()}") |
| print(f" link exists: {link.exists() or link.is_symlink()}") |
|
|
|
|
| if __name__ == "__main__": |
| main() |
|
|