mirror of
https://github.com/henry4682/linebot_finance.git
synced 2026-05-16 04:41:52 +00:00
change gitea yaml
This commit is contained in:
@@ -7,24 +7,28 @@ on:
|
||||
jobs:
|
||||
redeploy:
|
||||
runs-on: self-hosted
|
||||
# 不使用 steps 的 uses,全部改用 run
|
||||
steps:
|
||||
# 1. 讓 Runner 抓取最新程式碼到當前工作目錄
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
# 2. 直接在主機環境同步檔案並啟動
|
||||
- name: Deploy
|
||||
run: |
|
||||
echo "Current Path: $(pwd)"
|
||||
# 1. 由於 Runner 容器裡沒有 sudo,我們假設它有權限訪問掛載的路徑
|
||||
# 我們直接嘗試在「主機」路徑執行指令
|
||||
|
||||
# 將 Runner 抓下來的檔案同步到你的運行目錄
|
||||
# 注意:因為 Runner 權限可能與主機不同,我們用 rsync 或 cp 覆蓋
|
||||
cp -rf . /home/ubuntu/apps/linebot_finance/
|
||||
echo "Starting Direct Host Deployment..."
|
||||
|
||||
# 切換到目標目錄
|
||||
cd /home/ubuntu/apps/linebot_finance
|
||||
# 2. 這是最關鍵的一步:
|
||||
# 如果你的 Runner 是 1Panel 裝的,它通常會把主機的目錄掛載進來
|
||||
# 我們直接對準主機上的 linebot_finance 資料夾操作
|
||||
|
||||
# 執行 Docker 重啟
|
||||
docker compose up -d --build
|
||||
# 3. 執行同步與部署
|
||||
# 我們假設路徑已經在之前的步驟設定好 safe.directory 了
|
||||
cd /home/ubuntu/apps/linebot_finance || exit 1
|
||||
|
||||
echo "Deployment successful!"
|
||||
# 使用絕對路徑執行 git,避免 PATH 問題
|
||||
/usr/bin/git fetch --all
|
||||
/usr/bin/git reset --hard origin/main
|
||||
|
||||
# 4. 重啟 Docker
|
||||
/usr/bin/docker compose up -d --build
|
||||
|
||||
echo "Deployment finished!"
|
||||
Reference in New Issue
Block a user