Рабочий процесс тестирования в Trac и обработчик пост-фиксации

Я хочу обновить Trac на моем сервере, чтобы включить этап тестирования в рабочий процесс. Мне удалось сделать это в Trac, но мне нужно изменить фиксацию svn, чтобы переместить статус в «тестирование», а не в «закрыто».

Я читал, что мне нужно изменить файл commit_updater.py, но я не знаю, как это сделать. Я пробовал проверить код Trac, отредактировав файл commit_updater.py и установив его на сервере с помощью команды:

C: \ Trac_0.12> C: \ svn \ trac \ python \ python.exe setup.py установить

но я получаю следующую ошибку при установке ....

Файл "C: \ svn \ trac \ python \ lib \ site-packages \ setuptools-0.6c11-py2.6.egg \ setuptools \ command \ egg_info.py", строка 233, в get_svn_revision

IndexError: список индекса вне допустимого диапазона

Кстати, я использую сервер VisualSVN с их версией Trac.

В качестве альтернативы ... Кто-нибудь рекомендует альтернативу использованию Trac с SVN? Я думал, что будет достаточно просто изменить хук пост-фиксации, чтобы переместить билет в «тестирование» вместо «закрыто», но это оказалось очень неприятным! Любая помощь с этим будет очень признательна.

Спасибо.


person Johnny Rambo    schedule 06.01.2012    source источник
comment
Попробуйте установить Trac из исходного кода без каких-либо изменений и посмотрите, появится ли у вас такая же ошибка. Если да, то, скорее всего, проблема связана с процессом сборки / установки. Если вы не видите ошибки, отредактируйте свой вопрос и добавьте различие внесенных вами изменений.   -  person bta    schedule 17.01.2012


Ответы (1)


Очевидно, что на данный момент реализованы только простые комментарии (см. Параметр конфигурации * commands_refs *) и разрешение (см. Параметр конфигурации * commands_close *). Возможно, из-за того, что TracWorkflow легко настраивается сам по себе, поэтому, вероятно, также существуют совсем другие ожидания для действий рабочего процесса, запускаемых фиксацией.

Это не должно быть слишком сложно реализовать, следуя существующей логике. Ты захочешь

  • расширить * commit_updater.py * с помощью * cmd_workflow * или аналогичной логики изменения состояния, следуя существующей * cmd_close * (возможно, вы захотите также изменить состояние заявки на настраиваемое)
  • добавить подходящие триггерные команды с помощью связанной опции * commands_workflow *
  • ...

Тем не менее, вы не показали здесь никакого кода (изменений), но IndexError, похоже, в значительной степени не имеет отношения к теме. Думаю, дело в свойствах репо SVN. Лучше остерегайтесь аномалий / несоответствий, прежде чем обвинять Trac, т.е. просмотрите этот билет Trac.

По второму вопросу: мир большой и удача яркая, если вы знаете, как и куда смотреть. Поскольку я специалист по Trac, не ожидайте, что будет много указателей на альтернативы вне Trac. Но Redmine часто называют альтернативным трекером. Лучше? Не знаю, разные.

В конце концов, совершенно разумно просить о помощи и в то же время просить (лучшие) альтернативы, не так ли? Не будьте настолько наивны, чтобы думать, что другая система, которая может упростить настройку действия фиксации SVN, будет превосходить Trac во многих других аспектах, где Trac обеспечивает отличную, зрелую и легкую функциональность.

person hasienda    schedule 06.01.2012