Spaces:
Paused
Paused
| #!/usr/bin/env python3 | |
| """Create Hugging Face Space via API, then deploy code.""" | |
| import os | |
| import sys | |
| import subprocess | |
| from pathlib import Path | |
| # Get token from environment or prompt | |
| TOKEN = os.environ.get("HF_TOKEN") or os.environ.get("HUGGINGFACE_TOKEN") or os.environ.get("HUGGING_FACE_TOKEN") | |
| if not TOKEN: | |
| print("ERROR: Set HF_TOKEN environment variable") | |
| sys.exit(1) | |
| SPACE_NAME = os.environ.get("HF_SPACE_NAME", "membra-airmicrodrip") | |
| OWNER = os.environ.get("HF_OWNER", "josephrw") | |
| SPACE_ID = f"{OWNER}/{SPACE_NAME}" | |
| try: | |
| from huggingface_hub import HfApi | |
| except ImportError: | |
| subprocess.run([sys.executable, "-m", "pip", "install", "-q", "huggingface_hub"], check=True) | |
| from huggingface_hub import HfApi | |
| api = HfApi(token=TOKEN) | |
| # Get authenticated user | |
| try: | |
| whoami = api.whoami() | |
| actual_owner = whoami["name"] | |
| print(f"Authenticated as: {actual_owner}") | |
| SPACE_ID = f"{actual_owner}/{SPACE_NAME}" | |
| except Exception as e: | |
| print(f"Auth check failed: {e}") | |
| sys.exit(1) | |
| # Check if space exists | |
| try: | |
| api.repo_info(repo_id=SPACE_ID, repo_type="space") | |
| print(f"Space {SPACE_ID} already exists.") | |
| except Exception: | |
| print(f"Creating Space {SPACE_ID} (docker)...") | |
| try: | |
| api.create_repo( | |
| repo_id=SPACE_ID, | |
| repo_type="space", | |
| space_sdk="docker", | |
| private=False, | |
| ) | |
| print(f"Created: https://huggingface.co/spaces/{SPACE_ID}") | |
| except Exception as e: | |
| print(f"Failed to create space: {e}") | |
| print("\nTIP: Create manually at https://huggingface.co/new-space") | |
| print(" - Space name: membra-airmicrodrip") | |
| print(" - SDK: Docker") | |
| sys.exit(1) | |
| print(f"\nSpace ready: https://huggingface.co/spaces/{SPACE_ID}") | |
| print("\nNow run the deploy script to push code:") | |
| print(f" cd /Users/alep/Downloads/02_AI_Agents/airmicrodrip") | |
| print(f" HF_TOKEN={TOKEN[:10]}... bash deploy.sh") | |