Какие инструменты вы используете для облегчения непрерывной интеграции (CI)? - PullRequest
9 голосов
/ 08 февраля 2010

Если вы делаете CI , название действительно говорит само за себя: какие инструменты вы используете?

В нашем случае мы разработчик .NET и используем

Однако мы сталкиваемся с некоторыми проблемами с производительностью Subversion и числом агентов и конвейеров сборки Cruise, которые мы используем, поэтому мы надеемся использовать Git в качестве серверной части для облегчения этого. Однако версия Git для Windows доставляет нам проблемы (кажется, немного «бета»), поэтому мы считаем, что нам нужно перейти на версию Linux.

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

Итак, какие инструменты вы используете для управления версиями и автоматической сборки / развертывания? Также укажите, какая у вас платформа разработки.

Ответы [ 5 ]

8 голосов
/ 08 февраля 2010

Мы используем инструмент с открытым исходным кодом Hudson . Это действительно хороший инструмент для создания автоматических сборок. Это не только для строительства, хотя. Вы можете использовать его для запуска тестов, предоставления отчетов о покрытии кода, отправки уведомлений по электронной почте и т. Д.

(наша платформа разработки в основном Linux + Java)

4 голосов
/ 08 февраля 2010

Team City в качестве CI-сервера - бесплатно для ограниченного количества проектов.

Никаких неприятных настроек XML, вместо этого приятный веб-интерфейс. Team City также может быть настроен с разными системами сборки, NAnt, MSBuild et al. Другие инструменты также могут быть настроены для работы с TC, например, запуск модульных тестов через бегун.

2 голосов
/ 08 февраля 2010

На моей текущей работе (контракт для очень крупной компании. Около 90% разработчиков Microsoft / .NET) моя группа автоматизирует сборки и модульное тестирование с помощью TeamCity для наших новых приложений.

Я настроил это и начал с MSBuild на TC, но я пытаюсь использовать файлы сборки Nant и некоторые другие стандарты для новых проектов. (использование шаблонов в VS2008 для генерации как можно большей части настройки сборки при создании нового проекта)

Контроль источников здесь страшен. Многие группы все еще используют VSS (включая мою, что неинтересно), и в этом году корпоративный толчок к TFS. Я бы предпочел перейти на DVCS (Git или что-то), но это не произойдет в этой среде. На самом деле, я не уверен, что TeamCity останется, когда компания перейдет на TFS на 100%. Но, я думаю, к тому времени, когда это произойдет, мы будем настолько продвинуты с КИ, что TFS может не покрыть наши потребности. Но вернемся к TeamCity, он прекрасно поддерживает VSS, и это сработало.

Что касается развертывания, я возиться с надстройкой Microsoft Web Deployment Project , а также с конфигурацией в Nant. Подход Nant, очевидно, более гибок, но пытаться научить разработчиков «подключи-и-точка» иногда бывает немного дороже.

Надеюсь, это немного поможет. Демо-версия TeamCity предоставит вам 20 конфигураций сборки бесплатно.

Должен отметить, что я пробовал CruiseControl.net и Hudson. Оба являются отличными приложениями (и бесплатными), но я знал, что простота настройки новой сборки в TeamCity потребуется другим участникам моей группы. В противном случае люди просто бы не делали CI, как только я уйду.

1 голос
/ 08 февраля 2010

Мой магазин - Java / Windows, использующий программное обеспечение IBM; ClearCase, WAS, WMB, WPS. Мы пошли с Хадсоном, и он сделал несколько замечательных вещей для повышения производительности.

Мы также используем маленького чучела, в данном случае поющего Морозного Снеговика, высота которого около 12 ". Каждый раз, когда разработчик ломает сборку, как определил Хадсон, у него есть 15 минут, чтобы навести порядок оказывается на их столе. Морозный остается там до тех пор, пока кто-то еще не испортит его так же.

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

0 голосов
/ 08 февраля 2010

Раньше я использовал cruise control.net, nunit, fxcop, ncover, xmlpreprocess, nant и некоторых других, прежде чем перейти к TFS, где я занимаюсь разработкой sharepoint. Я не инвестировал в процесс CI для разработки sharepoint, чтобы ограничить наш проект, но я разработал задачи msbuild и подписался на события TFS для моделирования процесса CI с TFS 2k5. Я вообще не рассматривал его для TFS 2k8, но он определенно поддерживается.

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