ОК, поэтому я с готовностью признаю, что я новичок, когда речь идет о непрерывной интеграции.
Как я уже сказал, я пытаюсь настроить среду CC.NET, чтобы обучать себя, но мне трудно найти информацию, необходимую мне для создания автоматической сборки.
Как я понимаю, в С# файл .csproj, созданный VS 2005, и forward - это допустимый файл MSBuild. Для этого мне удалось интегрировать задачу MSBuild в CC.NET с использованием файла .csproj, но у меня есть несколько проблем с этим:
- Здесь многое происходит, что я не уверен, что мне действительно нужна автоматическая среда сборки.
- Я не создавал этот файл. Я этого не понимаю, и это меня пугает. (Программирование по совпадению)
- Большая часть происходящего, кажется, абстрагируется через
$(MSBuildToolsPath)\Microsoft.CSharp.targets
- В результате 1, 2 и 3, изменение файла, чтобы включить что-то вроде MbUnit, кажется запутанным и сложнее, чем должно быть. Моя единственная реальная опция - включить его в раздел
AfterBuild
, который кажется вроде как взломать меня.
Итак, несколько вопросов для людей CC.NET, людей MSBuild и людей MbUnit.
- При использовании MSBuild целесообразно использовать VS-образный файл .csproj в качестве файла сборки? Или я должен создать свой собственный?
- Должны ли тесты MbUnit быть частью файла MSBuild или файла CC.NET? Мои исследования показывают, что они принадлежат к файлу MSBuild. Если это так, я могу создать новый файл MSBuild.proj и проверить это на CVS в дополнение к файлу .csproj? Или задача MbUnit входит в мой файл .csproj?
- Как и в вопросе 2. Если я добавлю тесты MbUnit в файл MSBuild и в конечном итоге использую файл .csproj, действительно ли
Target Name="AfterBuild"
раздел для добавления этой информации? Разве не должно быть разделаTarget Name="Test"
? Использование созданного VS файла .csproj предотвращает второй вариант.
Я знаю там много, но большинство из того, что я смог найти в Интернете, предполагает определенный уровень знакомости с этими темами, которые у меня просто нет, - если я не ошибаюсь, кривая обучения для этот материал не является кривой вообще, это ступенчатая функция.:)
Изменить 1: я обновил текст, чтобы быть немного более кратким и рассмотрел некоторые затяжные вопросы, которые у меня были с ответами.