На моей текущей работе (контракт для очень крупной компании. Около 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, как только я уйду.