Skip to content

Hanwhawm : apply MKT_TP #719

Hanwhawm : apply MKT_TP

Hanwhawm : apply MKT_TP #719

Workflow file for this run

name: Deploy to server
on:
push:
branches:
- master # master 브랜치에 푸시될 때 트리거
pull_request:
branches:
- master # master 브랜치에 PR이 열릴 때 트리거
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10.12' # Python 3.10.12 버전 설정
cache: 'pip' # caching pip dependencies
- name: Run setup script
run: |
bash setup.sh
- name: Add SSH key
uses: webfactory/[email protected]
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
- name: Deploy to Server
env:
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
SERVER_HOST: ${{ secrets.SERVER_HOST }}
SERVER_USER: ${{ secrets.SERVER_USER }}
PROJECT_DIR: ${{ secrets.PROJECT_DIR }}
run: |
echo "Starting deployment..."
echo "SERVER_HOST: $SERVER_HOST"
echo "SERVER_USER: $SERVER_USER"
echo "PROJECT_DIR: $PROJECT_DIR"
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh -o StrictHostKeyChecking=no $SERVER_USER@$SERVER_HOST << 'EOF'
cd $PROJECT_DIR # 실제 배포할 프로젝트 경로
echo "Current directory: $(pwd)"
cd ${{ secrets.PROJECT_DIR }}
echo "Current directory: $(pwd)"
git fetch --all && git reset --hard origin/master
git pull origin master
# pyenv 가상환경 활성화
echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> $GITHUB_ENV
echo 'eval "$(pyenv init --path)"' >> $GITHUB_ENV
echo 'eval "$(pyenv init -)"' >> $GITHUB_ENV
echo 'eval "$(pyenv virtualenv-init -)"' >> $GITHUB_ENV
pyenv activate pyenv # 사용할 가상환경 이름
# setup.sh 스크립트 실행
if [ -f setup.sh ]; then
echo "Running setup.sh in $PROJECT_DIR..."
bash setup.sh
fi
echo "Deployment completed in $PROJECT_DIR."
EOF