File size: 2,486 Bytes
dd87944
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#!/usr/bin/env python3
"""Configure Hugging Face Space secrets/variables for Emo Online API."""
from __future__ import annotations

import os
import sys

# SSL Windows (CERTIFICATE_VERIFY_FAILED)
sys.path.insert(0, str(__import__("pathlib").Path(__file__).resolve().parents[1] / "emo" / "backend"))
try:
    import ssl_fix  # noqa: F401
except ImportError:
    pass

from huggingface_hub import HfApi

REPO_ID = os.environ.get("HF_SPACE_REPO", "Xroxx/emo-online-api")
BACKEND_URL = os.environ.get(
    "EMO_PUBLIC_BACKEND_URL", "https://xroxx-emo-online-api.hf.space"
)
FRONTEND_URL = "https://xeroxytb.com"

SECRETS = [
    "MONGO_URL",
    "GOOGLE_CLIENT_ID",
    "GOOGLE_CLIENT_SECRET",
    "GITHUB_CLIENT_ID",
    "GITHUB_CLIENT_SECRET",
    "OPENAI_API_KEY",
    "ANTHROPIC_API_KEY",
    "GEMINI_API_KEY",
    "GROQ_API_KEY",
    "OPENROUTER_API_KEY",
    "DEEPSEEK_API_KEY",
    "HF_TOKEN",
    "HUGGINGFACE_API_KEY",
    "STRIPE_API_KEY",
    "EMERGENT_LLM_KEY",
]

VARIABLES = {
    "DB_NAME": "emo",
    "EMO_DEV_MODE": "false",
    "EMO_SERVE_FRONTEND": "false",
    "EMO_BROWSER_ENABLED": "true",
    "EMO_SKIP_STARTUP_PROBE": "true",
    "EMO_PUBLIC_BACKEND_URL": BACKEND_URL,
    "EMO_FRONTEND_URL": FRONTEND_URL,
    "CORS_ORIGINS": "https://xeroxytb.com,https://www.xeroxytb.com,https://xeroxytb.github.io,http://127.0.0.1:8000,http://localhost:8000",
    "GOOGLE_REDIRECT_URI": f"{BACKEND_URL}/api/auth/google/callback",
    "EMO_ADMIN_EMAILS": "huglostalatac@gmail.com",
    "STRIPE_BASIC_LINK": "https://buy.stripe.com/5kQ14pae7a8Rd4yb6y48001",
    "STRIPE_PREMIUM_LINK": "https://buy.stripe.com/bJe6oJbib5SBggK5Me48002",
    "STRIPE_ULTRA_LINK": "https://buy.stripe.com/4gMdRb71V3Kt8OicaC48003",
    "OPENROUTER_REFERER": FRONTEND_URL,
}


def main() -> int:
    token = os.environ.get("HF_TOKEN", "").strip()
    if not token:
        print("HF_TOKEN manquant", file=sys.stderr)
        return 1

    api = HfApi(token=token)
    print(f"Configuring {REPO_ID}...")

    for key in SECRETS:
        val = os.environ.get(key, "").strip()
        if not val:
            print(f"  skip secret {key} (empty)")
            continue
        api.add_space_secret(repo_id=REPO_ID, key=key, value=val)
        print(f"  secret {key} OK")

    for key, val in VARIABLES.items():
        api.add_space_variable(repo_id=REPO_ID, key=key, value=val)
        print(f"  variable {key} OK")

    print("Done.")
    return 0


if __name__ == "__main__":
    raise SystemExit(main())