name: Deploy FastAPI Application

on:
  push:
    branches: [ main ]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      
      - name: Deploy to server
        uses: appleboy/ssh-action@master
        with:
          host: ${{ secrets.SERVER_HOST }}
          username: ${{ secrets.SERVER_USERNAME }}
          key: ${{ secrets.SERVER_SSH_KEY }}
          script: |
            # Переходим в директорию проекта
            cd ~/fastapi-app
            
            # Получаем последние изменения из git
            git pull origin main
            
            # Собираем новый образ
            docker-compose build
            
            # Перезапускаем сервисы
            docker-compose up -d
            
            # Очищаем неиспользуемые образы
            docker image prune -f