Navigation:  Samples > Version Control >

ContinuousIntegration.bld Sample

Previous pageReturn to chapter overviewNext page

This sample demonstrates performing continuous integration builds with Visual Build.  When built, the project runs continuously, building every 10 minutes (configured in the LOOP_DELAY project macro).  For each iteration, the project checks for any changes in the source control repository since the last build (stored in the LAST_BUILD_TIME global macro) and performs the build logic if changes have been made.

 

The sample demonstrates using Perforce, SourceSafe, Subversion, Surround SCM, Team Foundation, or Vault / Fortress as the source control repository to monitor (check the appropriate Check step for your system).  Each check step uses a vbld_StepDone script event to parse the output and determine if changes have been made since  the last build. To incorporate into your builds, change the Perform Build step to call your build project instead of the VStudio.bld sample.  To use with other SCM systems, create a custom step for your system modeled after an existing check step.

 

One way to start this build on a dedicated build machine is to create a scheduled task that is scheduled at System Startup. Note: No window is displayed for the task when configured in this manner.  If this is desired (for instance to monitor via Remote Desktop), Windows can be configured to login automatically at startup (http://www.google.com/search?hl=en&lr=&ie=UTF-8&q=auto+login+windows+nt) and the task scheduled to run at Logon.

 

Notes:

This sample project is located in the Version Control subfolder of the Samples path.
The project requires VBScript as the default script language.
You can also perform continuous integration by invoking the Visual Build command-line interface from CruiseControl .NET's Executable task.