Skip to main content

Installing Team Foundation Server Workgroup Edition

It's not rocket science but I found the Team Foundation Server (TFS) installation process a bit tedious and tricky. The install MSI will reactively inform you of what you're missing (with System Health Check) but something more proactive would help. Also, an error within the System Health Check necessitates re-starting the TFS install from scratch. ;-( Regardless, I wanted to share my experience.

My purpose in installing TFS is learn the product and prepare to share with others through demos and presentations. So, I'm working off a Dell Inspiron 6000 laptop running Windows XP. Also, I chose Workgroup Edition because I don't want to mess with CALs and I don't intend to upgrade to Standard or Enterprise Edition. Workgroup and Standard are the same except Workgroup limits to 5 users.

TFS doesn't support Windows XP and I don't want to run Win2k3 Server so I'm using Virutal PC to host my TFS instance. This, BTW, is an amazingly effective and safe way to install beta or stuff you just want to try out without horking your base OS.

Of further difficulty, Virtual PC (and TFS) want a lot of memory. I only had 1GB so I had to upgrade to the max 2GB.

My process:
  • Install and configure a Virtual PC instance with Win2k3 SP1
  • This should install the .Net Framework 2.0 but double check...
  • Install IIS (enable ASP.Net) and SMTP
  • Create two accounts for TFS services. I named them TFSService and TFSReporting. I added them to the local Administrators group
  • Install SQL Server 2005 Standard Edition (Developer is not supported). I installed under a separate local account I created named SQLService. I added this to the local Administrators group.
  • I logged in as TFSService from here on out to install the remaining software.
  • Important: Before installing WSS in the next step, read "How to: Install Microsoft Windows SharePoint Services for Team Foundation Server". You *must* install WSS to leverage SQL Server instead of the default MSDE database installed with WSS. You can do this by selecting the Server Farm option during WSS's installation. Otherwise, you'll need to uninstall WSS and re-install from scratch. Unfortunately, the TFS install doesn't enlighten you to your mistake until well into the install. (Oh yes, I'm speaking from experience...) If you accidentally skipped this step, make sure to uninstall both WSS and the Sharepoint instance of MSDE. Otherwise, the Server Farm option will not appear on the WSS install.
  • Install WSS 2.0 with SP2...not 3.0. Sharepoint 3.0 and WSS 3.0 is not yet supported for TFS...even TFS SP1. I did not have to install Sharepoint Portal Server...just WSS.
  • When WSS prompted for the IIS Application Pool, I chose StsAdminAppPool from the drop-down.
  • Important: When WSS prompted for the Configuration Database, I chose "." for the Database Server, "STS_Config_TFS" (you *must* use this name) as the name of the database, recall I'm logged in as TFSService so I kept the Windows Auth option,
  • Install SQL Server 2005 KB914595 Hotfix (x86)
  • Install ASP.Net 2.0 QFE KB913393. I don't believe the KB ever actually got published but the install is included on the TFS media.
  • Install TFS using the Single-Server option. On a non-server class machine and/or virtual instance, you may get a processor or disk space nasty-gram but these were just warnings. I used the two accounts I created earlier, enabled SMTP alerts, and accepted the default install location.
  • Install Team Explorer.
  • Install KB919156
  • Install TFS SP1.
After a very long day of trial and error, I got TFS Workgroup installed onto a Virtual PC instance. I hope your experience consumes far less of your weekend!

Some final links applicable to the process:
New TFS Install and Sharepoint versions
Upgrading to Team Foundation Server SP1 – Workgroup Version and a Gotcha!!

Is it safe to install VS2005 SP1 on client machine without updating the TFS server?

TFS and Sharepoint 2007 (now that would be cool)
Warning about upgrading WSS to v3.0 on Team Foundation Server


Update 01/22/2007: When attempting to create a new team project, I kept receiving an HTTP 403 error. This post resolved the issue.

Update 01/22/2007: After resolving the 403 error, I experienced a 503 permissions error. I checked the NT Event log noticing a web service permission issue accessing the database. Checking SQL Management Studio, I noticed several databases were in single user mode. I switched them to multiple, shut down, and restarted Visual Studio. I also needed to restart IIS. All was well. Some helpful posts:
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=848511&SiteID=1
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1026766&SiteID=1

Update 02/10/2007: Insightful post regarding issues with TFS SP1; Updated TFS SP1 Install Guide

Update 03/11/2007: I discovered Team Explorer is not installed by default with VS.Net Team Edition. The Team Explorer setup resides within the TFS install media under a folder named "tfc".

Update 03/11/2007: Finally overcame the "Unable to connect to the Windows SharePoint Services" error. Solution.

Comments

Anonymous said…
Very helpful, thanks!
Anonymous said…
Hi Jeff,

is there any way to connect TF workgroup edition server to the database server that is installed on remote machine? if yes, can you please provide me some information about that? I'm trying to do that but it always says "In a workgroup, the team foundation database server must be the same as the application tier computer".

Regards,
Vipul
vipul_vgroep@hotmail.com
Jeff Hunsaker said…
@Vipul Not that I'm aware of...not a big fan of workgroup edition for these reasons. But, I guess you get what you pay for. :)
Anonymous said…
Hi Vipul,
Please refer to this article. If you are installing TFS in a workgroup (instead of a domain), the app and data tier should be on the same machine. I think this is same for both workgroup and standard TFS editions.

Thanks

Popular posts from this blog

Hero Write-up: Now this is Customer Service!

My best friend Scott is president/C-everything of a small northeastern Ohio manufacturing concern, KirkKey Interlock . I hadn't spoken with him for a while and wanted to see how Canton fared with the Blizzard of '08 (that's what they're calling it...not me). I say, "So what's new?" He replies that on Tuesday his primary server (which essentially runs the business) came up with lame with not one, but [a statistically improbable] *two* physical disk failures on a RAID5 hardware array. My friend attempts the fix but gives up pretty quickly after seeing some Linux nasty-grams on the boot screen. His service provider is an old college buddy who lives down in Raleigh, Cerient Technologies led by Jason Tower . Scott couldn't email out because Exchange was on the toasted server. Being creative, Scott started Treo-emailing photos of the screen. Unfortunately, Jason couldn't receive email because a storm had knocked out a lot of local hosting. [Sigh] After...

Certified or Certifiable?

As a senior technology professional, I interview a lot of candidates. I also maintain solid relationships with other folks in the community. Frequently, the topic of certifications arises: A good investment? Valuable? A clear measurement of skill? Consensus appears to draw the line related to one's seniority. If you're (for example) just out of school and looking for an instant creditability boost, by all means pursue a certification. Likely, this credential will assist you in overcoming the "junior" tag and likely land you more interviews and client roles. (Note: I'm going to use the terms senior and junior here...no offense to either. Can't think of a better one word description. I was a junior once too.) In stark contrast, the value of certifications drops off the table around the 2-3 year mark. Some in my circles even perceive certifications as a negative for the senior professional. They think, "If this guy is so solid, why is he wasting valuable...

Lab Management in Visual Studio 2010 Released

In my experience, there's a lot of animosity and poor communication between Development and QA . It's not that they don't appreciate one another so much as they never seem to stay on the same page. QA : "What's the status on defect #4874?" Dev: "Done." QA : "Done?" Dev: "Yeah, I fixed that Tuesday." QA : "Err, ok . Well where is it? I mean where can I verify it?" Dev: "No clue. I committed it Tuesday. It passed unit tests and built successfully." QA : "Alright. I'll track it down." Invariably , QA speaks with the build manager (if there is one) to find the build in which that defect was repaired. After discovering the correct build, now QA needs an environment stood up to house that build. But wait, the UAT environment is currently testing the next release. It can't be disturbed for another week. At this point, the QA person's blood pressure heads for unsafe levels and the Dice.com bro...