Files
crm.clientright.ru/crm_extensions/deploy_scripts/README.md
Fedor dabcd43a00 Добавлены скрипты для парсинга судебных документов и обновления проектов в CRM
- court_document_parser.py: парсер судебных документов с извлечением ФИО, номера дела, УИД, суда
- court_parser_api.py: API для вызова парсера из n8n
- pdf_court_parser.py: парсер PDF документов с извлечением текста
- simple_project_updater.php: обновление проектов через CRM API
- simple_project_updater_v2.php: обновленная версия с прямыми SQL запросами и S3Client
- update_project_from_document.php: альтернативный скрипт обновления
- test_input.json: тестовые данные для парсера
- README файлы с документацией для всех скриптов

Скрипты поддерживают:
- Поиск проектов по ФИО, номеру дела, УИД, названию суда
- Создание документов в CRM с загрузкой в S3
- Привязку документов к проектам
- Логирование всех операций
- Работу с n8n через SSH команды
2025-09-30 19:54:37 +03:00

208 lines
7.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Скрипты деплоя CRM
Этот набор скриптов предназначен для безопасного деплоя изменений из тестовой среды `crm-test.clientright.ru` в боевую среду `crm.clientright.ru`.
## Структура
- `deploy_to_production.sh` - Основной скрипт полного деплоя
- `sync_crm_extensions.sh` - Скрипт синхронизации только CRM Extensions
- `README.md` - Данная документация
## Основной скрипт деплоя
### Использование
```bash
# Полный деплой (по умолчанию)
./deploy_to_production.sh
# Создание только резервной копии
./deploy_to_production.sh backup
# Синхронизация файлов без бэкапа
./deploy_to_production.sh sync
# Проверка работоспособности
./deploy_to_production.sh health
# Откат к последней резервной копии
./deploy_to_production.sh rollback
```
### Что делает полный деплой
1. **Проверка прав доступа** - Убеждается, что есть доступ к необходимым директориям
2. **Создание резервной копии** - Создает полную резервную копию продакшн среды
3. **Синхронизация файлов** - Копирует изменения из тестовой среды
4. **Обновление прав доступа** - Устанавливает правильные права на файлы
5. **Проверка работоспособности** - Проверяет доступность сайта после деплоя
### Синхронизируемые компоненты
- `crm_extensions/` - Все доработки CRM
- `layouts/v7/skins/images` - Изображения интерфейса
- `layouts/v7/lib` - JavaScript библиотеки
- `modules/` - Модули CRM
- `libraries/` - PHP библиотеки
- `include/` - Включаемые файлы
- `vtlib/` - Vtiger библиотеки
- `packages/` - Пакеты расширений
- `resources/` - Ресурсы
- `.htaccess` - Конфигурация Apache
## Скрипт синхронизации CRM Extensions
### Использование
```bash
# Синхронизация CRM Extensions (по умолчанию)
./sync_crm_extensions.sh
# Создание резервной копии
./sync_crm_extensions.sh backup
# Проверка синхронизации
./sync_crm_extensions.sh verify
```
### Что делает
1. **Проверка директорий** - Убеждается в существовании необходимых путей
2. **Резервная копия** - Создает бэкап текущих CRM Extensions
3. **Синхронизация** - Копирует новую версию из тестовой среды
4. **Проверка** - Верифицирует успешность синхронизации
## Безопасность
### Резервные копии
- Все резервные копии сохраняются в `/var/www/fastuser/data/backups/`
- Исключаются кеш, временные файлы и логи
- Автоматическое именование с временными метками
- Возможность отката к любой резервной копии
### Права доступа
- Файлы: 644 (rw-r--r--)
- Директории: 755 (rwxr-xr-x)
- Исполняемые скрипты: 755 (rwxr-xr-x)
- Кеш и временные файлы: 777 (rwxrwxrwx)
- Владелец: fastuser:fastuser
### Исключения
Из синхронизации исключаются:
- `/cache/` - Кеш файлы
- `/test/templates_c/` - Скомпилированные шаблоны
- `/logs/` - Логи
- `/tmp/` - Временные файлы
## Мониторинг
### Логи
- Основной скрипт: `/var/www/fastuser/data/logs/deploy_YYYYMMDD_HHMMSS.log`
- Цветной вывод в консоль
- Детальная информация о каждом шаге
### Проверки работоспособности
- HTTP статус главной страницы
- Наличие ключевых файлов
- Размеры директорий
- Права доступа
## Примеры использования
### Ежедневный деплой изменений
```bash
cd /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/deploy_scripts
./deploy_to_production.sh
```
### Быстрая синхронизация только Extensions
```bash
cd /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/deploy_scripts
./sync_crm_extensions.sh
```
### Экстренный откат
```bash
cd /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/deploy_scripts
./deploy_to_production.sh rollback
```
### Проверка состояния
```bash
cd /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/deploy_scripts
./deploy_to_production.sh health
```
## Автоматизация
### Cron задачи
Для автоматического деплоя можно добавить в crontab:
```bash
# Ежедневный деплой в 2:00
0 2 * * * /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/deploy_scripts/deploy_to_production.sh
# Еженедельная проверка работоспособности
0 6 * * 1 /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/deploy_scripts/deploy_to_production.sh health
```
### Уведомления
Скрипты можно модифицировать для отправки уведомлений:
- Email при ошибках
- Telegram уведомления
- Slack интеграция
## Устранение неполадок
### Частые проблемы
1. **Ошибки прав доступа**
```bash
sudo chown -R fastuser:fastuser /var/www/fastuser/data/www/crm.clientright.ru
```
2. **Проблемы с кешем**
```bash
rm -rf /var/www/fastuser/data/www/crm.clientright.ru/test/templates_c/*
chmod -R 777 /var/www/fastuser/data/www/crm.clientright.ru/test/templates_c/
```
3. **Ошибки Apache**
```bash
systemctl restart apache2
tail -f /var/log/apache2/error.log
```
### Восстановление из резервной копии
```bash
# Список доступных резервных копий
ls -la /var/www/fastuser/data/backups/
# Восстановление конкретной копии
tar -xzf /var/www/fastuser/data/backups/crm_backup_YYYYMMDD_HHMMSS.tar.gz -C /var/www/fastuser/data/www/
```
## Контакты
- **Автор**: Фёдор
- **Дата создания**: 2025-09-26
- **Версия**: 1.0
## Лицензия
Внутренний инструмент ClientRight CRM. Все права защищены.