Cruisecontrol. net

Source: Internet
Author: User

For a slightly larger project, continuous integration and daily release will become an important task of the project team, especially in the Agile Project Team. To improve the automation of continuous integration, many open-source tools have been generated. Here we mainly focus on the. NET development environment in windows. Tools:

    1. Cruisecontrol. the net continuous integration tool runs on the server. Based on the user's configuration, many scattered tasks are carried out together, you can run the user-configured process through scheduled running or fixed-time running, such as updating the process from SVN.CodeUse msbuild to compile projects or solutions, use code analysis tools to inspect code normalization, run test cases, and finally send the results of all the above steps to the owner by email.
    2. The build tool in the Microsoft. NET framwork environment of msbuild.
    3. Fxcop is a managed language code analysis tool provided by Microsoft for C. Not suitable for CPP
    4. Nunit, a unit testing tool, is transplanted from JUnit. It provides a unified interface for all languages, and the learning curve is relatively flat. Cppunit for CPP.
    5. Nant .. Currently, only the command line mode is provided. Its main function is to implement many automated functions through configuration. For example, you need to perform other cleanup work before building, and other work such as copying after building can be fixed in the configuration file. He integrated more small tasks.

The above tools can all work together through a good combination of ccnet. The following describes how to use ccnet.

    1. Prepare for IIS installation on the machine and the corresponding. Net framwork
    2. DownloadCruisecontrol. net, which is a server segment software and must be installed.Cruisecontrol. Net-cctray is a client tool.
    3. InstallAfter cruisecontrol.net, configure the ccnet. config file under the ccnet.exe directory. This file contains all the configurations to be executed, and ccnet provides services by reading the file. The following provides a simple configuration
Code

  <  Cruisecontrol  >  
< Project Name = "Mapprj" >
<! -- Working directory. The downloaded source code will be stored in this directory. If not set, the downloaded source code will be stored in the directory named project name in the server subdirectory under the installation directory. -->
< Workingdirectory > E: \ ccnet </ Workingdirectory >
<! -- Log directory of the monitoring process for this project -->
< Artifactdirectory > E: \ ccnet </ Artifactdirectory >
<! -- You can use different methods to identify each automatically generated version. Labeller Blocks -->
< Labeller Type = "Datelabeller" />

<! -- Execution cycle -->
< Triggers >
<! -- Scheduled task. You can set the time at which the build plan will be executed. -->
<! -- Scheduletrigger time = "14:00" buildcondition = "forcebuild" -->
<! -- If the following configuration section is specified, it will be executed within the specified time and date. If not, it will be executed every day. -->
<! -- <Weekdays>
<Weekday> Monday </weekday>
</Weekdays> -->
<! -- /Scheduletrigger -->

<! -- Interval -->
< Intervaltrigger Seconds = "60" Buildcondition = "Forcebuild" />
</ Triggers >

<! -- Source code controller type used -->
< Sourcecontrol Type = "Multi" >
< Sourcecontrols >
< SVN >
< Trunkurl > Http: // ***/trunk/include </ Trunkurl >
< Workingdirectory > ./INC </ Workingdirectory >
< Username > User Name </ Username >
< Password > Password </ Password >
</ SVN >
< SVN >
< Trunkurl > Http: // ***/trunk/vs2005/win32consoletest </ Trunkurl >
< Workingdirectory > ./ </ Workingdirectory >
< Username > User Name </ </Username >
< Password > Nihao </ Password >
</ SVN >
</ Sourcecontrols >
</ Sourcecontrol >


<! -- The task to be executed after the code is downloaded each time.
* Build publisher
* Email publisher
* Executable task
* File merge task
* Forcebuildpublisher
* Modification writer task
* Msbuild task
* Nant task
* Null task
* Nunit task
* Visual Studio task
* XML log publisher -->

< Tasks >
<! -- Msbuild automatic compilation task -->
< Msbuild >
<! -- Msbuild path, usually in the system directory -->
< Executable > C: \ windows \ Microsoft. NET \ framework \ v2.0.50727 \ msbuild.exe </ Executable >
< Workingdirectory > </ Workingdirectory >
<! -- Solution file. msbuild finds the file relative to the workingdirectory of the project and compiles it. -->
< Projectfile > Test. sln </ Projectfile >
<! -- Compile Parameters -->
< Buildargs > </ Buildargs >
<! -- Compiled directory type -->
< Targets > </ Targets >
<! -- Expiration time -->
< Timeout > 60 </ Timeout >
</ Msbuild >
</ Tasks >
</ Project >
</ Cruisecontrol >

If no configuration error is written, runThe monitoring window is displayed in cruisecontrol. net. When the time in the configuration is met,ProgramUpdate the code, compile the program, and other processes.

 

Reference 

Http://www.cnblogs.com/hjf1223/archive/2006/04/13/374655.html

Http://www.evget.com/zh-CN/Info/catalog/10320.html

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.