| # Deploy to Hugging Face Space on push to main | |
| # Add secrets: HF_TOKEN, and optionally HF_SPACE (e.g. "your-username/notebooklm-clone") | |
| name: Deploy to HF Space | |
| on: | |
| push: | |
| branches: [main] | |
| workflow_dispatch: | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| lfs: true | |
| - name: Deploy to Hugging Face Space | |
| env: | |
| HF_TOKEN: ${{ secrets.HF_TOKEN }} | |
| HF_SPACE: ${{ secrets.HF_SPACE }} | |
| run: | | |
| if [ -z "$HF_TOKEN" ]; then | |
| echo "HF_TOKEN secret not set. Skip deploy." | |
| exit 0 | |
| fi | |
| if [ -z "$HF_SPACE" ]; then | |
| echo "HF_SPACE secret not set (e.g. username/notebooklm-clone). Skip deploy." | |
| exit 0 | |
| fi | |
| git push https://${HF_TOKEN}@huggingface.co/spaces/${HF_SPACE} main 2>/dev/null || \ | |
| git push https://${HF_TOKEN}@huggingface.co/spaces/${HF_SPACE} main --force | |
| echo "Deployed to https://huggingface.co/spaces/${HF_SPACE}" | |