Merge Testresults из нескольких проектов Cruise Control .NET
-
27-10-2019 - |
Вопрос
В SOA - окружающей среде, как правило, будет много проектов в круиз -контроле .NET .NET - у меня сейчас около 30 лет, и это будет еще больше. В CI узкая фокус - это хорошая вещь, но для меня, кто хочет представить статистику качества кода и других показателей для команды в целом, это немного разочаровывает, собирая данные из всех проектов. Поэтому мне интересно: кто -нибудь сделал какой -то краткий проект? С CCNETS MergetAsk это должно быть выполнимо, если у них нет такого же имени, верно?
Решение
Это не было проблемой
Я добавил Nulltask, чтобы создать зеленую сборку и задачу слияния с литературой на все остальные проекты. Статистические данные xPaths ожидали только одного отчета каждого типа, поэтому им нужна некоторая настройка, но это так.
В идеале был способ скопировать все отчеты из каждого проекта в статистическую эксплуацию, но исправления именования и очистки сделали это гораздо более сложное решение. Пока мы не создаем больше, чем несколько новых проектов в спринте, это безболезненно.
пример:
<triggers>
<intervalTrigger seconds="$(MyTimeBetweenChecks)" name="continuous" buildCondition="IfModificationExists" />
<scheduleTrigger time="23:55" buildCondition="ForceBuild" name="ContinousTriggerNightly">
</scheduleTrigger>
</triggers>
<tasks>
<nullTask/><!-- returnerar success så projektet inte failar för det inget gör-->
</tasks>
<publishers>
<merge>
<files>
<!-- nunit NCover-NUnit-Results-->
<file>$(ServerDictionary)TemplateService_All\Artifacts\NCover-NUnit-Results.xml</file>
<file>$(ServerDictionary)InvoiceService_All\Artifacts\NCover-NUnit-Results.xml</file>
<file>$(ServerDictionary)ContactService_All\Artifacts\NCover-NUnit-Results.xml</file>
<!-- fxcopreport-->
<file>$(ServerDictionary)TemplateService_All\Artifacts\fxcopreport.xml</file>
<file>$(ServerDictionary)InvoiceService_All\Artifacts\fxcopreport.xml</file>
<file>$(ServerDictionary)ContactService_All\Artifacts\fxcopreport.xml</file>
<!-- ncover_symbolmodule-->
<file>$(ServerDictionary)InvoiceService_All\Artifacts\ncover_symbolmodule.xml</file>
<file>$(ServerDictionary)ContactService_All\Artifacts\ncover_symbolmodule.xml</file>
<!-- ncover_SymbolModuleNamespaceClassMethod-->
<file>$(ServerDictionary)ExportService_All\Artifacts\ncover_SymbolModuleNamespaceClassMethod.xml</file>
<file>$(ServerDictionary)PackageService_All\Artifacts\ncover_SymbolModuleNamespaceClassMethod.xml</file>
</files>
</merge>