What is Continuous Integration ?
Continuous integration (CI) is the practice, in software engineering, of merging all developer working copies with a shared mainline several times a day.
In addition to automated unit tests, organisations using CI typically use a build server to implement continuous processes of applying quality control in general — small pieces of effort, applied frequently. In addition to running the unit and integration tests, such processes run additional static and dynamic tests, measure and profile performance, extract and format documentation from the source code and facilitate manual QA processes. This continuous application of quality control aims to improve the quality of software, and to reduce the time taken to deliver it, by replacing the traditional practice of applying quality control after completing all development.
Continuous Integration For BizTalk
Continuous Integration for BizTalk applications is very challenging as it requires a lot of different artifacts to be deployed in different ways and is very different from common .Net deployments of Windows/Web Applications.There are different ways to achieve continuous Integration for BizTalk which can be used but my personal favourite is using MSBuild Server as it gives you seemless, one-click deployment of BizTalk artifacts and the process is very similar to normal .Net deployments.
Continuous Integration for BizTalk has following benefits
- Integrates Unit Test
- Opportunity to Improve Code Quality and Code Test Coverage
- Quick Bug Identification
- Brainless Deployments
- Process is Documented
- Discover potential Deployment Issues at earlier stages in Test environments
- Time Saving
Below are the actions which will be performed to achieve Continuous Integration for BizTalk
- Takes the latest from Source Control
- Created the Build folders and labels the build version
- Performs the Build
- Executes the unit test and generate Code Coverage Reports
- Creates the BizTalk MSI and Generate Bindings using BizTalk Deployment Framework
- Deploy the BizTalk application on BizTalk server
- Deploy other artifacts like SSO, Business Rules and BAM
- Deployment Verification Test
- Team Foundation Server 2010
- Visual Studio 2010
- Visual Studio Test System 2010
- BizTalk Server 2010 (Build Components)
- BizTalk Deployment Framework 5.0
Steps for BizTalk Continuous Integration
1) 1st step is to Deploy and configure a build server
2) Create TF Build as follows
Create New Build Definition
Define Triggers for Build
Select Source Control Folders
Select Build Agent, defined in step 1 and drop location for Builds e.g, on BizTalk server where Application will be deployed
Define the Build Process
Define Retention Policy
Save the Build Definition. You will have new Build available in Buld Definitions.
Queue New Build.
This will perform all the actions defined above and you should have application deployed in BizTalk Server.