ASP.NET Project Build Script For SVN and Cruise Control
-
26-06-2021 - |
Question
I have a project in ASP.NET MVC 3, the solution file contains 28 projects in total. This all is in a directory which is configured with tortoise SVN to always get the latest updates from SVN.
I have also installed curisecontrol on my VPS box, where these whole solution exist. I have also created a website in my IIS and everything is in order now.
Can anyone guide me into some tutorials for the following:
How to setup curise control web dashboard, so my clients can have look on the builds and its reports
How to use MSBuild with Cruise Control in some step by step tuts
Any sample build script with following features
Email notification on build fail or successful build
- stop the deployment if build is not successfull and create a build report
Thanks in advance
Solution
How to use MSBuild with Cruise Control in some step by step tuts http://www.codeproject.com/Articles/12985/Practical-NET2-and-C-2-An-introduction-to-MSBuild
By default, the web dashboard of ccnet displays the result of build without exact error messages. To display the error in web dashboard, go to “C:\Program Files\CruiseControl.NET\webdashboard” and open file “dashboard.config”.
There, you will find the below code:
Collapse | Copy Code xsl\header.xsl xsl\modifications.xsl xsl\unittests.xsl xsl\MsTestSummary.xsl xsl\fxcop-summary.xsl xsl\NCoverSummary.xsl xsl\SimianSummary.xsl xsl\fitnesse.xsl Now add this line in the above code:
Collapse | Copy Code xsl\compile-msbuild.xsl Therefore the code will become:
<buildReportBuildPlugin>
<xslFileNames>
<xslFile>xsl\header.xsl</xslFile>
<xslFile>xsl\modifications.xsl</xslFile>
<xslFile>xsl\compile-msbuild.xsl</xslFile>
<xslFile>xsl\unittests.xsl</xslFile>
<xslFile>xsl\MsTestSummary.xsl</xslFile>
<xslFile>xsl\fxcop-summary.xsl</xslFile>
<xslFile>xsl\NCoverSummary.xsl</xslFile>
<xslFile>xsl\SimianSummary.xsl</xslFile>
<xslFile>xsl\fitnesse.xsl</xslFile>
</xslFileNames>
</buildReportBuildPlugin>
We can also send the email to the user groups if the build fails.
<workingDirectory>D:\Projects\TheWorks\Applications\ProjectFolder</workingDirectory>
<buildArgs>ProjectName.msbuild /p:Configuration=Debug</buildArgs>
<timeout>1800</timeout>
<!-- 30 minutes -->
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll
</logger>
</msbuild>
</tasks>
<publishers>
<statistics />
<xmllogger />
<email from="EMAIL ADDRESS" mailhost="HOSTNAME"
mailhostPassword="PASSWORD" mailhostUsername="USERNAME"
includeDetails="true">
<users>
<user name="Jitendra Zaa"
address=ilovenagpur@gmail.com
group="AdminGroup" />
<user name="Santosh Karemore"
address=santosh.karemore@gmail.com
group="AdminGroup" />
<user name="Manoranjan sahoo"
address=manoranjan.sahoo@gmail.com
group="AdminGroup" />
<user name="Minal Shirsikar"
address="admin@shivasoft.in" group="Emul" />
</users>
<groups>
<group name="Emul" notification="failed" />
<group name="AdminGroup"
notification="failed" />
</groups>
</email>
</publishers>
</project>
The tags are self explanatory.
There may be following types of notification:
Failed Fixed Always
OTHER TIPS
How to setup curise control web dashboard, so my clients can have look on the builds and its reports -> you have to set a pwd in dashboard config file first and in web page, after set pwd you will be able to add plugin to make report like build report project report unit test report nant report check this url http://www.codeproject.com/Articles/70955/Set-up-the-Web-Dashboard-of-CCNet-to-Display-the-C in ccnet documentation you will see all samples and step: http://confluence.public.thoughtworks.org/display/CCNET/Documentation