Spaces:
Build error
Build error
File size: 1,711 Bytes
c8abb98 dc7c3d5 06aa71a de67995 c8abb98 de67995 c8abb98 8f5f2da dc7c3d5 de67995 c8abb98 dc7c3d5 31eae05 de67995 dc7c3d5 0b78390 de67995 dc7c3d5 cee8b15 dc7c3d5 de67995 06aa71a dc7c3d5 cee8b15 2f2fb9b dc7c3d5 8f5f2da dc7c3d5 c8abb98 cee8b15 dc7c3d5 f326774 3e6059a dc7c3d5 de67995 0b78390 de67995 dc7c3d5 de67995 dc7c3d5 de67995 |
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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
#!/bin/bash
echo "starting..."
# 必須: 環境変数 sc4sc_token が設定されていることを確認
if [ -z "$sc4sc_token" ]; then
echo "Error: 環境変数 sc4sc_token が設定されていません。"
exit 1
fi
SRC_DIR="$(cd "$(dirname "$0")" && pwd)/dist"
# 作業用一時ディレクトリ作成
WORK_DIR=$(mktemp -d)
echo "作業ディレクトリ: $WORK_DIR"
# Git 認証つきURL
REPO_URL="https://user:$sc4sc_token@huggingface.co/spaces/s-4-s/editor"
# リモートから clone
git clone "$REPO_URL" "$WORK_DIR"
cd "$WORK_DIR" || exit 1
# Git LFS を初期化
git lfs install
# LFS対象ファイルを指定
git lfs track "js/scratch-gui.js"
git lfs track "js/scratch-gui.js.map"
git lfs track "dist/js/scratch-gui.js"
git lfs track "dist/js/scratch-gui.js.map"
git add .gitattributes
# 既存内容を削除(.git を除く)
find . -mindepth 1 -maxdepth 1 ! -name ".git" -exec rm -rf {} +
# コピー元(dist)パス
SRC_DIR=$(pwd)/dist
# dist フォルダの中身をすべてコピー
rsync -av "$SRC_DIR/" "$WORK_DIR/"
# LFS対象ファイルを rm --cached → add し直す
git rm --cached js/scratch-gui.js js/scratch-gui.js.map 2>/dev/null || true
git add js/scratch-gui.js js/scratch-gui.js.map
# Dockerfile の CMD を置換
if [ -f Dockerfile ]; then
sed -i.bak 's|CMD /bin/sh -c "./upload.sh && npm start"|CMD /bin/sh -c "npm start"|' Dockerfile
fi
# Git 設定と commit/push
git config user.name "auto-deploy"
git config user.email "[email protected]"
git add .
git commit -m "Auto deploy at $(date '+%Y-%m-%d %H:%M:%S')" || echo "No changes to commit."
git push origin main --force
# 後始末
cd ..
rm -rf "$WORK_DIR"
echo "アップロード完了 ✅"
|