В настоящее время мы используем FogBugz на работе, и я использую подключаемый модуль URLTrigger для обращения к сценарию CGI каждый раз при изменении регистра. Я пытаюсь понять, как сделать что-то подобное с Trac; Кто-нибудь знает возможно ли это? Я не могу найти никаких плагинов или обсуждения по этому поводу.
Инициировать действие при изменении билета Trac?
Ответы (1)
t-h.o — это первый адрес для поиска подключаемых модулей Trac. Поскольку Trac активно поощряет разработку плагинов с помощью сложной компонентной архитектуры с самого начала, вы найдете много кода. . И поскольку разработчики ядра Trac были вовлечены, это также часто является довольно хорошим качеством кода. Материал, который вы прочтете, чтобы получить представление о том, как все должно работать.
Возможно, вы захотите начать с текущей официальной вики-документации, чтобы погрузиться в разработку плагинов для Trac и перейти на trac. -hacks.org потом.
Что касается заявленной вами цели разработки, обратите особое внимание на trac.ticket.api.ITicketChangeListener
— интерфейс точки расширения для компонентов, которым требуется уведомление о создании, изменении или удалении заявок. Похоже, это как раз то, что вы хотите.
Вам нужно (примерный список требований)
- создайте класс на основе trac.core.
Component
, который implements (ITicketChangeListener)
- предоставлять модули в точности в соответствии с определением интерфейса.
Если вам нужна дополнительная информация, я бы рекомендовал посмотреть исходный код DefaultCcPlugin. Есть много других плагинов, реализующих интерфейс ITicketChangeListener, но это довольно маленький плагин, который просто покажет вам доступные методы и не будет отвлекать слишком много функциональности вокруг них.
Добавляйте информацию к своему вопросу по мере продвижения или комментируйте здесь, если это необходимо. Я постараюсь направить вас дальше, насколько мне известно.