Skip to content

โ™ป๏ธrefactor: ์ตœ์ข… ์ˆ˜์ • #61

โ™ป๏ธrefactor: ์ตœ์ข… ์ˆ˜์ •

โ™ป๏ธrefactor: ์ตœ์ข… ์ˆ˜์ • #61

Workflow file for this run

name: Deploy to EC2
on:
pull_request:
types: [closed]
branches: [main, develop]
env:
DOCKER_CONTAINER_NAME: coplan-app
jobs:
warmup:
# ๐Ÿ›ก๏ธ ๋จธ์ง€๋œ ๊ฒฝ์šฐ์—๋งŒ ์‹คํ–‰
if: github.event.pull_request.merged == true
runs-on: self-hosted
timeout-minutes: 3
steps:
- name: Environment check
run: |
echo "=== Deployment System Check ==="
echo "๐Ÿ“‹ Merged PR: ${{ github.event.pull_request.title }}"
echo "๐Ÿ‘ค Author: ${{ github.event.pull_request.user.login }}"
echo "๐Ÿ”„ From: ${{ github.event.pull_request.head.ref }} โ†’ ${{ github.event.pull_request.base.ref }}"
echo "๐Ÿ“ Commit: ${{ github.event.pull_request.merge_commit_sha }}"
echo ""
echo "๐Ÿ–ฅ๏ธ System Status:"
whoami
docker --version
free -h
echo ""
echo "๐Ÿณ Container Status:"
docker ps
deploy:
needs: warmup
runs-on: self-hosted
timeout-minutes: 10
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Execute deployment script
run: |
echo "๐Ÿš€ Starting deployment..."
echo "๐Ÿ”„ Branch: ${{ github.ref_name }}"
echo "๐Ÿ”„ Commit: ${{ github.sha }}"
echo "๐Ÿ“ฆ PR: #${{ github.event.pull_request.number }}"
# deploy.sh ์‹คํ–‰
cd /home/ubuntu/coplan
chmod +x ./deploy.sh
./deploy.sh
- name: Health check
run: |
echo "๐Ÿฅ Health checking..."
sleep 15
if docker ps | grep -q $DOCKER_CONTAINER_NAME; then
echo "โœ… Deployment completed successfully!"
echo "๐Ÿ“Š Container status:"
docker ps | grep $DOCKER_CONTAINER_NAME
echo ""
echo "๐Ÿ“ Recent logs:"
docker logs --tail 5 $DOCKER_CONTAINER_NAME
echo ""
echo "๐ŸŒ Service available at: https://coplan.work"
else
echo "โŒ Deployment failed!"
echo "๐Ÿ” Checking container logs..."
docker logs $DOCKER_CONTAINER_NAME 2>/dev/null || echo "No container logs available"
echo "๐Ÿ” Checking system status..."
docker ps -a
free -h
exit 1
fi