Closed zmactep closed 10 years ago
По-подробнее, пожалуйста. Сейчас я это вижу так же, как и в IonTorrent сервере:
Загрузка файла:
Консольных утилит это вообще не касается. Консольные утилиты полностью самодостаточны и не требуют никаких баз данных и прочей фигни.
Переключил все компоненты на MySQL. В Manage в навбаре появилась ссылка на Storage - это список файлов (file_id -> comment + path). Управляется список через форму на /storage/modify/.
При отправке запроса на сервер для find_patterns и generate_model теперь входной файл выбирается из выпадающего списка, который представляет собой листинг файлов со страницы в /storage/.
Уверен, что хорошо хранить все в одной базе? Получается, что там и всякий треш чисто вебневый, и полезные запросы - все вперемешку будет. Это чтоб не хранить в переднице два активных SQL-подключения?
Конечно, нет, треш и данные я разделю в разные базы. Это был первый пробный блин/прототип. Интерфейс нужно немного переделать (убрать отдельную страницу /storage/modify). Вечером постараюсь успеть подчистить хвосты. Но как proof-of-concept и текущее решение работает сносно.
Storage пользователя - те файлы, которые указаны в базе данных. Все файлы из path/storage/ индексируются в базу данных через cron (отдельный скрипт по расписанию). Загрузка контента через ftp-клиент. Любому файлу в storage можно задать короткий идентификатор и описание (по умолчанию идентификатор - basename файла).
Запуск:
python scan_dir.py --host=localhost --port=3306 --db=ig --user=root --password=password --dir=/opt/ig-pipeline/data/
Скрипт сканирует рекурсивно директории, и добавляет файлы в базу в случае если в ней еще нет записи с таким же path. Список файлов виден в localhost:8000/storage/. На каждую строку можно кликнуть в районе столбцов "ID файла" и "Комментарий" и изменить значения, после чего нажать на кнопку Save, появившуюся справа.