Creating a TFS 2008 with SP1 Slipstreamed ISO image

| 11 Comments

Now that TFS 2008 SP1 is here, time to create a version of the TFS installer media that just contains the bits with SP1 applied.  This is essential for installations targeting SQL Server 2008, but also makes the installation process onto Windows Server 2008 much easier and any installation faster (otherwise you have to install TFS 2008, then apply the service pack).  Note that this is only required for new TFS installations - if you already have TFS installed then you are best of simply running the excellent service pack installer and it will do the business.  Hopefully in a few weeks Microsoft will make a TFS 2008 with SP1 ISO image available, but in the meantime I thought I would write up the process of creating your own as I did mine.

Update:  After creating the patched install of everything and running it, there were errors for the Team Build and Proxy installers.  Talking with fellow MVP Etienne Tremblay this is apparently a known issue, documented as such (d'oh, I should really RTFM) and that slipstreaming of the Build and Proxy stuff is not supported at this present time.  I've therefore updated this post to include the TFS SP1 rather than patched Build and Proxy installations so that you can do it the old fashioned way of installing, then patching...

Pre-requisites

  • TFS 2008 Installation DVD (Workgroup, Trial or Full)
  • TFS 2008 Service Pack 1
  • An iso creating tool (I will use ISORecorder because it is good, free and works on Windows Vista x64).
  • A couple of gigs worth of spare hard disk space to work in.

Slipstreaming the TFS Installation Files

  1. First, you must copy the contents of the TFS installation media onto a temporary folder on your hard drive. In my case I have created a folder called D:\tfs_sp1\source and copied the contents there.
    D:\tfs_sp1\source
  2. Extract the contents of the TFS installer executable by running the following command:
    en_visual_studio_team_system_2008_team_foundation_server_service_pack_1_x86_x64wow.exe /extract:<location>
    Administrator command shell running extract command.
  3. Run the following command to apply the patch to the contents of the main TFS application installation folder (AT):
    msiexec /a <RTM Source Dir>\AT\vs_setup.msi /p TFS90sp1-KB949786.msp TARGETDIR=<SP1 Target Dir>\AT
    Administrator command shell with AT patch command showing
  4. Note that slipstreaming the Build and Proxy installations is not supported at this time.  Also, the sharepoint extensions folder  (wssExt) does not need patching so we can just copy these over.
  5. Because slipstreaming the Build and Proxy is not supported, you will also want to copy over the original service pack .exe file so that you can run it after installing them.
  6. Also, the Team Foundation Server client (Team Explorer) requires Visual Studio 2008 SP1, not the service pack for TFS.  If you installed Team Explorer without the service pack onto a SP1 server then bad things can happen (I've seen class serialization errors but you might see other symptoms) - therefore you might want to exclude the TFC folder from this SP1 disc so that you have to install it from a Visual Studio Team Suite disc instead - hopefully remembering to run Visual Studio SP1 afterwards.  However if, like me, you frequently install Team Explorer onto your TFS servers so that you can manage them directly from the server then you might want to also include the offline installation for Visual Studio on your new ISO image, that way you can quickly get access to the service pack.  To get hold of the offline installer, download the Visual Studio 2008 SP1 iso image, mount the image and then copy the vs90sp1 folder. 
  7. While you are at it, you might as well download the latest copy of the TFS Install Guide.  If you are really fancy you can copy all the files over from the root of the RTM source and edit the setup.ini file to point to the new version of the document (mine is TFSInstall-RTM-v080811.chm).
  8. Now we have a nice little package that contains all the bits we need to install TFS SP1 onto a server.  Mine looks like this: 
    withsp1 (2)
    If we go look inside the AT folder and check the file versions, we can see which assemblies were patched.  The TFS2008 RTM versions of the assemblies were 9.0.21022.8 but the TS 2008 SP1 versions are 9.0.30729.1
    Tools
  9. You could just burn the contents of your SP1 folder to a DVD, but I personally like to have it as an ISO image so that I can easily archive it and point to it from a Virtual PC. To create an ISO image using the excellent ISORecorder is very easy - just right click on your SP1 folder and select "Create ISO Image".
    ISO Recorder

And there you have it. A handy ISO image that should speed up your TFS installations no end.  Happy installing!

11 Comments

You mention the TFS Install Guide, but the link only contains pre-SP1 and SP1Beta install guides. Where can I find a SP1-RTM install guide?

Dave,

The version called "TFSInstall-RTM-v080811.chm" contains the latest SP1 information. The owners of this document have been informed and hopefully they will update the name of it soon to make it less confusing.

Martin.

I am trying to follow the same instructions, the setup quits without any pormpts. I checked the event viewer and its says

"Product: Microsoft Visual Studio 2008 Team Foundation Server - ENU - Update 'KB949786' installed successfully."

But when i try to verify the file version they are indeeed RTM version i.e. 9.0.21022.8 and did not get updated as you noted. I have not yet installed the product as i have to use sql 2008.

Regards,
Sameer Dhoot.
http://intellects.in

Sameer, Are you running on Vista or Windows Server 2008? If so, you will need to run the command prompt with admin rights before it will work correctly. Otherwise when running the msiexec try running it with verbose logging enabled (i.e. "msiexec /Lv logfile.txt /a \AT\vs_setup.msi /p TFS90sp1-KB949786.msp TARGETDIR=\AT")

Command in step 2 is truncated.
And I couldn't find the file. Is it actually the name of SP1 download TFS90sp1-KB949786-ENU.exe ?
Also I found that TFSInstall-SP1-RTM-v080908.chm has similar section
"How to: Integrate the Installation of Team Foundation Server and Service Pack 1"

Hi Martin,

Thanks so much for the detailed explanation of the TFS2008 slipstream build.

I was able to get the Build and TFS client move up to SP1 as well by doing the following:

For TFS Client, I used the VS2008sp1 release, followed your steps, and merged with: VS90sp1-KB945140-X86-ENU.msp. This produced a SP1 version of the TFS client in the TFS folder:

msiexec /l* c:\1\out.txt /a \TFC\vs_setup.msi /p \VS90sp1-KB945140-X86-ENU.msp TARGETDIR=\TFC


For the Build, I followed your steps exactly. When trying to do the setup, it biffed looking for this assembly:

\BUILD\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Web Services\Build\bin\Microsoft.TeamFoundation.Build.Client.dll

So, I went to another machine, installed Build from the standard media, and updated with the service pack. Then I found this assembly in:
C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies

Next, I sorted on version number in that folder, and took all version 9.0.30729.1 files and put them in the \BUILD\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Web Services\Build\bin folder.
Then, I went to yet another machine with no vs2008 components on it, and again tried to install Build, and that time, it installed with no errors.
Sharepoint extensions and the Proxy do not appear to have a patch in the SP1 package that I could see.
So, if you apply the above to your TFS 2008 ISO, you should get a solid SP1 ISO!

when r they going to fix TFS and have a DVD/ or download WITH SP1 applied or another version targeting sql server 2008 outright? I am amazed they don't have this done. Is it that few people use TFS or sql server 2008?

I don't think there are any plans to provide a DVD with SP1 applied. Crazy to me too but there you go.

The crazy thing is They don't have the x64 version of TFS which is so stupid.

By their logic all devellopers enterprise which works with x64 server versions like mine does can't have TFS or if they won't they would have to install a virtual machine or windows a x86 server version which for a develloper enterprise is very bad because we want the x64 server version to deploy x64 programs version and the memory administration made by the x64 operating system is better then the administration made by a x86 server

I have read at microsoft website that TFS 2010 will have a x64 version. Lets wait to see.

Thanks for the tutorial

By the way, what is the tfssp1 folder which you have at the root of your integration?

You'll be glad to hear that TFS 2010 does indeed have x64 support in the early betas.

You need to also follow these important instructions too in addition to what you've laid out. It's a year later and MS still hasn't released TFS 2008 with SP1. such losers...

http://support.microsoft.com/kb/969985

Archives

Creative Commons License
This blog is licensed under a Creative Commons License.