name: Deploy to Dev on: push: branches: [ develop, dev ] jobs: deploy-dev: runs-on: ubuntu-latest steps: - name: Deploy to Dev Server uses: appleboy/ssh-action@v1.0.0 with: host: ${{ secrets.DEV_HOST }} username: ${{ secrets.DEV_USER }} key: ${{ secrets.SSH_PRIVATE_KEY }} port: 22 use_insecure_cipher: true script_stop: true script: | set -e cd /var/www/platform/dev echo "📦 Pulling latest changes..." git pull origin develop echo "🔄 Restarting Docker services..." docker compose -p platform_dev restart web celery celery-beat echo "📊 Running migrations..." docker compose -p platform_dev exec -T web python manage.py migrate || true echo "✅ Dev deployment completed" - name: Health Check uses: appleboy/ssh-action@v1.0.0 with: host: ${{ secrets.DEV_HOST }} username: ${{ secrets.DEV_USER }} key: ${{ secrets.SSH_PRIVATE_KEY }} port: 22 use_insecure_cipher: true script: | sleep 8 docker compose -p platform_dev ps | head -15 HEALTH=$(curl -s http://localhost:8124/health/ 2>&1) if [ -n "$HEALTH" ]; then echo "✅ Health OK: $HEALTH" | head -c 200 else echo "⚠️ Health endpoint not responding yet" fi