|
CruiseControl.NET : Using CruiseControl.NET with Gendarme
This page last changed on Jun 11, 2009 by dna.
Run Mono's Gendarme as part of your integrationGendarme is a extensible rule-based tool to find problems in .NET applications and libraries. Gendarme inspects programs and libraries that contain code in ECMA CIL format (Mono and .NET) and looks for common problems with the code, problems that compiler do not typically check or have not historically checked. Homepage: http://www.mono-project.com/Gendarme Run Gendarme as a CruiseControl.NET Task
See the Gendarme Task for common use. Run Gendarme as part of your NAnt buildAn alternative to get the results of Gendarme included in the CruiseControl.NET build results, you will need to call Gendarme through NAnt and include the Gendarme XML output file with a File Merge Task. You can either use the <exec> or <gendarme> NAnt task. Example for the NAnt Gendarme Task:<property name="tools.dir" value="${path::get-full-path('Tools')}" readonly="true" /> <property name="nauckit.nant.assembly" value="${path::combine( path::combine(tools.dir, 'NAnt'), 'NauckIT.NAnt.dll')}" readonly="true" /> <target name="runGendarme"> <loadtasks assembly="${nauckit.nant.assembly}" /> <gendarme executable="${path::combine( path::combine('Tools', 'Gendarme'), 'gendarme.exe')}" outputType="XmlFile" outputFile="${path::combine(build.out.dir, 'gendarme-result.xml')}"> <assemblies> <include name="${path::combine(build.out.dir, '*.dll')}" /> <include name="${path::combine(build.out.dir, '*.exe')}" /> <exclude name="${path::combine(build.out.dir, '*.config')}" /> </assemblies> </gendarme> </target> Merge Gendarme results into your CruiseControl.NET resultsThe next step is to merge the Gendarme XML output file into the build result using the File Merge Task: <tasks> <merge> <files> <file>d:\sourceforge\ccnet\build\Gendarme\gendarme-result.xml</file> <!-- Other files to merge for your build would also be included here --> </files> </merge> </tasks> Configuring your Reporting Application to display Gendarme resultsAdd following entries to your webdashboard.config: <buildPlugins> <buildReportBuildPlugin> <xslFileNames> ... <xslFile>xsl\gendarme-summary-ccnet.xsl</xslFile> ... </xslFileNames> </buildReportBuildPlugin> <buildLogBuildPlugin /> ... <xslReportBuildPlugin description="Gendarme Report" actionName="GendarmeBuildReport" xslFileName="xsl\gendarme-report-ccnet.xsl"/> ... |
| Document generated by Confluence on Jan 30, 2010 19:06 |