Spaces:
Runtime error
Runtime error
File size: 1,748 Bytes
c8abb98 51f1118 39c505a de67995 c8abb98 de67995 c8abb98 8f5f2da 39c505a de67995 c8abb98 39c505a 31eae05 de67995 dc7c3d5 0b78390 de67995 dc7c3d5 39c505a 668b143 dc7c3d5 de67995 06aa71a 39c505a dc7c3d5 8f5f2da dc7c3d5 39c505a cee8b15 39c505a f326774 3e6059a 39c505a de67995 0b78390 de67995 dc7c3d5 de67995 dc7c3d5 de67995 39c505a |
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 63 64 |
#!/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 lfs track "*.ttf"
git lfs track "*.otf"
git lfs track "*.png"
git lfs track "*.svg"
git add .gitattributes
# 既存内容を削除(.git を除く)
find . -mindepth 1 -maxdepth 1 ! -name ".git" -exec rm -rf {} +
# 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 "アップロード完了 ✅" |