Skip to content

Merge pull request #19 from 3nln/main #1

Merge pull request #19 from 3nln/main

Merge pull request #19 from 3nln/main #1

Workflow file for this run

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!"