---
title: "Continuous integration with Team System and Team Foundation Server"
url: "https://osherove.com/blog/2006/9/24/continuous-integration-with-team-system-and-team-foundation.md"
canonical: "https://osherove.com/blog/2006/9/24/continuous-integration-with-team-system-and-team-foundation.html"
published: "2006-09-24T00:05:59"
updated: "2006-09-24T00:05:59"
tags: ["Agile", "Team System"]
author: "Roy Osherove"
description: "Team foundation server is a monster . Seriously, it's so big and heavy, that trying to do something as simple as adding custom actions to a build process, reading the documentation and googling on how to achieve this is…"
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# Continuous integration with Team System and Team Foundation Server

By Roy Osherove September 24, 2006 In [Agile](https://osherove.com/blog/category/agile), [Team System](https://osherove.com/blog/category/team-system)

**Historical article** · Originally published September 24, 2006; technical details may be outdated.

Team foundation server is a **monster**. Seriously, it's so big and heavy, that trying to do something as simple as adding custom actions to a build process, reading the documentation and googling on how to achieve this is like drinking water from a fire hose:

- There's way too much to sift through
- It stinks
- After you are done you wonder if you weren't better off just sitting at home watching TV for a week.

Take **continuous Integration** (CI for short)for example. The basic idea is that whenever a checkin occurs on the project's codebase, an automated build is triggered that also does lots of other things (like run all the unit tests etc..). If that build fails you know almost immediately that you checked in code that **broke the build**. When you have CI in place as part of your development process, you can work through your integration problems much more quickly and with less pain as you keep building the software, and not hog them all until the last month of the project where suddenly everything goes wrong and everyone pulls their hair out. With CI in place, the release build should (hopefully) be just another automated build, nothing more.

How easy it is to do CI with Team System?

It's **impossible** to do it out of the box - you can't hook into the source code eventing system in any humanly-reasonable way.

- It's so bad that a PM from Microsoft had to post an extension to Team System in the form of an installer to get this to work.You can [download the CI support for Team Foundation Server here](http://blogs.msdn.com/khushboo/archive/2006/01/04/509122.aspx) as well as read the instructions on how to use it. [Here's the MSDN article](http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs05/html/ConIntTmFndBld.asp) that describes it in more detail.
- **Update:** Also, Mickey Gousset sends word of [TeamCI](http://teamsystemrocks.com/files/12/tools/entry1018.aspx) - a Continous Integration solution for Team System (no real docs yet..)

## More in Agile

[All posts in Agile](https://osherove.com/blog/category/agile)

- Sep 27, 2006

    ### [Using TypeMock vs. Design for testability](https://osherove.com/blog/2006/9/27/using-typemock-vs-design-for-testability.html)

- Sep 25, 2006

    ### [The future of unit testing tools - MbUnit, NUnit, NMock and FIT](https://osherove.com/blog/2006/9/25/the-future-of-unit-testing-tools-mbunit-nunit-nmock-and-fit.html)

- Sep 23, 2006

    ### [MbUnit vs. NUnit Vs. Team System Unit Testing - Choosing a unit test framework](https://osherove.com/blog/2006/9/23/mbunit-vs-nunit-vs-team-system-unit-testing-choosing-a-unit.html)

- Sep 17, 2006

    ### [Test Driven Development Related Podcasts and a few other comments](https://osherove.com/blog/2006/9/17/test-driven-development-related-podcasts-and-a-few-other-com.html)


---

## About the author

**Roy Osherove**: Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

- [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
- [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
- [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
- [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
- [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
- [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

- X: https://x.com/royosherove
- LinkedIn: https://www.linkedin.com/in/osherove/

### Contact

- Contact form: https://forms.gle/jQSx5KoXvrVA1JCK7

### License

Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page). License: https://creativecommons.org/licenses/by/4.0/
