Как заставить Trac (CommitTicketUpdater) с Mercurial закрыть | разрешить тикеты при коммите? - PullRequest
4 голосов
/ 30 июня 2011

Мой быстрый вопрос таков: Кажется, все работает, за исключением того, что билеты Trac не получают обновления статуса при коммите Заметки с изменениями добавляются к заявке, но сами заявки не разрешаются


Я только что сделал эту настройку:

  • Windows 7 x64
  • IIS 7,5
  • isapi-wsgi 0.4.2
  • Python27 32
  • Mercurial 1.8
  • Trac 0,12

У меня запущен Trac и связан с репозиторием (я могу просматривать наборы изменений, просматривать и т. Д.)
Я использую AD для аутентификации, поэтому все мои имена пользователей в этом формате: MYDOMAIN \ bbarker

Установите CommitTicketUpdater , следуя инструкциям здесь .

Когда я фиксирую новый код и ссылку на тикет:

$ hg commit -m "[fixes #1] - blah blah blah..."
$ hg push

Trac добавляет набор изменений в тикет:

Изменено 5 секунд назад MYDOMAIN \ bbarker
В [29283792837498273948729374]:
[исправляет # 1] - бла-бла-бла ...

( # 1 , выше, ссылка на тикет)
Но статус заявки никогда не обновляется , что бы я ни пытался.
Что-нибудь еще, что я должен сделать, чтобы заставить это работать?

ниже приведены фрагменты моих настроек


trac.ini

[компоненты]
tracext.hg. * = включено
tracopt.ticket.commit_updater. * = включено
tracopt.ticket.commit_updater.committicketreferencemacro = включено
tracopt.ticket.commit_updater.committicketupdater = включено

[Hg]
node_format = short
show_rev = да

[билет]
...
commit_ticket_update_envelope = []
commit_ticket_update_commands.close =
commit_ticket_update_commands.refs =
commit_ticket_update_check_perms = true
commit_ticket_update_notify = true

[ПРОФ] ... repository_dir = C: \ repositories \ project
repository_sync_per_request = по умолчанию
repository_type = hg

.hg / hgrc

[крючки]
; Если Mercurial-плагин установлен в каталоге плагинов Trac
commit = python: C: \ Trac \ hooks.py: add_changesets
changegroup = python: C: \ Trac \ hooks.py: add_changesets

[ПРОФ]
env = C: \ Trac \ tracproject
trac-admin = C: \ Python27 \ Scripts \ trac-admin.exe

1 Ответ

4 голосов
/ 01 июля 2011

Уф!Понял ...

Следуя, к 'T', указание от сайта Trac было моей ошибкой.
Ну вроде, я думаю.

Я, в основном, скопировал это с вышеуказанного сайта в мой файл trac.ini :

commit_ticket_update_envelope = []
commit_ticket_update_commands.close =
commit_ticket_update_commands.refs =
commit_ticket_update_check_perms = true
commit_ticket_update_notify = true

Читая ниже, я просто предположил, что оставив commit_ticmands_uplose1023 * для пустого значения будет принимать значения по умолчанию.
Это на самом деле заменяет значения по умолчанию на пустое значение, что объясняет, почему ни одна из команд не сработала, но мои сообщения фиксации все еще добавлялись к соответствующим тикетам.

Столь простое удаление или комментирование этой строки в .ini решило мою проблему
(или не переопределяло значения по умолчанию)

commit_ticket_update_envelope = []
; commit_ticket_update_commands.close =
commit_ticket_update_commands.refs =
commit_ticket_update_check_perms = true
commit_ticket_update_izeотладка, тестирование, поиск в Интернете, мне просто нужно было пересмотреть инструкции, предоставленные Trac.Это довольно очевидно, оглядываясь назад теперь :)

...