netgescon-master/_BACKUP_OLD_netgescon-laravel_INACTIVE/setup-environment.sh

54 lines
1.7 KiB
Bash

#!/bin/bash
# Script di setup completo ambiente Netgescon
# Configura tutto l'ambiente di sviluppo sul nuovo server
echo "🚀 Setup completo ambiente Netgescon..."
# Parametri
REMOTE_USER="michele"
REMOTE_HOST="192.168.0.200"
REMOTE_PATH="/var/www/netgescon"
echo "🔧 Configurazione ambiente su $REMOTE_HOST..."
# Setup 1: Permissions e ownership
echo "📁 Step 1: Configurazione permessi..."
ssh $REMOTE_USER@$REMOTE_HOST "
sudo chown -R www-data:www-data $REMOTE_PATH
sudo chmod -R 755 $REMOTE_PATH
sudo chmod -R 775 $REMOTE_PATH/storage
sudo chmod -R 775 $REMOTE_PATH/bootstrap/cache
"
# Setup 2: Composer install
echo "📦 Step 2: Installazione dipendenze PHP..."
ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && composer install --no-dev --optimize-autoloader"
# Setup 3: NPM install e build
echo "🎨 Step 3: Installazione dipendenze frontend..."
ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && npm install && npm run build"
# Setup 4: Configurazione ambiente
echo "⚙️ Step 4: Configurazione ambiente Laravel..."
ssh $REMOTE_USER@$REMOTE_HOST "
cd $REMOTE_PATH
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan storage:link
"
# Setup 5: Configurazione database
echo "🗄️ Step 5: Verifica configurazione database..."
ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && php artisan migrate:status"
# Setup 6: Configurazione web server
echo "🌐 Step 6: Configurazione Nginx/Apache..."
ssh $REMOTE_USER@$REMOTE_HOST "
sudo systemctl restart nginx || sudo systemctl restart apache2
sudo systemctl restart php8.3-fpm || sudo systemctl restart php-fpm
"
echo "✅ Setup ambiente completato!"