Spaces:
Runtime error
Runtime error
Update upload.sh
Browse files
upload.sh
CHANGED
@@ -1,4 +1,5 @@
|
|
1 |
#!/bin/bash
|
|
|
2 |
|
3 |
# 必須: 環境変数 sc4sc_token が設定されていることを確認
|
4 |
if [ -z "$sc4sc_token" ]; then
|
@@ -6,51 +7,51 @@ if [ -z "$sc4sc_token" ]; then
|
|
6 |
exit 1
|
7 |
fi
|
8 |
|
9 |
-
|
10 |
-
git lfs install
|
11 |
-
|
12 |
-
# LFS対象ファイルを指定
|
13 |
-
git lfs track "js/scratch-gui.js"
|
14 |
-
git lfs track "js/scratch-gui.js.map"
|
15 |
-
|
16 |
-
# .gitattributes をコミット対象に追加(重要)
|
17 |
-
git add .gitattributes
|
18 |
-
|
19 |
-
# ===== LFS対応のため、キャッシュから除去して再追加 =====
|
20 |
-
git rm --cached js/scratch-gui.js || true
|
21 |
-
git rm --cached js/scratch-gui.js.map || true
|
22 |
-
git add js/scratch-gui.js js/scratch-gui.js.map
|
23 |
-
git commit -m "Move large files to LFS" || echo "No changes to commit (LFS prep)."
|
24 |
-
# ==========================================================
|
25 |
-
|
26 |
WORK_DIR=$(mktemp -d)
|
27 |
echo "作業ディレクトリ: $WORK_DIR"
|
28 |
|
|
|
29 |
REPO_URL="https://user:[email protected]/spaces/s-4-s/editor"
|
30 |
|
|
|
31 |
git clone "$REPO_URL" "$WORK_DIR"
|
32 |
cd "$WORK_DIR" || exit 1
|
33 |
|
34 |
-
#
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
find . -mindepth 1 -maxdepth 1 ! -name ".git" -exec rm -rf {} +
|
36 |
|
37 |
-
# dist
|
38 |
-
|
39 |
|
40 |
-
#
|
41 |
-
|
|
|
|
|
|
|
|
|
42 |
|
43 |
-
# CMD
|
44 |
if [ -f Dockerfile ]; then
|
45 |
sed -i.bak 's|CMD /bin/sh -c "./upload.sh && npm start"|CMD /bin/sh -c "npm start"|' Dockerfile
|
46 |
fi
|
47 |
|
|
|
48 |
git config user.name "auto-deploy"
|
49 |
git config user.email "[email protected]"
|
50 |
git add .
|
51 |
git commit -m "Auto deploy at $(date '+%Y-%m-%d %H:%M:%S')" || echo "No changes to commit."
|
52 |
-
git push origin main
|
53 |
|
|
|
54 |
cd ..
|
55 |
rm -rf "$WORK_DIR"
|
56 |
|
|
|
1 |
#!/bin/bash
|
2 |
+
echo "starting..."
|
3 |
|
4 |
# 必須: 環境変数 sc4sc_token が設定されていることを確認
|
5 |
if [ -z "$sc4sc_token" ]; then
|
|
|
7 |
exit 1
|
8 |
fi
|
9 |
|
10 |
+
# 作業用一時ディレクトリ作成
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
WORK_DIR=$(mktemp -d)
|
12 |
echo "作業ディレクトリ: $WORK_DIR"
|
13 |
|
14 |
+
# Git 認証つきURL
|
15 |
REPO_URL="https://user:[email protected]/spaces/s-4-s/editor"
|
16 |
|
17 |
+
# リモートから clone
|
18 |
git clone "$REPO_URL" "$WORK_DIR"
|
19 |
cd "$WORK_DIR" || exit 1
|
20 |
|
21 |
+
# Git LFS を初期化
|
22 |
+
git lfs install
|
23 |
+
|
24 |
+
# LFS対象ファイルを指定
|
25 |
+
git lfs track "js/scratch-gui.js"
|
26 |
+
git lfs track "js/scratch-gui.js.map"
|
27 |
+
git add .gitattributes
|
28 |
+
|
29 |
+
# 既存内容を削除(.git を除く)
|
30 |
find . -mindepth 1 -maxdepth 1 ! -name ".git" -exec rm -rf {} +
|
31 |
|
32 |
+
# コピー元(dist)パス
|
33 |
+
SRC_DIR=$(pwd)/../dist
|
34 |
|
35 |
+
# dist フォルダの中身をすべてコピー
|
36 |
+
rsync -av "$SRC_DIR/" ./
|
37 |
+
|
38 |
+
# LFS対象ファイルを rm --cached → add し直す
|
39 |
+
git rm --cached js/scratch-gui.js js/scratch-gui.js.map 2>/dev/null || true
|
40 |
+
git add js/scratch-gui.js js/scratch-gui.js.map
|
41 |
|
42 |
+
# Dockerfile の CMD を置換
|
43 |
if [ -f Dockerfile ]; then
|
44 |
sed -i.bak 's|CMD /bin/sh -c "./upload.sh && npm start"|CMD /bin/sh -c "npm start"|' Dockerfile
|
45 |
fi
|
46 |
|
47 |
+
# Git 設定と commit/push
|
48 |
git config user.name "auto-deploy"
|
49 |
git config user.email "[email protected]"
|
50 |
git add .
|
51 |
git commit -m "Auto deploy at $(date '+%Y-%m-%d %H:%M:%S')" || echo "No changes to commit."
|
52 |
+
git push origin main --force
|
53 |
|
54 |
+
# 後始末
|
55 |
cd ..
|
56 |
rm -rf "$WORK_DIR"
|
57 |
|