Skip to content

Commit 7943f6b

Browse files
committed
fix: 쉘 스크립트 직접 실행
1 parent ab33f68 commit 7943f6b

File tree

1 file changed

+62
-19
lines changed

1 file changed

+62
-19
lines changed

.github/workflows/main.yml

Lines changed: 62 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -56,23 +56,66 @@ jobs:
5656
username: ${{ secrets.REMOTE_USER }}
5757
key: ${{ secrets.REMOTE_PRIVATE_KEY }}
5858
source: ./.env
59-
target: /home/root/app/autodocs
59+
target: /home/root/app/actodocs
60+
# sh 실행
61+
- name: Connect to Remote Server and Run Commands
62+
env:
63+
REMOTE_HOST: ${{ secrets.REMOTE_HOST }}
64+
REMOTE_USER: ${{ secrets.REMOTE_USER }}
65+
SSH_KEY: ${{ secrets.SSH_KEY }}
66+
run: |
67+
echo "$SSH_KEY" > ~/.ssh/id_rsa
68+
chmod 600 ~/.ssh/id_rsa
69+
ssh -o StrictHostKeyChecking=no $REMOTE_USER@$REMOTE_HOST << 'EOF'
70+
DIR="/home/root/app/actodocs"
71+
72+
# Check if directory exists
73+
if [ -d "$DIR/backend" ]; then
74+
echo "$DIR/backend 디렉토리가 존재합니다. 최신 버전으로 업데이트 중..."
75+
cd "$DIR"
76+
git pull
77+
else
78+
echo "$DIR/backend 디렉토리가 존재하지 않습니다. 클론 중..."
79+
git clone https://github.com/boostcampwm-2024/web15-OctoDocs.git "$DIR"
80+
cd "$DIR"
81+
fi
6082
61-
# 배포용 쉘 스크립트 파일 전송
62-
- name: Copy deploy.sh to remote server
63-
uses: appleboy/scp-action@master
64-
with:
65-
host: ${{ secrets.REMOTE_DEV_IP }}
66-
username: ${{ secrets.REMOTE_USER }}
67-
key: ${{ secrets.REMOTE_PRIVATE_KEY }}
68-
source: ./deploy.sh
69-
target: /home/root
70-
# 쉘 스크립트 실행
71-
- name: Run command on remote server
72-
uses: appleboy/ssh-action@master
73-
with:
74-
host: ${{ secrets.REMOTE_DEV_IP }}
75-
username: ${{ secrets.REMOTE_USER }}
76-
key: ${{ secrets.REMOTE_PRIVATE_KEY }}
77-
script: |
78-
sh /home/root/deploy.sh
83+
# Move to backend directory
84+
cd backend
85+
86+
# Check and kill existing process
87+
EXISTING_PID=$(lsof -ti :3000)
88+
89+
if [ -n "$EXISTING_PID" ]; then
90+
echo "프로세스 종료 중...: $EXISTING_PID"
91+
kill -9 "$EXISTING_PID"
92+
echo "$EXISTING_PID 프로세스 종료"
93+
else
94+
echo "실행 중인 프로세스가 없습니다."
95+
fi
96+
97+
# Install dependencies and start application
98+
echo "의존성 설치"
99+
yarn install
100+
101+
echo "시작"
102+
yarn start
103+
EOF
104+
# # 배포용 쉘 스크립트 파일 전송
105+
# - name: Copy deploy.sh to remote server
106+
# uses: appleboy/scp-action@master
107+
# with:
108+
# host: ${{ secrets.REMOTE_DEV_IP }}
109+
# username: ${{ secrets.REMOTE_USER }}
110+
# key: ${{ secrets.REMOTE_PRIVATE_KEY }}
111+
# source: ./deploy.sh
112+
# target: /home/root
113+
# # 쉘 스크립트 실행
114+
# - name: Run command on remote server
115+
# uses: appleboy/ssh-action@master
116+
# with:
117+
# host: ${{ secrets.REMOTE_DEV_IP }}
118+
# username: ${{ secrets.REMOTE_USER }}
119+
# key: ${{ secrets.REMOTE_PRIVATE_KEY }}
120+
# script: |
121+
# sh /home/root/deploy.sh

0 commit comments

Comments
 (0)