ПРОФ-NewTicketLikeThisPlugin є плагін Trac, яка додає кнопку "клон" до існуючих квитків, яка дозволяє створити новий квиток, поля якої випливають з початкового квитка, якщо у вас є відповідний дозвіл.
Вона заснована на розширенні tracopt.ticket.clone.ticketclonebutton, який поставляється з ядром Trac. На відміну від цього розширення, NewTicketLikeThisPlugin визначає і споживає вставною інтерфейс для реалізації користувальницьких політик, щоб визначити, яким чином новий квиток, отриманий від оригіналу. Це дозволяє гнучко, налаштувати бізнес-логіки повинні бути надані на основі потреб і технологічних процесів вашої команди. Крім того, NewTicketLikeThisPlugin дозволяє настроїти необхідні дозволи для клонування квиток, в той час як ядро ticketclonebutton жорстких кодів дозволу TICKET_ADMIN.
Два політика надається за замовчуванням в модулі newticketlikethis.policies:
- SimpleTicketCloner імітує поведінку розширення ядра tracopt.ticket.clone.ticketclonebutton: всі поля з оригінального квитка клонують, і "Резюме" та "Опис" полів змінюються, щоб позначити квиток, який вони були клоновані з.
- ExcludedFieldsTicketCloner клони всі поля з оригінального квитка без будь-яких модифікацій. Він також може ігнорувати деякі поля повністю, на основі параметра конфігурації, який буде змусити новий квиток, щоб бути отримані з використанням значень за замовчуванням системи (або будь-яких значень) для полів, які були виключені.
Більш складні політика може реалізувати свою логіку для отримання нових значень квитки на основі значень полів існуючої квитка, або використовувати альтернативні політики клонування в залежності від типу квитка.
Конфігурація
Для використання плагіна, встановіть його у вашому середовищі Trac і включити його компоненти в trac.ini:
[Components]
newticketlikethis. * = включено
За умовчанням це буде додати кнопку "Clone" в цілях квитка, і буде використовувати компонент SimpleTicketCloner клонувати квитки. Дозвіл TICKET_ADMIN будуть необхідні для клонування квитки.
Вибір політики
Щоб використовувати інший квиток клонування політики, переконайтеся, що для того, щоб всі необхідні компоненти, а потім встановіть опцію newticketlikethis.ticket_cloner в trac.ini посилатися на ім'я компонента наступним чином:
[Newticketlikethis]
ticket_cloner = ExcludedFieldsTicketCloner
Налаштування дозволів
За замовчуванням кнопка «Клонувати" з'являється, тільки якщо користувач має дозвіл TICKET_ADMIN. Ви можете змінити необхідний дозвіл за допомогою опції newticketlikethis.ticket_clone_permission:
[Newticketlikethis]
ticket_clone_permission = TICKET_CREATE
ExcludedFieldsTicketCloner
Якщо опція включена, ExcludedFieldsTicketCloner буде шукати додаткових опцій конфігурації newticketlikethis.excluded_fields, щоб визначити, які поля необхідно виключити. Це має бути розділений комами список полів квитків. За замовчуванням, поля не виключені. Наприклад, ви можете використовувати trac.ini конфігурацію, як:
[Newticketlikethis]
ticket_cloner = ExcludedFieldsTicketCloner
excluded_fields = опис, резюме, репортер
Налаштування
Це легко реалізувати свої власні політики, а також. Подивіться на код в newticketlikethis.policies для натхнення.
Якщо ви реалізуєте користувальницькі політики, які ви хотіли б поділитися, не соромтеся представити її у вигляді пластиру, так що NewTicketLikeThisPlugin може поставлятися з сильним бібліотеки повторно використовуваних політики клонування.
Вимоги
- Python
- Trac
Коментар не знайдено