Files
few-line-engine/.gitea/workflows/deploy-testing.yml

54 lines
1.4 KiB
YAML

name: Deploy to Testing Server
on:
push:
branches:
- develop
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
name: Deploy to Testing Environment
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Deploy via SSH
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
port: ${{ secrets.SSH_PORT || 22 }}
script: |
# Navigate to project directory
cd ${{ secrets.PROJECT_PATH }}
# Pull latest code
echo "🔄 Pulling latest code from repository..."
git pull origin develop
# Install dependencies
echo "📦 Installing dependencies with yarn..."
yarn install --frozen-lockfile
# Run database migrations
echo "🗄️ Running database migrations..."
yarn migration:run
# Build the project
echo "🏗️ Building the project..."
yarn build
# Restart PM2 process
echo "🔄 Restarting PM2 application..."
pm2 restart ${{ secrets.PM2_APP_NAME || 'low-code-engine' }}
# Show PM2 status
echo "✅ Deployment completed! PM2 status:"
pm2 status
echo "🚀 Application deployed successfully!"