File size: 1,719 Bytes
1b8d07e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import os
import sys
from dotenv import load_dotenv

# Ajout du dossier src au path pour pouvoir importer les modules
sys.path.append(os.path.join(os.path.dirname(__file__), '..', 'src'))

from core.deployer.huggingface import HFDeployer

def test_deployment():
    # Charger les variables d'environnement (pour HF_TOKEN)
    load_dotenv()
    
    token = os.environ.get("HF_TOKEN")
    if not token:
        print("❌ Erreur: HF_TOKEN manquant dans les variables d'environnement.")
        print("Veuillez créer un fichier .env avec HF_TOKEN=votre_token_write")
        return

    print("🧪 Démarrage du test de déploiement...")

    deployer = HFDeployer(token=token)
    
    # Nom unique pour le test (avec timestamp pour éviter les conflits si possible, 
    # mais pour simplifier on utilise un nom fixe 'test-meta-mcp-hello' que l'utilisateur pourra supprimer)
    space_name = "test-meta-mcp-hello"
    
    # Code de l'application "Hello World"
    app_code = """
import gradio as gr

def greet(name):
    return "Hello " + name + " from Meta-MCP!"

iface = gr.Interface(fn=greet, inputs="text", outputs="text")
iface.launch()
"""

    files = {
        "app.py": app_code,
        "requirements.txt": "gradio"
    }

    try:
        url = deployer.deploy_space(
            space_name=space_name,
            files=files,
            sdk="gradio",
            private=False
        )
        print(f"\n✅ Test réussi ! Space déployé sur : {url}")
        print("⚠️ N'oubliez pas de supprimer ce Space manuellement si vous ne souhaitez pas le conserver.")
        
    except Exception as e:
        print(f"\n❌ Échec du test : {str(e)}")

if __name__ == "__main__":
    test_deployment()