우리는 현재 CC.NET (CruiseControl.Net)에서 msbuild 출력을 포맷하지 않습니다. 결과적으로 깨진 빌드의 원인을 찾는 것은 XML을 읽음으로써 마지막 'success = "false"인스턴스를 산출.CruiseControl.Net에서 MsBuild XML 출력의 형식을 지정하는 데 사용하는 XSLT는 무엇입니까?
어떤 XSLT를 사용하여 msbuild 출력을 포맷하고 결과 HTML이 만족 스럽습니까? 나는. 깨진 빌드의 원인을 쉽게 파악할 수 있습니까?
감사 B
편집 : 는 여기에 우리의 CC 프로젝트 XML 요소 중 하나의 소독 샘플입니다. 이제 로그 병합이 문제인지 궁금해합니다.
<project name="StackOverflowSample">
<workingDirectory>D:\_300</workingDirectory>
<webURL>&viewFarmReportWebURL;</webURL>
<sourcecontrol type="multi">
<sourceControls>
<vsts>
<!-- We get latest from TSF -->
</vsts>
</sourceControls>
</sourcecontrol>
<triggers>
<intervalTrigger seconds="60" />
</triggers>
<tasks>
<msbuild>
<executable>&msbuildExecutable;</executable>
<workingDirectory>app\consoleApp1</workingDirectory>
<projectFile>consoleApp1.sln</projectFile>
<buildArgs>/noconlog /p:Configuration=Release /v:quiet</buildArgs>
<logger>ThoughtWorks.CruiseControl.MsBuild.XmlLogger,"D:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll"</logger>
</msbuild>
<nunit>
<path>&nunitConsoleExecutable;</path>
<assemblies>
<assembly> D:\_300\app\consoleApp1\bin\Release\consoleApp1.exe</assembly>
</assemblies>
</nunit>
<exec>
<executable>&ncoverExecutable;</executable>
<buildArgs>"&nunitConsoleExecutable;" "app\consoleApp1\bin\Release\consoleApp1.exe" /nologo</buildArgs>
</exec>
<exec>
<executable>&ndependExecutable;</executable>
<buildArgs>D:\_300\app\consoleApp1.xml /Silent</buildArgs>
</exec>
<merge>
<files>
<file>D:\_300\app\consoleApp1\unit-test.xml</file>
<file>D:\_300\app\consoleApp1\ApplicationMetrics.xml</file>
<file>D:\_300\app\consoleApp1\AssembliesBuildOrder.xml</file>
<file>D:\_300\app\consoleApp1\AssembliesDependencies.xml</file>
<file>D:\_300\app\consoleApp1\AssembliesMetrics.xml</file>
<file>D:\_300\app\consoleApp1\CQLResult.xml</file>
<file>D:\_300\app\consoleApp1\InfoWarnings.xml</file>
<file>D:\_300\app\consoleApp1\NDependMain.xml</file>
<file>D:\_300\app\consoleApp1\TypesDependencies.xml</file>
<file>D:\_300\app\consoleApp1\TypesMetrics.xml</file>
</files>
</merge>
</tasks>
<publishers>
<merge>
<files>
<file>D:\_300\app\consoleApp1\SymbolModule.Xml</file>
</files>
</merge>
<xmllogger logDir="." />
&emailconsoleApp1;
</publishers>
</project>
감사합니다. 나는 당신의 대답에 대해 찬성표를 던졌지 만 나는 그것을 해결책으로 표시 할 수는 없다 ... 아직.;) 제공된 링크를 열어 조사 할 것입니다. 커스텀 로거는 좋은 접근 방법이라고 생각합니다. 왜냐하면 내가 작성한 것보다 노이즈를 필터링하여 CI 서버에서 더 빨리 그리고 덜 소모되는 훨씬 작은 로그를 생성 할 수 있기 때문입니다. –
필자는 완전히 이해하지 못했습니다. '기본'로거는 여전히 CCNet 전용으로 작성된 사용자 정의입니다. 로드 메이어 (Rodemeyer)의 성능이 더 좋다면, 아마도 배포판의 '기본'을 대체해야합니다. 그러나 대부분의 위키 기사는 구식입니다. ThoughtWorks.CruiseControl.MsBuild.XmlLogger는 더 이상 그런 왜곡 된 결과를 가져 오지 않습니다. – skolima
이것에 대한 고집에 감사드립니다. 정말 감사. 웹 대시 보드에서 "Build Build Log"를 선택하면 XML의 MASS가 표시됩니다. 그것은 msbuild 출력, NUnit 출력, 그리고 NCover와 NDepend의 XML 몬스터로 시작합니다. 이게 진짜 문제 야? msbuild 출력에 대한 링크가 있어야합니까? 출력을 병합하지 않아야합니까? 프로젝트 xml로 질문을 업데이트하여 우리가하는 일을보다 자세하게 볼 수 있습니다. –