Цель: сделать возможность поиска и распознавания плагинов (они будут лежать в определенном каталоге скорей всего), возможность их включать/выключать/удалять/устанавливать. А также конфигурировать - задавать какие-то свойства, менять порядок применения.
План:
- Сделать ресерч по существующим решениям (Atlassian, Jenkins)
- Реализовать плагин (сначала для аутентификации через пульп) вместе с изначальным предложением об архитектуре.
- Клепать точки расширения для разнообразных мест на форуме (постинг топиков, шапка форума, просмотр веток и т.д).
Важно обсудить:
- Как плагины будут доступаться к БД и что будет а) если плагин может испортить базу б) если база была изменена в последующих версиях миграциями.
- Security Management
- Производительность. К примеру, в том же Jenkins'e когда речь идет о Security - плагины просто не имеют нужной гибкости работать как им вздумается - каждое обращение к их Security Manager'у ограничено определнным API, которое очень тормозит. Это происходит просто потому, что API сильно ограничивающий и очень общий.
- Со временем добавлю еще пунктов...