#!/bin/bash # Script di verifica completa per Netgescon # Verifica lo stato della migrazione e testa le funzionalitΓ  echo "πŸ” Verifica stato migrazione Netgescon..." # Parametri REMOTE_USER="michele" REMOTE_HOST="192.168.0.200" REMOTE_PATH="/var/www/netgescon" echo "🌐 Connessione al server $REMOTE_HOST..." # Test 1: Verifica struttura database echo "πŸ“Š Test 1: Verifica struttura tabella amministratori..." ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && mysql -u root -p -e 'DESCRIBE netgescon.amministratori;' | grep codice_univoco" # Test 2: Verifica indici echo "πŸ“Š Test 2: Verifica indici tabella amministratori..." ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && mysql -u root -p -e 'SHOW INDEX FROM netgescon.amministratori;' | grep codice" # Test 3: Verifica migration status echo "πŸ“Š Test 3: Stato migration..." ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && php artisan migrate:status | tail -10" # Test 4: Test creazione amministratore echo "πŸ“Š Test 4: Test creazione amministratore..." ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && php artisan tinker --execute=\"\\\$admin = new App\\\\Models\\\\Amministratore(['nome' => 'TestVerifica', 'cognome' => 'Sistema', 'user_id' => 1, 'codice_amministratore' => 'VER' . rand(100,999)]); \\\$admin->save(); echo 'Codice univoco: ' . \\\$admin->codice_univoco;\"" # Test 5: Verifica Observer echo "πŸ“Š Test 5: Verifica registrazione Observer..." ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && grep -r 'AmministratoreObserver' app/ config/" # Test 6: Verifica trigger SQL (se presenti) echo "πŸ“Š Test 6: Verifica trigger SQL..." ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && mysql -u root -p -e 'SHOW TRIGGERS FROM netgescon WHERE Trigger LIKE \"%codice_univoco%\";'" # Test 7: Verifica servizi Laravel echo "πŸ“Š Test 7: Verifica servizi Laravel..." ssh $REMOTE_USER@$REMOTE_HOST "cd $REMOTE_PATH && php artisan route:list | grep admin" echo "βœ… Verifica completata!"