File size: 1,784 Bytes
c8abb98
06aa71a
51f1118
 
de67995
c8abb98
de67995
c8abb98
 
1928f0a
8f5f2da
de67995
 
c8abb98
31eae05
de67995
dc7c3d5
0b78390
de67995
 
dc7c3d5
 
 
1928f0a
 
 
 
 
 
dc7c3d5
 
 
de67995
06aa71a
dc7c3d5
8f5f2da
dc7c3d5
1928f0a
 
 
cee8b15
1928f0a
f326774
 
3e6059a
 
1928f0a
de67995
 
0b78390
de67995
dc7c3d5
de67995
dc7c3d5
de67995
 
 
 
51f1118
 
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
#!/bin/bash

echo "starting..."
<< COMMENTOUT000
# 必須: 環境変数 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"

REPO_URL="https://user:[email protected]/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"
git lfs track "*.map"
git lfs track "*.ttf"
git lfs track "*.otf"
git lfs track "*.png"
git add .gitattributes

# 既存内容を削除(.git を除く)
find . -mindepth 1 -maxdepth 1 ! -name ".git" -exec rm -rf {} +

# dist フォルダの中身をすべてコピー
rsync -av "$SRC_DIR/" "$WORK_DIR/"

# バイナリファイルを Git LFS に登録し直す
find . -type f \( -name "*.js" -o -name "*.map" -o -name "*.ttf" -o -name "*.otf" -o -name "*.png" \) -exec git rm --cached {} \; 2>/dev/null || true
find . -type f \( -name "*.js" -o -name "*.map" -o -name "*.ttf" -o -name "*.otf" -o -name "*.png" \) -exec git add {} \;

# 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 設定とコミット・プッシュ
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 "アップロード完了 ✅"

COMMENTOUT000