@@ -34,27 +34,41 @@ jobs:
3434 chmod 600 ~/.ssh/ec2.pem
3535 ssh-keyscan -H ${{ secrets.EC2_HOST }} >> ~/.ssh/known_hosts
3636
37+ # ---------------- CREATE FOLDERS ----------------
38+ - name : Prepare EC2 Directories
39+ run : |
40+ ssh -i ~/.ssh/ec2.pem ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }} << 'EOF'
41+ mkdir -p ${{ secrets.APP_DIR }}/api-gateway
42+ mkdir -p ${{ secrets.APP_DIR }}/services/patient-service
43+ mkdir -p ${{ secrets.APP_DIR }}/services/staff-service
44+ mkdir -p ${{ secrets.APP_DIR }}/frontend
45+ EOF
46+
3747 # ---------------- BACKEND DEPLOY ----------------
38- - name : Deploy Backend
48+ - name : Deploy API Gateway
49+ run : |
50+ rsync -avz --delete \
51+ -e "ssh -i ~/.ssh/ec2.pem" \
52+ api-gateway/dist/ \
53+ ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }}:${{ secrets.APP_DIR }}/api-gateway/dist/
54+
55+ - name : Deploy Patient Service
56+ run : |
57+ rsync -avz --delete \
58+ -e "ssh -i ~/.ssh/ec2.pem" \
59+ services/patient-service/dist/ \
60+ ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }}:${{ secrets.APP_DIR }}/services/patient-service/dist/
61+
62+ - name : Deploy Staff Service
3963 run : |
4064 rsync -avz --delete \
4165 -e "ssh -i ~/.ssh/ec2.pem" \
42- api-gateway/dist \
43- services/patient-service/dist \
44- services/staff-service/dist \
45- api-gateway/package.json \
46- services/patient-service/package.json \
47- services/staff-service/package.json \
48- node_modules \
49- pnpm-lock.yaml \
50- ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }}:${{ secrets.APP_DIR }}/
66+ services/staff-service/dist/ \
67+ ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }}:${{ secrets.APP_DIR }}/services/staff-service/dist/
5168
5269 # ---------------- FRONTEND DEPLOY ----------------
5370 - name : Deploy Frontend Standalone
5471 run : |
55- ssh -i ~/.ssh/ec2.pem ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }} \
56- "mkdir -p ${{ secrets.APP_DIR }}/frontend"
57-
5872 rsync -avz --delete \
5973 -e "ssh -i ~/.ssh/ec2.pem" \
6074 frontend/.next/standalone/ \
7084 frontend/public/ \
7185 ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }}:${{ secrets.APP_DIR }}/frontend/public/
7286
87+ # ---------------- RESTART SERVICES ----------------
7388 - name : Restart Services
7489 run : |
7590 ssh -i ~/.ssh/ec2.pem ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }} << 'EOF'
0 commit comments