Obsolete: TFS Integrator
December 21, 2007
Today I finished publishing a number of tools under the MIT license to CodePlex. Two of these tools represent a replacement for a single tool that Readify released last year called TFS Integrator. If you are currently using TFS Integrator I strongly recommend that you adopt “TFS Continuous Integrator” and “TFS Dependency Replicator“.
TFS Integrator originally included two features, support for continuous integration, and support for dependency replication. Now that Team Foundation Server 2008 is released the continuous integration functionality of TFS Integrator is now redundant so we decided to split the functionality out into two separate tools.
Moving forward TFS Continuous Integrator will just contain the continuous integration functionality for customers who are still running Team Foundation Server 2005, however TFS Dependency Replicator will be updated to support Team Foundation Server 2008 (it already supports Team Foundation Server 2005).
By open sourcing the tools under the MIT license we hope to address any concerns our customers have about the maintenance of the software moving forward (because they can get the code and maintain it themselvesm if necessary).
Note that some customers reported that TFS Integrator had some stability problems. We are confident that these two new releases address those concerns. We drastically simplified the implementation (less code = less complexity = less bugs), but also changed it so that rather than relying on the TFS evening system, we actually poll the repository which leads to less comms related issues.
Finally, in addition to releasing TFS Continuous Integrator and TFS Dependency Replicator we have also released TFS Build Virtualizer and TFS File Sharer.
Getting Started with TFS Continuous Integrator
December 21, 2007
I’ve been throwing a few tools out under the MIT license over the last week or so, and the final one to make it out the door is a continuous integration engine for Team Foundation Server 2005. Now that Team Foundation Server 2008 has shipped this is less useful, but I wanted to put it out there anyway as a replacement for TFS Integrator which we shipped last year. Here is the description of TFS Continuous Integrator from the CodePlex homepage:
“TFS Continuous Integrator extends Team Foundation Server 2005 to support continuous integration by triggering a build when a check-in occurs at a specific location.
The tool works by monitoring the version control store for changes, then once identified pulling down configuration files contained within the store to determine which builds should be initiated.”
Setting up TFS Continuous Integrator is very straight forward.
Installing and Configuring the Continuous Integrator Component
In order to install the Continuous Integrator component you need to first download the release from CodePlex. From this zip file you need to extract the following files:
- ContinuousIntegrator.exe
- ContinuousIntegrator.exe.config
These two files should be placed somewhere on the file system of your TFS server. I would recommend “C:\Program Files\Continuous Integrator”. Once these files are in place you should issue the following command at the command prompt:
- C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe /i “[install path]\ContinuousIntegrator.exe”
During the installation process a dialog will be presented asking for some credentials. I recommend using the build service account (e.g. [DOMAIN]\TFSBUILD) because it generally has the rights needed to talk to the build engine in TFS and trawl the version control respository for changeset information. The configuration file for TFS Continuous Integrator also needs to be updated:
Now that the base-line configuration is in place its time to start up the service:
- net start ContinuousIntegrator
Before any CI builds start kicking off some per-Team Project configuration needs to be added in via version control. These files are checked in under the TeamBuildTypes folder under each Team Project (e.g. $/ConsultantPortal/TeamBuildTypes/ContinuousIntegrator.xml).
TFS Continuous Integrator will then pull down this file each time a check-in occurs to determine whether it needs to trigger a build.
What’s next? Want to help out?
If you have any feedback please use the Issue Tracker and create a work item. Because Team Foundation Server 2008 has superior continuous integration features out of the box I don’t expect this project to get too much love.
If you are interested in helping out contact me via my CodePlex profile page. Thanks for listening! I hope you find the TFS Continuous Integrator useful in your organisation.
P.S. Please note that once we get real documentation in the CodePlex wiki this page will become obsolete, but I will put a link to the equivalent documentation at the top of the page.