TFS 2008 Service Pack 1 Bug Fixes

Brian Harry has published a list of bug fixes that shipped in TFS 2008 Service Pack 1. What I also found interesting from this list is the breakdown of where different bugs were detected or reported.

Hands-Free TFS 2008 Install

Grant Holliday posted an almost hands-free TFS 2005 installation guide and I have been going through the same process for TFS 2008 so I thought I’d point out a few differences to be aware of as well as some amendments I made to Grant’s original process:

Part 2 - Building the ISO

  • The obvious changes:
    • Replace TFS 2005 with TFS 2008.
    • Remove TFS 2005 SP1 Quiesce Hotfix and TFS 2005 SP1.
    • Replace Team Plain with Team System Web Access.
    • Replace Visual Studio Team Editions / Team Suite 2005 with Visual Studio Team Editions / Team Suite 2008.
    • Remove Team Suite 2005 SP1.
  • I pre-extracted SQL Server 2005 Service Pack 2 to reduce the time taken to install:
    • SQLServer2005SP2-KB921896-x86-ENU.exe -x <TargetDir>
  • WSS is no longer required separately because it is automatically installed by TFS 2008.
  • Added TFS 2008 Power Tools.
  • Added TFS 2008 Installation Guide.
  • Added Office 2007 and Project 2007 (for building clients).
  • Edit TFS08\SQL2005ForATDT.ini and update the service account credentials.

My resulting directory structure was:

image

Part 3 - Installing Team Foundation Server unattended

  • I updated Grant’s script:
    • To reflect the changes above.
    • Added an INSTALLROOT environment variable in case you aren’t installing from D:\.
    • Added a TFSBUILDS user to run Team Build as.
    • Created users locally rather than in the domain (this was my requirement, if you want domain users simply add the /DOMAIN switch to the net user commands).

SET INSTALLROOT=D:\
SET TFSSERVICEPW=strongpassword
SET TFSREPORTSPW=strongpassword
SET TFSBUILDSPW=strongpassword
:: ############# User accounts
net user TFSSERVICE %TFSSERVICEPW% /ADD /EXPIRES:NEVER
net user TFSREPORTS %TFSREPORTSPW% /ADD /EXPIRES:NEVER
net user TFSBUILDS %TFSREPORTSPW% /ADD /EXPIRES:NEVER
ntrights -u TFSSERVICE +r SeInteractiveLogonRight
ntrights -u TFSREPORTS +r SeInteractiveLogonRight
ntrights -u TFSBUILDS +r SeInteractiveLogonRight
pause
:: ############# SQL 2005
:: # Run SQL2005 setup unattended
start /wait %INSTALLROOT%SQL05\Servers\setup.exe /qb /settings %INSTALLROOT%TFS08\SQL2005ForATDT.ini
pause
:: # Stop SQLBrowser service before SP2 install
sc stop SQLBrowser
sc config SQLBrowser start= auto
:: # Run SQL2005 SP2 unattended
start /wait %INSTALLROOT%SQLSP2\hotfix.exe /quiet /allinstances
:: # NOTE: I had an issue where after the service pack was applied the service account no longer had sysadmin access and this had to be rectified before continuing.
pause
:: ############ TFS Single-Server install
start /wait %INSTALLROOT%TFS08\at\setup.exe
pause
:: ############ VSTS install
start /wait %INSTALLROOT%VSTS08\setup.exe
pause
:: ############ TFS Team Explorer
start /wait %INSTALLROOT%TFS08\tfc\setup.exe
pause
:: ############ Team Build install
start /wait %INSTALLROOT%TFS08\BUILD\setup.exe
pause
:: ############ Team System Web Access
msiexec /i %INSTALLROOT%TFS08WA\TeamSystemWebAccess.msi /passive
pause
:: ############ Team System Power Tools
msiexec /i %INSTALLROOT%TFS08PT\tfpt.msi /passive
pause

Visual Studio Hotfixes

Brian Harry has blogged about the MSDN Code Gallery web site which not only contains numerous code samples and add-ins but is also used to publish the Visual Studio hotfixes.

Upgraded to TFS Service Pack 1

I decided that I’d put off the upgrade to TFS Service Pack 1 for long enough and did the upgrade on our production server yesterday.

The good news is that it went very smoothly and the only hiccup I encountered was actually related to installing SQL Server Service Pack 2 (which we chose to do at the same time). The problem was simply that there wasn’t enough space available on the system drive to complete the installation.

For those of you that are interested the process I followed is:

  1. Take a snapshot of the virtual machine.
  2. Stop IIS (iisreset /stop).
  3. Perform a full backup of all of the SQL Server databases.
  4. Start IIS (iisreset /start)
  5. Install Windows Powershell (required by the TFS Best Practice Analyzer).
  6. Run the TFS Best Practices Analyzer.
  7. Install the Quiescing GDR on the TFS server and the TFS proxy.
  8. Install TFS Service Pack 1 on the TFS server.
  9. Install TFS Service Pack 1 on each of the build machines.
  10. Install TFS Service Pack 1 on the TFS proxy.
  11. Test.

I also performed a couple of extra steps:

  1. Install SQL Server Service Pack 2.
  2. Install Team System Web Access.
  3. Modified the Work Item Changed XSL to link to Team System Web Access.
  4. Install hotfixes for the 2 issues we’ve come across.
  1. FIX: Error message when you perform a merge operation in Visual Studio 2005 Team Foundation Server: “TF14087: Cannot undelete because not all of the deletion is being undeleted”.
  2. FIX: When the Microsoft.TeamFoundation.VersionControl.Adapter adapter processes a changeset, the adapter may fail in Visual Studio 2005 Team Foundation Server.
  • Restricted SQL Server to 1 Gb memory.
    1. Because we’re using a single server configuration we’re testing whether there will be a performance improvement by restricting SQL Server’s memory to ensure that there is memory left for the application “tier” and the OS.