/
Dmitry-F
/
cbt_tool
Обзор
Документация
Войти
/
Dmitry-F
/
cbt_tool
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
bin/js_diagnose
129 строк
5 KB
Dmitriy-Filatov
🧹 ФИНАЛЬНАЯ СТЕРИЛИЗАЦИЯ ИНФРАСТРУКТУРЫ
17 мар 2026, 10:59
17 мар 2026, 10:59
d3fec0b
Код
Авторство
О чём код?
#!/bin/bash echo "=========================================" echo "🔍 ДИАГНОСТИКА JAVASCRIPT (404 ERRORS)" echo "=========================================" echo "" REPORT_FILE="/tmp/js_diagnose.txt" # 1. Проверка структуры папок echo "📁 1. СТРУКТУРА ПАПОК" > "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" if [ -d "app/javascript" ]; then echo "✅ app/javascript существует" >> "$REPORT_FILE" ls -la app/javascript/ | sed 's/^/ /' >> "$REPORT_FILE" else echo "❌ app/javascript не найдена" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 2. Проверка файлов контроллеров echo "📁 2. ФАЙЛЫ КОНТРОЛЛЕРОВ" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" CONTROLLER_DIR="app/javascript/controllers" if [ -d "$CONTROLLER_DIR" ]; then echo "✅ Папка controllers существует" >> "$REPORT_FILE" echo " Содержимое:" >> "$REPORT_FILE" ls -la "$CONTROLLER_DIR" | grep -v "^total" | sed 's/^/ /' >> "$REPORT_FILE" # Проверка конкретных файлов echo "" >> "$REPORT_FILE" echo " Проверка критических файлов:" >> "$REPORT_FILE" for file in application.js audio_recorder_controller.js form_controller.js collapsible_controller.js search_controller.js; do if [ -f "$CONTROLLER_DIR/$file" ]; then echo " ✅ $file: найден" >> "$REPORT_FILE" else echo " ❌ $file: ОТСУТСТВУЕТ" >> "$REPORT_FILE" fi done else echo "❌ Папка controllers не найдена" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 3. Проверка importmap.rb echo "📁 3. КОНФИГУРАЦИЯ IMPORTMAP" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" if [ -f "config/importmap.rb" ]; then echo "✅ importmap.rb существует" >> "$REPORT_FILE" echo " Содержимое:" >> "$REPORT_FILE" cat config/importmap.rb | sed 's/^/ /' >> "$REPORT_FILE" # Проверка pin_all_for controllers if grep -q "pin_all_from.*controllers" config/importmap.rb; then echo " ✅ controllers запинены в importmap" >> "$REPORT_FILE" else echo " ❌ controllers НЕ запинены" >> "$REPORT_FILE" fi else echo "❌ importmap.rb не найден" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 4. Проверка manifest.js echo "📁 4. МАНИФЕСТ АССЕТОВ" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" if [ -f "app/assets/config/manifest.js" ]; then echo "✅ manifest.js существует" >> "$REPORT_FILE" echo " Содержимое:" >> "$REPORT_FILE" cat app/assets/config/manifest.js | sed 's/^/ /' >> "$REPORT_FILE" else echo "❌ manifest.js не найден" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 5. Проверка сборки ассетов echo "📁 5. СБОРКА АССЕТОВ" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" if [ -d "public/assets" ]; then echo "✅ Папка public/assets существует" >> "$REPORT_FILE" echo " Содержимое (первые 10):" >> "$REPORT_FILE" ls -la public/assets/ | head -10 | sed 's/^/ /' >> "$REPORT_FILE" else echo "❌ Папка public/assets не найдена (ассеты не скомпилированы)" >> "$REPORT_FILE" fi echo "" >> "$REPORT_FILE" # 6. Проверка в development echo "📁 6. ПРОВЕРКА В DEVELOPMENT" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" echo "В режиме development Rails должен отдавать файлы напрямую из app/javascript" >> "$REPORT_FILE" echo "Проверь, что сервер запущен и файлы доступны по URL:" >> "$REPORT_FILE" echo " http://localhost:3000/assets/controllers/application.js" >> "$REPORT_FILE" echo " http://localhost:3000/assets/controllers/audio_recorder_controller.js" >> "$REPORT_FILE" echo "" >> "$REPORT_FILE" # 7. ИСПРАВЛЕНИЕ (если нужно) echo "📁 7. ИСПРАВЛЕНИЕ" >> "$REPORT_FILE" echo "----------------------------------------" >> "$REPORT_FILE" echo "Если файлы есть, но не грузятся:" >> "$REPORT_FILE" echo "1. Очисти кэш ассетов:" >> "$REPORT_FILE" echo " rails assets:clobber" >> "$REPORT_FILE" echo " rm -rf tmp/cache/*" >> "$REPORT_FILE" echo "" >> "$REPORT_FILE" echo "2. Перезапусти сервер:" >> "$REPORT_FILE" echo " ./bin/dev" >> "$REPORT_FILE" echo "" >> "$REPORT_FILE" echo "3. Проверь manifest.js:" >> "$REPORT_FILE" echo " //= link_tree ../javascript/controllers" >> "$REPORT_FILE" cat "$REPORT_FILE" | pbcopy echo "" echo "✅ ДИАГНОСТИКА ЗАВЕРШЕНА. Результат в буфере обмена." echo "" grep -E "✅|❌|⚠️" "$REPORT_FILE" | head -15 echo ""