testautomation / HUGGINGFACE_SPACE.md
INFINA-RD
refactor: DI infrastructure, service decomposition, repository helpers, test suite
e066621

Hugging Face Spaces Deployment

Bu repo, Docker Space olarak çalışacak şekilde güncellendi.

1) Space oluşturma

  • Hugging Face'de yeni bir Space açın.
  • SDK türünü Docker seçin.
  • Bu repoyu Space'e bağlayın.

2) Secret / Variable ayarları

Space Settings > Variables and secrets bölümüne aşağıdakini ekleyin:

  • DATABASE_URL = postgresql://postgres:Nwls19n26D47trUe@db.gdtiomjpgkpyjtqjivdw.supabase.co:5432/postgres

Not: Uygulama PostgreSQL URL'sine otomatik olarak sslmode=require ekler (URL içinde yoksa).

3) Çalıştırma

  • Root seviyesindeki Dockerfile otomatik build edilir.
  • Konteyner, alembic upgrade head çalıştırır ve API'yi PORT (varsayılan 7860) üzerinde başlatır.
  • Açılış sonrası kontrol:
    • / health endpoint
    • /swagger API dokümantasyonu

4) Ek notlar

  • Supabase tarafında IP kısıtı varsa Hugging Face çıkış IP'lerine izin verilmelidir.
  • İlk açılışta migration nedeniyle startup süresi uzayabilir.

5) GitHub Actions ile otomatik deploy

Bu repoda main branch'ine her push sonrası Space'e otomatik deploy için workflow eklendi:

  • .github/workflows/deploy-hf-space.yml

Repo Settings > Secrets and variables > Actions bölümüne şu secret'ları ekleyin:

  • HF_TOKEN: Hugging Face User Access Token (write yetkili)
  • HF_SPACE_REPO_ID: Space kimliği (örnek: kullanici-adi/space-adi)

İsterseniz manuel tetikleme için Actions sekmesinden Deploy to Hugging Face Space workflow'unu Run workflow ile çalıştırabilirsiniz.