Skip to main content

 

 
Go Search
Home
Getting Started
Knowledge Base
Training
Discussions
Downloads
Platform SDK
  

 
 
VersionOne Community > Downloads > Integration Documentation > CruiseControl.Net
 
VersionOne CruiseControl Integration

VersionOne CruiseControl Integration


Description

The VersionOne CruiseControl.NET integration creates a record of CruiseControl builds in VersionOne, so the development teams can associate stories and defects to a particular build. This visibility is useful when identifying problem builds or generating release notes.

Once the VersionOne Publisher has been installed, team members include a story or defect ID, such as “S-01454”, in the comments of their SCM commit . Every time a build executes the publisher creates a BuildRun asset in VersionOne with details of the build. If the build comment contains story or defect IDs, the publisher will also create or reuse change-sets assets in VersionOne and assoicates the build with the appropriate story or defect.

Using this integration you can better answer the following questions:

  • For Defects

    • Which build the defect was reported against?

    • Which build contained the fix for the defect?

    • Which build contains work for the defect?

  • For Stories (Backlog Item)

    • Which build contains work for the story?

    • Which build contained the completed story?

  • For Build Runs

    • Which defects were fixed?

    • Which stories were completed?

    • Which defects were introduced?

    • When work for a story or defect was included?

    • Which Change-sets were included?

  • For a range of Build Runs

    • Which stories were completed?

    • Which defects were fixed?

    • Which defects were introduced?

System Requirements

VersionOne: 8.1 or above

Integration Server:

  • Operating System—Windows 2000, 2003

  • Framework—Microsoft .Net 2.0

Continous Integration Server:

  • Tested with CruiseControl.NET 1.3.0.2918

Downloads

The latest version of V1CCNetPublisher is available at V1: Integration Downloads.

Installation

These installation instructions assume that CruiseControl.NET is already installed, configured, and working properly.

1. Ensure Connectivity

Verify that you can connect to your VersionOne instance from the machine hosting CruiseControl.NET

2. Extract Files

Download VersionOne publisher using the link above and extract it into a folder of your choice. This can be a temporary location since we will copy some of these files during CruiseControl.NET configuration.

3. Configure

Configuration for Build Integration is a 2 step process.

4. Verify the integration

Once configuration is complete use the following steps to verify that the build integration is working

  1. Navigate to CruiseControl.NET

  2. Force a build on the project you configured

  3. Wait for build to complete

  4. Navigate to VersionOne

  5. Login

  6. Select VersionOne project in 'My Projects' dropdown

  7. Navigate to the Reports | Reports Overview page

  8. Select the "Build Run Quicklist" Report

You should an entry in the grid for the build you forced. If not, verify your configuration.

Configuration

VersionOne Configuration

  1. Log into the VersionOne application as admin

  2. Navigate to the Admin | Configuration | System page.

  3. Check the “Enable Build Integration” checkbox and click the Apply button.

    Figure 1. 


  4. Navigate to the Admin | Projects | Build Project page

    Figure 2. 


  5. Click Add to add a new Build Project

  6. Specify the following

    1. Name – this is how the Build Project will be known to VersionOne users

    2. Reference – this is the Build Project is known to the partner system

  7. Click Ok to save the new Build Project

  8. Navigate to the Admin | Projects | Projects page

  9. Click Edit on the row for the project you want associated with a Build Project

  10. Using the “Build Projects” dropdown add the appropriate Build Project.

    Figure 3. 


  11. Click Ok to accept the changes

  12. Logout

CruiseControl.NET Configuration

This section describes how to configure CruiseControl.NET for use with VersionOne

  1. Copy the following files from the downloaded package into your CruiseControl server directory

    • ccnet.VersionOnePublisher.plugin.dll

    • VersionOne.SDK.APIClient.dll

    • VersionOne.SDK.ObjectModel.dll

    The other dlls are provided as reference only and should not be copied or moved.

  2. Add the VersionOne publisher to the list of publishers for the appropriate project in your CruiseControl.NET configuration file (ccnet.config)

    		<publishers>
    			<xmllogger />
    			<versionone url="http://V1Host/VersionOne/" username="admin" password="admin" webroot="http://CCHost/ccnet" referenceexpression="[A-Z]{1,2}-[0-9]+" referencefield="Number"/>
    		</publishers>
    

  3. Use the following table to configure the VersionOne Publisher

    Table 1. 

    NodeDescriptionTypeRequiredDefault
    urlThe URL of the VersionOne Application. For example: http://server/VersionOne/StringTrue 
    usernameThe username to authenticate with. This field is optional if using NT Auth (integrated auth). Required when using VersionOne authentication.String(varies) 
    passwordThe password to authenticate with. This field is optional if using NT Auth (integrated auth). Required when using VersionOne authentication.String(varies) 
    integratedauthTrue to use NT Auth (integrated auth), false to use VersionOne authentication.Boolean(varies)false
    webrootThe root of the URL used for linking to build logs. For example: http://localhost/ccnet/StringFalseNull
    serverThe "BuildServer" portion of the URL used for linking to build logs. For example: http://localhost/ccnet/server/{BuildServer}/project/...StringFalse"local"
    referenceexpressionThe regular expression to use when matching primary workitems (stories and defects) with change comments. Required when using changeset integration.String(varies)Null
    referencefieldThe system name of an attribute to search when matching primary workitems (stories and defects) with change comments. Required when using changeset integration.String(varies)Nulll


Here's an explanation of the VersionOne publisher illustrated above:

Table 2. 

The VersionOne URL ishttp://V1Host/VersionOne/
The CruiseControl.NET URL ishttp://CCHost/ccnet
The publisher will login into VersionOne asadmin
When searching CruiseControl.NET comments to determine if it contains a VersionOne Workitem, the publisher will use the regular expression"[A-Z]{1,2}-[0-9]+”
If a Workitem identifier is found, the publisher will attempt to match this information to the VersionOne Workitem attributeNumber


Copyright © 2008, VersionOne, Inc. All rights reserved. This document was generated 2008-07-15 11:02:33.