Setup auto-sync infrastructure for product propagation

#27
by bep40 - opened
This view is limited to 50 files because it contains too many changes. See the raw diff here.
Files changed (50) hide show
  1. .gitattributes +0 -102
  2. .github/workflows/auto-sync.yml +0 -48
  3. grob_img/grob_p1.jpeg +0 -0
  4. grob_img/grob_p10.jpeg +0 -3
  5. grob_img/grob_p100.jpeg +0 -0
  6. grob_img/grob_p101.jpeg +0 -3
  7. grob_img/grob_p102.jpeg +0 -3
  8. grob_img/grob_p103.jpeg +0 -0
  9. grob_img/grob_p104.jpeg +0 -0
  10. grob_img/grob_p105.jpeg +0 -0
  11. grob_img/grob_p106.jpeg +0 -3
  12. grob_img/grob_p107.jpeg +0 -0
  13. grob_img/grob_p108.jpeg +0 -0
  14. grob_img/grob_p109.jpeg +0 -3
  15. grob_img/grob_p11.jpeg +0 -3
  16. grob_img/grob_p110.jpeg +0 -3
  17. grob_img/grob_p111.jpeg +0 -3
  18. grob_img/grob_p112.jpeg +0 -0
  19. grob_img/grob_p113.jpeg +0 -0
  20. grob_img/grob_p114.jpeg +0 -0
  21. grob_img/grob_p115.jpeg +0 -0
  22. grob_img/grob_p116.jpeg +0 -0
  23. grob_img/grob_p117.jpeg +0 -0
  24. grob_img/grob_p118.jpeg +0 -3
  25. grob_img/grob_p119.jpeg +0 -3
  26. grob_img/grob_p12.jpeg +0 -0
  27. grob_img/grob_p120.jpeg +0 -3
  28. grob_img/grob_p121.jpeg +0 -0
  29. grob_img/grob_p122.jpeg +0 -0
  30. grob_img/grob_p123.jpeg +0 -0
  31. grob_img/grob_p124.jpeg +0 -0
  32. grob_img/grob_p125.jpeg +0 -3
  33. grob_img/grob_p126.jpeg +0 -0
  34. grob_img/grob_p127.jpeg +0 -0
  35. grob_img/grob_p128.jpeg +0 -0
  36. grob_img/grob_p129.jpeg +0 -0
  37. grob_img/grob_p13.jpeg +0 -0
  38. grob_img/grob_p130.jpeg +0 -3
  39. grob_img/grob_p131.jpeg +0 -3
  40. grob_img/grob_p132.jpeg +0 -3
  41. grob_img/grob_p133.jpeg +0 -3
  42. grob_img/grob_p134.jpeg +0 -3
  43. grob_img/grob_p135.jpeg +0 -0
  44. grob_img/grob_p136.jpeg +0 -0
  45. grob_img/grob_p137.jpeg +0 -0
  46. grob_img/grob_p138.jpeg +0 -0
  47. grob_img/grob_p139.jpeg +0 -0
  48. grob_img/grob_p14.jpeg +0 -0
  49. grob_img/grob_p140.jpeg +0 -3
  50. grob_img/grob_p141.jpeg +0 -3
.gitattributes DELETED
@@ -1,102 +0,0 @@
1
- grob_img/grob_p10.jpeg filter=lfs diff=lfs merge=lfs -text
2
- grob_img/grob_p101.jpeg filter=lfs diff=lfs merge=lfs -text
3
- grob_img/grob_p102.jpeg filter=lfs diff=lfs merge=lfs -text
4
- grob_img/grob_p106.jpeg filter=lfs diff=lfs merge=lfs -text
5
- grob_img/grob_p109.jpeg filter=lfs diff=lfs merge=lfs -text
6
- grob_img/grob_p11.jpeg filter=lfs diff=lfs merge=lfs -text
7
- grob_img/grob_p110.jpeg filter=lfs diff=lfs merge=lfs -text
8
- grob_img/grob_p111.jpeg filter=lfs diff=lfs merge=lfs -text
9
- grob_img/grob_p118.jpeg filter=lfs diff=lfs merge=lfs -text
10
- grob_img/grob_p119.jpeg filter=lfs diff=lfs merge=lfs -text
11
- grob_img/grob_p120.jpeg filter=lfs diff=lfs merge=lfs -text
12
- grob_img/grob_p125.jpeg filter=lfs diff=lfs merge=lfs -text
13
- grob_img/grob_p130.jpeg filter=lfs diff=lfs merge=lfs -text
14
- grob_img/grob_p131.jpeg filter=lfs diff=lfs merge=lfs -text
15
- grob_img/grob_p132.jpeg filter=lfs diff=lfs merge=lfs -text
16
- grob_img/grob_p133.jpeg filter=lfs diff=lfs merge=lfs -text
17
- grob_img/grob_p134.jpeg filter=lfs diff=lfs merge=lfs -text
18
- grob_img/grob_p140.jpeg filter=lfs diff=lfs merge=lfs -text
19
- grob_img/grob_p141.jpeg filter=lfs diff=lfs merge=lfs -text
20
- grob_img/grob_p166.jpeg filter=lfs diff=lfs merge=lfs -text
21
- grob_img/grob_p17.jpeg filter=lfs diff=lfs merge=lfs -text
22
- grob_img/grob_p174.jpeg filter=lfs diff=lfs merge=lfs -text
23
- grob_img/grob_p175.jpeg filter=lfs diff=lfs merge=lfs -text
24
- grob_img/grob_p177.jpeg filter=lfs diff=lfs merge=lfs -text
25
- grob_img/grob_p178.jpeg filter=lfs diff=lfs merge=lfs -text
26
- grob_img/grob_p179.jpeg filter=lfs diff=lfs merge=lfs -text
27
- grob_img/grob_p180.jpeg filter=lfs diff=lfs merge=lfs -text
28
- grob_img/grob_p183.jpeg filter=lfs diff=lfs merge=lfs -text
29
- grob_img/grob_p184.jpeg filter=lfs diff=lfs merge=lfs -text
30
- grob_img/grob_p185.jpeg filter=lfs diff=lfs merge=lfs -text
31
- grob_img/grob_p186.jpeg filter=lfs diff=lfs merge=lfs -text
32
- grob_img/grob_p19.jpeg filter=lfs diff=lfs merge=lfs -text
33
- grob_img/grob_p199.jpeg filter=lfs diff=lfs merge=lfs -text
34
- grob_img/grob_p2.jpeg filter=lfs diff=lfs merge=lfs -text
35
- grob_img/grob_p201.jpeg filter=lfs diff=lfs merge=lfs -text
36
- grob_img/grob_p21.jpeg filter=lfs diff=lfs merge=lfs -text
37
- grob_img/grob_p23.jpeg filter=lfs diff=lfs merge=lfs -text
38
- grob_img/grob_p24.jpeg filter=lfs diff=lfs merge=lfs -text
39
- grob_img/grob_p28.jpeg filter=lfs diff=lfs merge=lfs -text
40
- grob_img/grob_p29.jpeg filter=lfs diff=lfs merge=lfs -text
41
- grob_img/grob_p3.jpeg filter=lfs diff=lfs merge=lfs -text
42
- grob_img/grob_p30.jpeg filter=lfs diff=lfs merge=lfs -text
43
- grob_img/grob_p31.jpeg filter=lfs diff=lfs merge=lfs -text
44
- grob_img/grob_p32.jpeg filter=lfs diff=lfs merge=lfs -text
45
- grob_img/grob_p33.jpeg filter=lfs diff=lfs merge=lfs -text
46
- grob_img/grob_p34.jpeg filter=lfs diff=lfs merge=lfs -text
47
- grob_img/grob_p35.jpeg filter=lfs diff=lfs merge=lfs -text
48
- grob_img/grob_p36.jpeg filter=lfs diff=lfs merge=lfs -text
49
- grob_img/grob_p37.jpeg filter=lfs diff=lfs merge=lfs -text
50
- grob_img/grob_p38.jpeg filter=lfs diff=lfs merge=lfs -text
51
- grob_img/grob_p39.jpeg filter=lfs diff=lfs merge=lfs -text
52
- grob_img/grob_p40.jpeg filter=lfs diff=lfs merge=lfs -text
53
- grob_img/grob_p41.jpeg filter=lfs diff=lfs merge=lfs -text
54
- grob_img/grob_p42.jpeg filter=lfs diff=lfs merge=lfs -text
55
- grob_img/grob_p43.jpeg filter=lfs diff=lfs merge=lfs -text
56
- grob_img/grob_p44.jpeg filter=lfs diff=lfs merge=lfs -text
57
- grob_img/grob_p45.jpeg filter=lfs diff=lfs merge=lfs -text
58
- grob_img/grob_p46.jpeg filter=lfs diff=lfs merge=lfs -text
59
- grob_img/grob_p47.jpeg filter=lfs diff=lfs merge=lfs -text
60
- grob_img/grob_p48.jpeg filter=lfs diff=lfs merge=lfs -text
61
- grob_img/grob_p49.jpeg filter=lfs diff=lfs merge=lfs -text
62
- grob_img/grob_p50.jpeg filter=lfs diff=lfs merge=lfs -text
63
- grob_img/grob_p51.jpeg filter=lfs diff=lfs merge=lfs -text
64
- grob_img/grob_p52.jpeg filter=lfs diff=lfs merge=lfs -text
65
- grob_img/grob_p53.jpeg filter=lfs diff=lfs merge=lfs -text
66
- grob_img/grob_p54.jpeg filter=lfs diff=lfs merge=lfs -text
67
- grob_img/grob_p55.jpeg filter=lfs diff=lfs merge=lfs -text
68
- grob_img/grob_p56.jpeg filter=lfs diff=lfs merge=lfs -text
69
- grob_img/grob_p57.jpeg filter=lfs diff=lfs merge=lfs -text
70
- grob_img/grob_p58.jpeg filter=lfs diff=lfs merge=lfs -text
71
- grob_img/grob_p59.jpeg filter=lfs diff=lfs merge=lfs -text
72
- grob_img/grob_p6.jpeg filter=lfs diff=lfs merge=lfs -text
73
- grob_img/grob_p60.jpeg filter=lfs diff=lfs merge=lfs -text
74
- grob_img/grob_p61.jpeg filter=lfs diff=lfs merge=lfs -text
75
- grob_img/grob_p62.jpeg filter=lfs diff=lfs merge=lfs -text
76
- grob_img/grob_p63.jpeg filter=lfs diff=lfs merge=lfs -text
77
- grob_img/grob_p64.jpeg filter=lfs diff=lfs merge=lfs -text
78
- grob_img/grob_p65.jpeg filter=lfs diff=lfs merge=lfs -text
79
- grob_img/grob_p66.jpeg filter=lfs diff=lfs merge=lfs -text
80
- grob_img/grob_p67.jpeg filter=lfs diff=lfs merge=lfs -text
81
- grob_img/grob_p68.jpeg filter=lfs diff=lfs merge=lfs -text
82
- grob_img/grob_p69.jpeg filter=lfs diff=lfs merge=lfs -text
83
- grob_img/grob_p7.jpeg filter=lfs diff=lfs merge=lfs -text
84
- grob_img/grob_p70.jpeg filter=lfs diff=lfs merge=lfs -text
85
- grob_img/grob_p71.jpeg filter=lfs diff=lfs merge=lfs -text
86
- grob_img/grob_p72.jpeg filter=lfs diff=lfs merge=lfs -text
87
- grob_img/grob_p73.jpeg filter=lfs diff=lfs merge=lfs -text
88
- grob_img/grob_p74.jpeg filter=lfs diff=lfs merge=lfs -text
89
- grob_img/grob_p76.jpeg filter=lfs diff=lfs merge=lfs -text
90
- grob_img/grob_p77.jpeg filter=lfs diff=lfs merge=lfs -text
91
- grob_img/grob_p78.jpeg filter=lfs diff=lfs merge=lfs -text
92
- grob_img/grob_p79.jpeg filter=lfs diff=lfs merge=lfs -text
93
- grob_img/grob_p8.jpeg filter=lfs diff=lfs merge=lfs -text
94
- grob_img/grob_p80.jpeg filter=lfs diff=lfs merge=lfs -text
95
- grob_img/grob_p82.jpeg filter=lfs diff=lfs merge=lfs -text
96
- grob_img/grob_p83.jpeg filter=lfs diff=lfs merge=lfs -text
97
- grob_img/grob_p84.jpeg filter=lfs diff=lfs merge=lfs -text
98
- grob_img/grob_p85.jpeg filter=lfs diff=lfs merge=lfs -text
99
- grob_img/grob_p88.jpeg filter=lfs diff=lfs merge=lfs -text
100
- grob_img/grob_p9.jpeg filter=lfs diff=lfs merge=lfs -text
101
- grob_img/grob_p97.jpeg filter=lfs diff=lfs merge=lfs -text
102
- grob_img/grob_p98.jpeg filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/auto-sync.yml DELETED
@@ -1,48 +0,0 @@
1
- name: Auto-Sync Products
2
-
3
- on:
4
- schedule:
5
- # Chạy hàng ngày lúc midnight UTC (8:00 AM Việt Nam)
6
- - cron: '0 0 * * *'
7
- workflow_dispatch:
8
- inputs:
9
- dry_run:
10
- description: 'Chỉ kiểm tra mà không cập nhật'
11
- type: boolean
12
- default: false
13
- target_space:
14
- description: 'Không gian target (vai-avatar2 hoặc both)'
15
- type: choice
16
- options:
17
- - vai-avatar2
18
- - both
19
-
20
- jobs:
21
- sync-products:
22
- runs-on: ubuntu-latest
23
- steps:
24
- - name: Checkout code
25
- uses: actions/checkout@v4
26
-
27
- - name: Setup Python
28
- uses: actions/setup-python@v5
29
- with:
30
- python-version: '3.11'
31
-
32
- - name: Install dependencies
33
- run: |
34
- pip install huggingface_hub
35
-
36
- - name: Run sync products
37
- env:
38
- HF_TOKEN: ${{ secrets.HF_TOKEN }}
39
- run: |
40
- echo "Starting product auto-sync..."
41
- python3 sync_products.py
42
-
43
- if [ $? -eq 0 ]; then
44
- echo "✅ Sync completed successfully"
45
- else
46
- echo "❌ Sync failed"
47
- exit 1
48
- fi
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
grob_img/grob_p1.jpeg DELETED
Binary file (80 kB)
 
grob_img/grob_p10.jpeg DELETED

Git LFS Details

  • SHA256: 3cf047359715058a5f1e2ae91a8a2f1163539f4712de1db357ae12e677cac638
  • Pointer size: 131 Bytes
  • Size of remote file: 222 kB
grob_img/grob_p100.jpeg DELETED
Binary file (51.6 kB)
 
grob_img/grob_p101.jpeg DELETED

Git LFS Details

  • SHA256: 5f695be82687bb3a52248ff537adb6950f73b64c21f483ff22b9e81213b1db61
  • Pointer size: 131 Bytes
  • Size of remote file: 126 kB
grob_img/grob_p102.jpeg DELETED

Git LFS Details

  • SHA256: c9c705dbb20655e160ad96fd17c5c33f505b7702f0b2c031cf49ffcf239d4e80
  • Pointer size: 131 Bytes
  • Size of remote file: 394 kB
grob_img/grob_p103.jpeg DELETED
Binary file (42 kB)
 
grob_img/grob_p104.jpeg DELETED
Binary file (20 kB)
 
grob_img/grob_p105.jpeg DELETED
Binary file (56.2 kB)
 
grob_img/grob_p106.jpeg DELETED

Git LFS Details

  • SHA256: 62afdde0435420e325e86f5162f0d637a1c53f90ca9ba3b1fb72f900086fb6a9
  • Pointer size: 131 Bytes
  • Size of remote file: 150 kB
grob_img/grob_p107.jpeg DELETED
Binary file (96 kB)
 
grob_img/grob_p108.jpeg DELETED
Binary file (86.7 kB)
 
grob_img/grob_p109.jpeg DELETED

Git LFS Details

  • SHA256: 3d45a5d7fbe20e41f181eb81adf669d9263daddb1787e9dc47bed68355637314
  • Pointer size: 131 Bytes
  • Size of remote file: 103 kB
grob_img/grob_p11.jpeg DELETED

Git LFS Details

  • SHA256: bc47b6543988f6a4074ce37aa20ea13aa03d6f2f806a823869dec4fba362be7f
  • Pointer size: 131 Bytes
  • Size of remote file: 160 kB
grob_img/grob_p110.jpeg DELETED

Git LFS Details

  • SHA256: a84e2440229ca6da6a9d924f027a39e17176fc495c74d18a0c8f8307b2d93f2c
  • Pointer size: 131 Bytes
  • Size of remote file: 101 kB
grob_img/grob_p111.jpeg DELETED

Git LFS Details

  • SHA256: 4a8c39cc23363b072d590675666c9e8b202c3030b0ced467bad694a19b197ded
  • Pointer size: 131 Bytes
  • Size of remote file: 286 kB
grob_img/grob_p112.jpeg DELETED
Binary file (54 kB)
 
grob_img/grob_p113.jpeg DELETED
Binary file (76.2 kB)
 
grob_img/grob_p114.jpeg DELETED
Binary file (92.9 kB)
 
grob_img/grob_p115.jpeg DELETED
Binary file (92.9 kB)
 
grob_img/grob_p116.jpeg DELETED
Binary file (40.1 kB)
 
grob_img/grob_p117.jpeg DELETED
Binary file (21.9 kB)
 
grob_img/grob_p118.jpeg DELETED

Git LFS Details

  • SHA256: 269778d257f719f470c89f27e83ef12c4913cc4ed7adb4a1aa181494f74c63f3
  • Pointer size: 131 Bytes
  • Size of remote file: 552 kB
grob_img/grob_p119.jpeg DELETED

Git LFS Details

  • SHA256: 269778d257f719f470c89f27e83ef12c4913cc4ed7adb4a1aa181494f74c63f3
  • Pointer size: 131 Bytes
  • Size of remote file: 552 kB
grob_img/grob_p12.jpeg DELETED
Binary file (89.4 kB)
 
grob_img/grob_p120.jpeg DELETED

Git LFS Details

  • SHA256: 74e912df9328009cdd1a040974cec3309795335536dd1c89b4d80f138f28f7a9
  • Pointer size: 131 Bytes
  • Size of remote file: 489 kB
grob_img/grob_p121.jpeg DELETED
Binary file (61.4 kB)
 
grob_img/grob_p122.jpeg DELETED
Binary file (58.4 kB)
 
grob_img/grob_p123.jpeg DELETED
Binary file (59.5 kB)
 
grob_img/grob_p124.jpeg DELETED
Binary file (59.5 kB)
 
grob_img/grob_p125.jpeg DELETED

Git LFS Details

  • SHA256: eadac8ca424066b951c6ede4fda5d234144f00f470dbf7564422f3744ae09c81
  • Pointer size: 131 Bytes
  • Size of remote file: 305 kB
grob_img/grob_p126.jpeg DELETED
Binary file (33.6 kB)
 
grob_img/grob_p127.jpeg DELETED
Binary file (64.2 kB)
 
grob_img/grob_p128.jpeg DELETED
Binary file (41.2 kB)
 
grob_img/grob_p129.jpeg DELETED
Binary file (51.6 kB)
 
grob_img/grob_p13.jpeg DELETED
Binary file (98 kB)
 
grob_img/grob_p130.jpeg DELETED

Git LFS Details

  • SHA256: 96bef100ad82f1bf948a6559608d84429e17c04086d893ca83835e7d9d2e71c3
  • Pointer size: 131 Bytes
  • Size of remote file: 382 kB
grob_img/grob_p131.jpeg DELETED

Git LFS Details

  • SHA256: 5a452d634674cdd034b4965382fd9b5b0cb59e6bf0ef156d2d043d3595e0debf
  • Pointer size: 131 Bytes
  • Size of remote file: 407 kB
grob_img/grob_p132.jpeg DELETED

Git LFS Details

  • SHA256: 7254e22d6463e5163ab1587467e6dc8a57f67a7747d5c5a5411a63d59ae6f1ee
  • Pointer size: 131 Bytes
  • Size of remote file: 264 kB
grob_img/grob_p133.jpeg DELETED

Git LFS Details

  • SHA256: 7254e22d6463e5163ab1587467e6dc8a57f67a7747d5c5a5411a63d59ae6f1ee
  • Pointer size: 131 Bytes
  • Size of remote file: 264 kB
grob_img/grob_p134.jpeg DELETED

Git LFS Details

  • SHA256: 5a452d634674cdd034b4965382fd9b5b0cb59e6bf0ef156d2d043d3595e0debf
  • Pointer size: 131 Bytes
  • Size of remote file: 407 kB
grob_img/grob_p135.jpeg DELETED
Binary file (48.5 kB)
 
grob_img/grob_p136.jpeg DELETED
Binary file (67.4 kB)
 
grob_img/grob_p137.jpeg DELETED
Binary file (24.3 kB)
 
grob_img/grob_p138.jpeg DELETED
Binary file (52.9 kB)
 
grob_img/grob_p139.jpeg DELETED
Binary file (52.9 kB)
 
grob_img/grob_p14.jpeg DELETED
Binary file (90.1 kB)
 
grob_img/grob_p140.jpeg DELETED

Git LFS Details

  • SHA256: 0b7b18b2d3d947c4c207987831d071afe51e02dd00ee98977c3a9505b7da75e1
  • Pointer size: 131 Bytes
  • Size of remote file: 684 kB
grob_img/grob_p141.jpeg DELETED

Git LFS Details

  • SHA256: 438eab576d0cef9315acdbb9c260af97c22e2817fb2ec7e9878c0e22e1417535
  • Pointer size: 131 Bytes
  • Size of remote file: 627 kB