Hub documentation
Mengelola Spaces dengan CircleCI Workflows
Mengelola Spaces dengan CircleCI Workflows
Anda dapat menjaga sinkronisasi aplikasi Anda dengan repositori GitHub menggunakan CircleCI workflow.
CircleCI adalah platform continuous integration dan continuous delivery (CI/CD) yang membantu mengotomatiskan proses pengembangan perangkat lunak. CircleCI workflow adalah serangkaian tugas otomatis yang didefinisikan dalam file konfigurasi dan diorkestrasi oleh CircleCI untuk menyederhanakan proses membangun, menguji, dan menerapkan aplikasi perangkat lunak.
Catatan: File yang ukurannya lebih dari 10MB harus dilacak dengan git-xet (disarankan) atau Git LFS. Jika Anda tidak ingin menggunakan salah satunya, Anda mungkin perlu meninjau file Anda dan memeriksa riwayat Anda. Gunakan alat seperti BFG Repo-Cleaner untuk menghapus file besar apa pun dari riwayat Anda. BFG Repo-Cleaner akan menyimpan salinan lokal repositori Anda sebagai cadangan.
Pertama, atur repositori GitHub dan aplikasi Spaces Anda secara bersamaan. Tambahkan aplikasi Spaces Anda sebagai remote tambahan ke repositori Git yang sudah ada.
git remote add space https://huggingface.co/spaces/HF_USERNAME/SPACE_NAME
Lalu paksa push untuk menyinkronkan semuanya untuk pertama kali:
git push --force space main
Selanjutnya, atur workflow CircleCI untuk mendorong cabang git main Anda ke Spaces.
Pada contoh di bawah ini:
- Ganti
HF_USERNAMEdengan nama pengguna Anda danSPACE_NAMEdengan nama Space Anda. - Buat context di CircleCI dan tambahkan variabel env bernama HF_PERSONAL_TOKEN (Anda dapat memberinya nama apa pun, gunakan kunci yang Anda buat sebagai pengganti HF_PERSONAL_TOKEN) dengan nilai berupa token API Hugging Face Anda. Anda dapat menemukan token API Hugging Face Anda di bawah API Tokens pada profil Hugging Face Anda.
version: 2.1
workflows:
main:
jobs:
- sync-to-huggingface:
context:
- HuggingFace
filters:
branches:
only:
- main
jobs:
sync-to-huggingface:
docker:
- image: alpine
resource_class: small
steps:
- run:
name: install git
command: apk update && apk add openssh-client git
- checkout
- run:
name: push to Huggingface hub
command: |
git config user.email "<your-email@here>"
git config user.name "<your-identifier>"
git push -f https://HF_USERNAME:${HF_PERSONAL_TOKEN}@huggingface.co/spaces/HF_USERNAME/SPACE_NAME main