Skip to content

โœจFeat: ๊ณตํ†ต ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ๊ตฌํ˜„ #11

โœจFeat: ๊ณตํ†ต ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ๊ตฌํ˜„

โœจFeat: ๊ณตํ†ต ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ๊ตฌํ˜„ #11

Workflow file for this run

name: Deploy to EC2
on:
pull_request:
types: [closed]
branches: [main, develop]
jobs:
deploy:
if: github.event.pull_request.merged == true
runs-on: self-hosted
timeout-minutes: 15
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Deploy to EC2
run: |
echo "๐Ÿš€ Starting deployment..."
echo "๐Ÿ”„ Branch: ${{ github.ref_name }}"
echo "๐Ÿ”„ Commit: ${{ github.sha }}"
# ๋ฉ”๋ชจ๋ฆฌ ์ •๋ฆฌ
echo "๐Ÿงน Cleaning up memory..."
docker system prune -f
# ์•ฑ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ฝ”๋“œ ๋ณต์‚ฌ
echo "๐Ÿ“‚ Copying files..."
rsync -av --delete \
--exclude='.git' \
--exclude='node_modules' \
--exclude='.next' \
./ /home/ubuntu/coplan/app/
# ๋ฐฐํฌ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™
cd /home/ubuntu/coplan
# Docker ์ปจํ…Œ์ด๋„ˆ ์žฌ์‹œ์ž‘
echo "๐Ÿ”„ Restarting containers..."
docker compose down
docker compose up -d --build
# ํ—ฌ์Šค์ฒดํฌ
echo "๐Ÿฅ Health checking..."
sleep 15
if docker ps | grep -q coplan-app; then
echo "โœ… Deployment completed successfully!"
docker logs --tail 10 coplan-app
echo "๐ŸŒ Service available at: http://15.164.127.149"
else
echo "โŒ Deployment failed!"
docker logs coplan-app
exit 1
fi