Pages

Tuesday, August 18, 2009

Configuring CrusControl

 

Hi Guys,

Most of the build process in general is automated , generally people use so many tool, one among them is CC(CrusControl) , I used this CrusControl to make my build job easy, its really good. i know that all the functionalities here i mentioned we can achieve through normal C# code itself. But this like they have done we just need to configure :).

K let start Following functionalities

1. Triggering Build at certain time , Scheduling build

2. Getting latest from Vss , To fresh folder and applying Lable once the latest is done.{if the Vss get latest is not working make sure the CrusControl service is running with windows account goto Logon option and change it }

3.Build the solution using devenv.exe

4. Executing EXEs using Crouscontrol

5.Generating FxCop Report

6.Send the result to team

 

<cruisecontrol xmlns:cb="urn:ccnet.config.builder">
<!-- START - Block for MFW V2 - added by Ashwani-->
  <project name="Messaging framework v2">
    <workingDirectory>D:\MFWv2\</workingDirectory>
    <webURL>http://172.16.136.15/ccnet/server/local/project/Messaging+framework+v2/ViewProjectReport.aspx</webURL>
    <triggers>
      <filterTrigger startTime="13:00" endTime="06:00">
        <trigger type="filterTrigger" startTime="0:00" endTime="23:59:59">
          <trigger type="intervalTrigger" name="continuous" seconds="900" buildCondition="ForceBuild"/>
        <!--  <weekDays>
            <weekDay>Saturday</weekDay>
            <weekDay>Sunday</weekDay>
          </weekDays>-->
        </trigger>
      </filterTrigger>
      <scheduleTrigger time="16:00" buildCondition="ForceBuild" name="Scheduled">
      </scheduleTrigger>
      <scheduleTrigger time="13:00" buildCondition="ForceBuild" name="Scheduled">
      </scheduleTrigger>
    </triggers>

    <modificationDelaySeconds>100</modificationDelaySeconds>

     <sourcecontrol type="multi">
        <sourceControls>
        <vss>
             <project>"$/AceRoot/Development/ACE Messaging Framework V2/ReleaseToQA"</project>
            <username>venkatard</username>
            <password>password1</password>
            <executable>C:\Program Files (x86)\Microsoft Visual SourceSafe\SS.EXE</executable>
            <ssdir>\\172.16.131.231\ACE$\</ssdir>
            <applyLabel>True</applyLabel>
            <autoGetSource>True</autoGetSource>
            <workingDirectory>C:\MFWDailyBuilds\VSSBuildVersion</workingDirectory>
            <timeout units="minutes">40</timeout>
            <cleanCopy>True</cleanCopy>
        </vss>
        <vss>
            <project>"$/AceRoot/Development/ACE Messaging Framework V2/Source Projects V2"</project>
            <username>venkatard</username>
            <password>password1</password>
            <executable>C:\Program Files (x86)\Microsoft Visual SourceSafe\SS.EXE</executable>
            <ssdir>\\172.16.131.231\ACE$\</ssdir>
            <applyLabel>True</applyLabel>
            <autoGetSource>True</autoGetSource>
            <workingDirectory>D:\MFWv2\Source Projects V2\</workingDirectory>
            <timeout units="minutes">40</timeout>
            <cleanCopy>True</cleanCopy>
        </vss>   
        </sourceControls>
    </sourcecontrol>
    <tasks>

      <!-- Start Build Source Code Projects -->
      <!-- Listener solution Build-->
     <devenv>
        <solutionfile>"D:\MFWv2\Source Projects V2\ACE MFW V2.sln"</solutionfile>
        <configuration>Release</configuration>
        <buildtype>ReBuild</buildtype>
        <executable>C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe</executable>
        <buildTimeoutSeconds>2400</buildTimeoutSeconds>
      </devenv>
      <!-- Website solution Build-->
       <devenv>
        <solutionfile>"D:\MFWv2\Source Projects V2\MFWSetups\MFWSetups.sln"</solutionfile>
        <configuration>Release</configuration>
        <buildtype>ReBuild</buildtype>
        <executable>C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe</executable>
        <buildTimeoutSeconds>2400</buildTimeoutSeconds>
      </devenv>
      <!-- Start execution of FxCop -->
      <exec>
        <executable>C:\Program Files (x86)\Microsoft FxCop 1.36\FxCopCmd.exe</executable>
        <baseDirectory>C:\Program Files (x86)\Microsoft FxCop 1.36\</baseDirectory>
        <buildArgs>/p:"D:\MFWv2\Source Projects V2\FxCOP\MFW V2.FxCop"  /out:"D:\MFWv2\Source Projects V2\FxCop-results.xml" /gac</buildArgs>
        <buildTimeoutSeconds>300</buildTimeoutSeconds>
      </exec>
      <!-- Complete execution of FxCop -->

    </tasks>

    <publishers>
      <merge>
        <files>
          <!-- Start FxCOP result -->
          <file>D:\MFWv2\Source Projects V2\FxCop-results.xml</file>
          <!-- Complete FxCOP result -->
          <!-- Start MStest result-->
         <!-- <file>D:\TestProjects.trx</file>-->
          <!-- End MStest result-->
        </files>
      </merge>

      <email from='venkatard@gmail.com' mailhost='smtp.gamil.com' includeDetails='true'>
        <users>
          <user name='MFW' group='ACE' address='venkatard@gmail.com'/>
          <!--Product_MFW@gmail.com-->
        </users>
        <groups>
          <group name='XXXX' notification='always'/>
        </groups>
      </email>
      <xmllogger />
    </publishers>
  </project>

<!-- END - Block for MFW V2 - added by Venky-->
</cruisecontrol>

0 comments: