Panno-AI-API / .github /workflows /sync_to_hf.yml
GitHub Actions Bot
Sync: Thu Feb 12 07:00:42 UTC 2026
dce7eca
name: Sync to Hugging Face Spaces
on:
push:
branches: [main]
workflow_dispatch:
jobs:
sync-to-hub:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
lfs: true
- name: Push to Hugging Face Space
env:
HF_TOKEN: ${{ secrets.HF_TOKEN }}
HF_USERNAME: ${{ secrets.HF_USERNAME }}
SPACE_NAME: ${{ secrets.HF_SPACE_NAME }}
run: |
git config --global user.email "bot@github.com"
git config --global user.name "GitHub Actions Bot"
if [ -z "$HF_TOKEN" ] || [ -z "$HF_USERNAME" ] || [ -z "$SPACE_NAME" ]; then
echo "Error: Missing required secrets"
echo "Please set HF_TOKEN, HF_USERNAME, and HF_SPACE_NAME in repository secrets"
exit 1
fi
git remote add space https://$HF_USERNAME:$HF_TOKEN@huggingface.co/spaces/$HF_USERNAME/$SPACE_NAME || true
# Create a temporary orphan branch to squash history
# This avoids pushing historical binary blobs that HF rejects
git checkout --orphan sync-branch
git lfs install
git add -A
git commit -m "Sync: $(date)"
# Push to Hugging Face
git push --force space sync-branch:main
- name: Verify deployment
env:
HF_USERNAME: ${{ secrets.HF_USERNAME }}
SPACE_NAME: ${{ secrets.HF_SPACE_NAME }}
run: |
echo "Deployment completed!"
echo "Check your Space at: https://huggingface.co/spaces/$HF_USERNAME/$SPACE_NAME"
echo "API endpoint: https://$HF_USERNAME-$SPACE_NAME.hf.space"