Merge pull request #19 from 3nln/main #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deploy lerax.nolan.uz | |
| on: | |
| push: | |
| branches: | |
| - main | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| environment: hetzner | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Deploy to server | |
| uses: appleboy/ssh-action@v1 | |
| with: | |
| host: ${{ secrets.SERVER_HOST }} | |
| username: ${{ secrets.SERVER_USER }} | |
| key: ${{ secrets.SERVER_KEY }} | |
| script: | | |
| set -e | |
| echo "🔹 Loading Node environment..." | |
| export PATH="/root/.local/share/fnm:$PATH" | |
| eval "$(fnm env --use-on-cd)" | |
| echo "🔹 Checking Node version..." | |
| node -v | |
| npm -v | |
| echo "🔹 Navigating to project directory..." | |
| cd /var/www/lerax.nolan.uz || exit 1 | |
| echo "🔹 Pulling latest code..." | |
| git pull origin main | |
| echo "🔹 Installing dependencies..." | |
| npm install | |
| echo "🔹 Building project..." | |
| npm run build | |
| echo "🔹 Restarting PM2 process..." | |
| if pm2 list | grep -q "lerax.nolan.uz"; then | |
| NODE_ENV=production pm2 restart "lerax.nolan.uz" | |
| else | |
| NODE_ENV=production pm2 start npm --name "lerax.nolan.uz" -- start | |
| fi | |
| echo "✅ Deployment completed successfully!" |