Fix deployment workflow: correct target paths and PM2 cwd
- Deploy backend to /opt/gameserver-monitor/backend/ (not root) - Deploy frontend to /opt/gameserver-monitor/frontend/dist/ - Run PM2 restart from backend directory with --update-env - Add proper PM2 process check before restart Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -38,8 +38,9 @@ jobs:
|
||||
username: root
|
||||
key: ${{ secrets.SSH_DEPLOY_KEY }}
|
||||
source: "gsm-backend/"
|
||||
target: "/opt/gameserver-monitor/"
|
||||
target: "/opt/gameserver-monitor/backend/"
|
||||
strip_components: 1
|
||||
overwrite: true
|
||||
|
||||
- name: Deploy Frontend
|
||||
uses: appleboy/scp-action@v0.1.7
|
||||
@@ -48,8 +49,9 @@ jobs:
|
||||
username: root
|
||||
key: ${{ secrets.SSH_DEPLOY_KEY }}
|
||||
source: "gsm-frontend/dist/"
|
||||
target: "/opt/gameserver-monitor/frontend/"
|
||||
target: "/opt/gameserver-monitor/frontend/dist/"
|
||||
strip_components: 2
|
||||
overwrite: true
|
||||
|
||||
- name: Restart Services
|
||||
uses: appleboy/ssh-action@v1.0.3
|
||||
@@ -58,6 +60,14 @@ jobs:
|
||||
username: root
|
||||
key: ${{ secrets.SSH_DEPLOY_KEY }}
|
||||
script: |
|
||||
cd /opt/gameserver-monitor
|
||||
pm2 restart gsm-backend || pm2 start backend/server.js --name gsm-backend
|
||||
cd /opt/gameserver-monitor/backend
|
||||
|
||||
# Restart or start PM2 process with correct cwd
|
||||
if pm2 list | grep -q gsm-backend; then
|
||||
pm2 restart gsm-backend --update-env
|
||||
else
|
||||
pm2 start server.js --name gsm-backend
|
||||
pm2 save
|
||||
fi
|
||||
|
||||
echo "Deploy complete!"
|
||||
|
||||
Reference in New Issue
Block a user