File size: 1,368 Bytes
a938ee3
db40fc9
a938ee3
a48496c
 
e7be8a5
a938ee3
 
 
 
 
 
3a88bbb
e7be8a5
a938ee3
 
 
 
 
 
 
 
 
 
 
 
311bab0
3a88bbb
 
e7be8a5
1979a0b
1289a5a
e7be8a5
3a88bbb
9f8c6e3
 
3a88bbb
a75acbd
 
 
 
e7be8a5
 
 
a75acbd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
name: Update Space

on:
  push:
    branches:
      - main

jobs:
  sync-to-hub:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        space_name: [company-pet-policy, about-mls, shakespeare]  # List your Hugging Face space names here

    steps:
      - name: Checkout repository
        uses: actions/checkout@v2
        with:
          fetch-depth: 0
          lfs: true

      - name: Configure Git
        run: |
          git config --global user.email "[email protected]"
          git config --global user.name "GitHub Actions"

      - name: Get and show changed files
        id: changed_files
        run: |
          git fetch origin
          updated_files=$(git diff --name-only HEAD~1 HEAD || true)
          echo "${updated_files}"

      - name: Push only changed files (loop through each space)
        env:
          HF_TOKEN: ${{ secrets.HF_TOKEN }}
        run: |
          changed_files=$(echo "${{ steps.changed_files.outputs.value }}")
          for file in $changed_files; do
            git add $file
            git commit -m "Updating $file"
            git remote add ${{ matrix.space_name }} https://huggingface.co/spaces/david-oplatka/${{ matrix.space_name }}.git
            git config --add remote.${{ matrix.space_name }}.oauth_token ${{ secrets.HF_TOKEN }}
            git push ${{ matrix.space_name }} main
          done