Мне поручено улучшить качество и внедрить TeamCity для непрерывной интеграции. Мой опыт работы с TeamCity очень ограничен - я использую в основном TFS и имею некоторый опыт работы с CC.NET.
Многое должно произойти в процессе сборки ... фактически сборка уже помещена в три разные конфигурации, которые будут запускаться одна за другой.
Моя главная проблема заключается в том, что в каждом из них мне нужно было бы запустить несколько бегунов. Например, первый шаг сборки должен состоять из:
- Создание новых файлов AssemblyInfo.cs для согласованной нумерации сборок
- Фактическая компиляция
- Частичный модульный тестовый запуск (все тесты, которые выполняются быстро и проверяют основные функции)
- Запуск FxCop
- Запуск StyleCop
Текущая версия TeamCity позволяет настраивать только одного бегуна ... что заставляет меня зацикливаться на многих вещах.
Как бы вы подошли к этому? Моя текущая идея состоит в том, чтобы использовать MsBuild runner для всего и в основном запустить мой собственный скрипт на основе MsBuild, который затем выполняет все, в значительной степени так, как это делает TFS (и так же, как я делал вещи обратно в cc.net способом с моим собственным скриптом сборки Nant).
Что касается еще одной проблемы, вопрос заключается в том, как представить статистическую информацию, например, из модульных тестов, выполняемых на разных этапах (конфигурации сборки). У нас есть некоторые дальнейшие действия, которые требуют некоторого времени для запуска и мы хотим, чтобы это выполнялось на 2-м или 3-м шаге (последний, например, тестирование кода генерации базы данных, который, включая загрузку базовых данных, занимает около 15+ минут). ОТО, мы бы очень хотели, чтобы результаты тестов были как-то консолидированы.
У кого-нибудь есть идеи?
Спасибо.