| from __future__ import annotations |
|
|
| import os |
| from pathlib import Path |
|
|
| from huggingface_hub import HfApi, upload_folder |
| from huggingface_hub.utils import HfFolder |
|
|
|
|
| def main() -> None: |
| token = os.environ.get("HF_TOKEN") or HfFolder.get_token() |
| if not token: |
| raise RuntimeError("Set HF_TOKEN in your shell (do not hardcode it).") |
|
|
| username = os.environ.get("HF_USERNAME", "ravitejas1596") |
| space_name = os.environ.get("HF_SPACE_NAME", "fraud-pattern-detector") |
| repo_id = f"{username}/{space_name}" |
|
|
| api = HfApi(token=token) |
| api.create_repo( |
| repo_id=repo_id, |
| repo_type="space", |
| private=False, |
| exist_ok=True, |
| space_sdk="docker", |
| ) |
|
|
| repo_root = Path(__file__).resolve().parents[1] |
| upload_folder( |
| repo_id=repo_id, |
| folder_path=str(repo_root), |
| repo_type="space", |
| token=token, |
| commit_message="Deploy Space", |
| ignore_patterns=[".venv/**", "**/__pycache__/**", ".git/**"], |
| ) |
|
|
| print(f"Deployed: https://huggingface.co/spaces/{repo_id}") |
|
|
|
|
| if __name__ == "__main__": |
| main() |
|
|
|
|