Hooks¶
Процедуры проектного уровня.
Хранение:
- дефолтные хуки в - lineyka/hooks/
- для студийных работников - studio/project/hooks/
- для аутсорсеров - work_folder/project/hooks/
Функционал:
- При создании нового проекта хуки загружаются из приложения.
- Импорт экспорт из проекта в проект (по аналогии с set_of_tasks)
- Аутсорсеру:
- заливается при создании проекта.
- функция обновления.
- Обнуление до дефолта(загрузка из приложения) по типам процессов.
Виды хуков:
- pre - Проверка удовлетворения условиям, возврат (False, message) или (True, ‘Ok!’)
- post - Совершение действий с файлами.
Процессы для которых используются хуки:
- look
- open
- commit
- push
- publish
- send_to_report
- accept
Запускаются в task:
- pre_commit(),
- post_commit()…
- Итд
Начинка.
- Передаваемые данные в хук:
- task
- source_path - путь откуда копируется файл (структура зависит от типа задачи).
- target_path - путь куда перекладывается файл (структура зависит от типа задачи).
- Импорты библиотек приложений через try/except.
- None по умолчанию.
- В зависимости от значения библиотек выбирать действия.
- Если библиотека None значит открыто через юзер интерфейс, возможно обращение к файлу в фоне.
Оперативка:
- look/open/commit/push/publish - включить ранее написанное перетаскивание кеша .pc2