Spaces:
Build error
Build error
| import firebase_admin | |
| from firebase_admin import credentials, firestore, storage | |
| import os | |
| import json | |
| from dotenv import load_dotenv | |
| from .config import settings | |
| # Charger les variables d'environnement | |
| load_dotenv() | |
| def get_firebase_app(): | |
| if not firebase_admin._apps: | |
| try: | |
| firebase_credentials = os.getenv("FIREBASE_CREDENTIALS") | |
| if not firebase_credentials: | |
| raise ValueError("FIREBASE_CREDENTIALS environment variable is not set") | |
| cred_dict = json.loads(firebase_credentials) | |
| cred = credentials.Certificate(cred_dict) | |
| return firebase_admin.initialize_app(cred, { | |
| 'storageBucket': settings.STORAGE_BUCKET | |
| }) | |
| except Exception as e: | |
| print(f"Firebase initialization error: {str(e)}") | |
| raise | |
| return firebase_admin.get_app() | |
| def get_firestore_db(): | |
| get_firebase_app() | |
| return firestore.client() | |
| def get_storage_bucket(): | |
| get_firebase_app() | |
| return storage.bucket() | |
| # Créer des instances uniques | |
| db = get_firestore_db() | |
| bucket = get_storage_bucket() |