Какой инструмент использовать для автоматических ночных сборок? - PullRequest
19 голосов
/ 01 сентября 2008

У меня есть несколько решений / проектов Visual Studio, над которыми я работаю в моей компании, которым теперь требуется схема для автоматических ночных сборок. Такая схема должна иметь возможность проверять последние версии из SVN, создавать решения, создавать соответствующие загружаемые файлы (включая установщики, документацию и т. Д.), Отправлять электронные письма разработчикам в случае ошибок и всех других изящных вещей. , Какой инструмент или набор инструментов я должен использовать для этого?

Раньше я использовал FinalBuilder несколько лет назад, и мне это очень нравилось, но я не уверен, поддерживают ли они такие функции, как ночные сборки и сообщения электронной почты.

Ответы [ 8 ]

14 голосов
/ 01 сентября 2008

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

Вы можете очень легко настроить модульное тестирование, чтобы оно также выполнялось при каждой регистрации, тестировании FXCop и множестве других продуктов.

Я бы также посоветовал проверить Team City в качестве опции, потому что у него есть бесплатная версия, а отчетность и настройка, как сообщается, намного проще (мне это действительно нравится). У него есть предел где-то около 20 членов команды / проектов, прежде чем он попадает в окно оплаты.

Тем не менее, мы начали с CCNET, и несколько продуктов стали слишком большими, чтобы смотреть на Team City в бесплатной версии, и очень довольны тем, что имеем.

Функции, которые помогают с CCNET, включают:

  • Конфигурация на основе XML - обычно вы можете скопировать и вставить большую часть того, что вам нужно.
  • Более или менее вы сможете подключить свой скрипт treesurgeon в качестве сценария сборки и указать CCNET на это как на исполняемую задачу для запуска компиляции.
  • Много документации и очень легко настроить nunit, ncover, fxcop и т. Д.
  • Приложение панели задач, которое в любое время сообщит вам о состоянии ваших проектов, а также может отключить электронную почту или сохранить канал RSS с той же информацией.

Но я бы определенно пошел с запуском сборки CI при каждой регистрации - по большей части будет запускать модульные тесты перед регистрацией, но пусть серверный сервер CCNET запускает любые приложения / сборки, которые будут зависеть от Сборку мы проверяем, и они пересобраны и проверены при каждой проверке.

Учитывая, что CCNET является бесплатной и требует очень мало времени на настройку - я настоятельно рекомендую просто пойти и посмотреть, подходит ли она вам, а затем расширяться.

(Здесь есть еще одна ветка, где я опубликовал почти то же самое / с некоторыми изменениями - но некоторые другие комментарии тоже могут помочь! Автоматизированные сборки )

Редактировать, чтобы добавить: Вы можете легко настроить собственную схему развертывания для CCNET, и есть множество постов в блоге, чтобы помочь, и уведомления по электронной почте могут действительно быть настроены довольно детально, или на всех успехах, на всех неудачах когда он меняется с успеха на сбой и т. д. В RSS также есть встроенные функции, и вы даже можете настроить собственные уведомители для других систем.

6 голосов
/ 01 сентября 2008

FinalBuilder поддерживает электронную почту, и только выполнение FinalBuilder каждую ночь даст вам ночные сборки. Вам не нужно другое программное обеспечение для этого, если вы не хотите.

Вы также можете использовать CCNet для запуска сборки, когда это необходимо, и заставить ее выполнить FinalBuilder для сборки. Затем вы можете решить, следует ли FinalBuilder или CCNet отправлять электронные письма.

Наконец, у FinalBuilder есть версия Server, похожая на CCNet, в которой это инструмент непрерывной интеграции, использующий FinalBuilder. Смотри http://www.finalbuilder.com/finalbuilder-server.aspx

Конечно, самым большим преимуществом CCNet является то, что он бесплатный и с открытым исходным кодом.

3 голосов
/ 22 октября 2008

Мы только что начали использовать Хадсон здесь, в офисе.

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

Я был запущен через несколько минут после его установки. Все остальные разработчики любят его.

В общем, это очень элегантное решение для непрерывной интеграции или ночных сборок.

3 голосов
/ 02 сентября 2008

Хотя это стоит, я настоятельно рекомендую Visual Build . Он работает с MSBuild и старыми инструментами, такими как Visual Basic. Это сценарий, и может делать все, от создания установщиков до простой непрерывной интеграции.

1 голос
/ 16 ноября 2010

Buildbot с открытым исходным кодом и очень мощный. Вы должны взглянуть на это.

1 голос
/ 16 сентября 2008

Luntbuild

Поддерживает широкий спектр систем контроля версий и сборки. Очень настраиваемый. Открытый исходный код. Настройка занимает некоторое время, но это не так уж и ужасно.

1 голос
/ 01 сентября 2008

Я недавно начал использовать CruiseControl.NET (http://confluence.public.thoughtworks.org/display/CCNET/Welcome+to+CruiseControl.NET).. Он работает достаточно хорошо, хотя конфигурация может быть проще. CruiseControl.NET является бесплатным и открытым исходным кодом и, похоже, интегрируется с большинством стандартных инструментов, хотя я лично использовал его только с CVS, SVN, NUnit и MSBuild.

0 голосов
/ 19 сентября 2008

Каскад поддерживает сборку для каждого изменения, внесенного в хранилище.

Я бы не рекомендовал делать только ночные сборки - это довольно длинное окно, в котором может появиться разрыв сборки до того, как об этом сообщат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...