Files
portal-api/.github/workflows/deploy.yml
T
2026-03-17 17:30:59 +07:00

64 lines
1.6 KiB
YAML

name: Deploy to Server
on:
push:
branches: [ develop ]
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Debug secrets
run: |
echo "HOST=${{ secrets.HOST }}"
echo "PORT=${{ secrets.PORT }}"
echo "USER=${{ secrets.USERNAME }}"
- name: Deploy to server
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
key: ${{ secrets.SSH_KEY }}
port: ${{ secrets.PORT }}
debug: true
script_stop: true
script: |
set -e
set -x
echo "🚀 Connected to server"
whoami
pwd
echo "📁 Go to project path"
cd ${{ secrets.PROJECT_PATH }}
echo "🔄 Pulling latest code..."
git pull origin develop
echo "📦 Installing Composer dependencies..."
composer install --no-dev --optimize-autoloader
echo "📦 Installing NPM dependencies..."
npm ci
echo "🏗️ Building assets..."
npm run build
echo "⚡ Optimizing Laravel..."
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan optimize
echo "🧹 Clearing application cache..."
php artisan cache:clear
echo "🔐 Setting permissions..."
chmod -R 775 storage bootstrap/cache
chown -R www-data:www-data storage bootstrap/cache
echo "✅ Deployment completed successfully!"