Skip to content

⚡️ PERF: enrollment 필드 사용으로 쿼리 개선 #15

⚡️ PERF: enrollment 필드 사용으로 쿼리 개선

⚡️ PERF: enrollment 필드 사용으로 쿼리 개선 #15

Workflow file for this run

name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
steps:
- name: 코드 체크아웃
uses: actions/checkout@v4
- name: SSH 키 설정
env:
PRIVATE_KEY: ${{ secrets.AWS_PRIVATE_KEY }}
run: |
mkdir -p ~/.ssh
echo "$PRIVATE_KEY" > ~/.ssh/aws.pem
sed -i 's/\\n/\n/g' ~/.ssh/aws.pem # 줄바꿈 문자 처리
chmod 600 ~/.ssh/aws.pem
- name: EC2에 배포
env:
HOST: ${{ secrets.EC2_HOST }}
USER: ${{ secrets.EC2_USER }}
run: |
ssh -i ~/.ssh/aws.pem -o StrictHostKeyChecking=no $USER@$HOST '
# 저장소 확인 및 클론/업데이트
if [ -d ~/SkillBridge/.git ]; then
# 기존 저장소가 있는 경우 업데이트
cd ~/SkillBridge &&
git fetch --all &&
git reset --hard origin/main
else
# 저장소가 없는 경우 새로 클론
mkdir -p ~/SkillBridge &&
git clone https://github.com/DjangoBookMakers/SkillBridge.git ~/SkillBridge &&
cd ~/SkillBridge
fi
# 환경 설정
echo "SECRET_KEY=${{ secrets.SECRET_KEY }}" > .env.prod &&
echo "ALLOWED_HOSTS=${{ secrets.ALLOWED_HOSTS }}" >> .env.prod &&
echo "PORTONE_PG_PROVIDER=${{ secrets.PORTONE_PG_PROVIDER }}" >> .env.prod &&
echo "PORTONE_SHOP_ID=${{ secrets.PORTONE_SHOP_ID }}" >> .env.prod &&
echo "PORTONE_API_KEY=${{ secrets.PORTONE_API_KEY }}" >> .env.prod &&
echo "PORTONE_API_SECRET=${{ secrets.PORTONE_API_SECRET }}" >> .env.prod &&
echo "GOOGLE_CLIENT_ID=${{ secrets.GOOGLE_CLIENT_ID }}" >> .env.prod &&
echo "GOOGLE_CLIENT_SECRET=${{ secrets.GOOGLE_CLIENT_SECRET }}" >> .env.prod &&
echo "KAKAO_CLIENT_ID=${{ secrets.KAKAO_CLIENT_ID }}" >> .env.prod &&
echo "KAKAO_CLIENT_SECRET=${{ secrets.KAKAO_CLIENT_SECRET }}" >> .env.prod &&
echo "POSTGRES_DB=${{ secrets.POSTGRES_DB }}" >> .env.prod &&
echo "POSTGRES_USER=${{ secrets.POSTGRES_USER }}" >> .env.prod &&
echo "POSTGRES_PASSWORD=${{ secrets.POSTGRES_PASSWORD }}" >> .env.prod &&
echo "POSTGRES_HOST=${{ secrets.POSTGRES_HOST }}" >> .env.prod &&
echo "POSTGRES_PORT=${{ secrets.POSTGRES_PORT }}" >> .env.prod &&
echo "POSTGRES_DB=${{ secrets.POSTGRES_DB }}" > .env.prod-db &&
echo "POSTGRES_USER=${{ secrets.POSTGRES_USER }}" >> .env.prod-db &&
echo "POSTGRES_PASSWORD=${{ secrets.POSTGRES_PASSWORD }}" >> .env.prod-db &&
# Docker 컨테이너 재시작
docker compose down &&
docker compose up -d --build
'