2012-07-27 3 views

ответ

4

Там нет плагина, который я знаю, но мы скрученный вручную процесс сам. Мы используем ртутные вместо мерзавца, но мы используем этот основной процесс, чтобы сделать это:

  1. Мы создали собственный исполняемый файл, который запускается, когда вызывается событие ChangeGroup. Похоже, в случае с git есть крюк после приема, который вы могли бы использовать.

  2. Этот исполняемый файл запрашивает меркурийный набор изменений, которые были просто нажаты, а затем анализирует их, чтобы увидеть, какие репозитории и ветви были затронуты.

  3. Для каждой новой ветки он находит шаблон, который мы установили для этого репозитория, форматирует шаблон с новой информацией о ветвях и добавляет его в файл «ccnethg.config». Затем он касается основного файла конфигурации (ccnet.config), поэтому круиз-контроль перезагрузит проекты.

  4. Основной конфигурационный файл (ccnet.config) настроен посмотреть на этот файл, используя этот удобный XML трюк:

    Эта часть проходит в начале ccnet.config:

<! DOCTYPE CruiseControl [

<!ENTITY hgproject SYSTEM "file:ccnethg.config"> 

] >

Затем добавьте этот кусок вниз в основной конфигурации, где вы определяете ваши проекты

& hgproject;

В случае, если последний пункт не прошел очень хорошо, вот документ, который его описывает. См. Раздел «Разделение файла ccnet.config: http://build.sharpdevelop.net/ccnet/doc/CCNET/Multiple%20Projects.html

Мы разделили его на отдельный файл, потому что при добавлении/удалении сборок в файл проще всего обрабатывать файл, если все файлы в нем - это сборки ветвей.

Я могу предоставить более подробную информацию, если вы хотите их.

Смежные вопросы