image-captioning-api / .github /workflows /deploy-backend.yml
apoorvrajdev's picture
feat(ci): add deploy-backend workflow + Phase 2C runbook + Live Demo README section
f30f737
name: Deploy backend to HuggingFace Space
on:
workflow_run:
workflows: ["CI"]
types: [completed]
branches: [main]
workflow_dispatch:
concurrency:
group: deploy-backend
cancel-in-progress: false
permissions:
contents: read
jobs:
push-to-space:
name: Push main to HF Space
runs-on: ubuntu-latest
timeout-minutes: 10
if: >-
github.event_name == 'workflow_dispatch' ||
(github.event.workflow_run.conclusion == 'success' &&
github.event.workflow_run.head_branch == 'main')
env:
HF_USERNAME: apoorvrajdev
HF_SPACE: image-captioning-api
steps:
- name: Checkout full history
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Configure git identity
run: |
git config user.name "apoorvrajdev"
git config user.email "apoorvrajmgr@gmail.com"
- name: Push to HuggingFace Space
env:
HF_TOKEN: ${{ secrets.HF_TOKEN }}
run: |
if [ -z "${HF_TOKEN}" ]; then
echo "::error::HF_TOKEN secret is not set. Add it under repo Settings → Secrets and variables → Actions."
exit 1
fi
git remote add space "https://${HF_USERNAME}:${HF_TOKEN}@huggingface.co/spaces/${HF_USERNAME}/${HF_SPACE}"
git push space HEAD:main