0 Comments
  • Posted in:
  • TFS

Why oh why?

The most common reason for this particular error message is you have a customized Bug Work Item Type which fields do not match what is expected in the TFSBuild.proj file.

Local or Global Fix?

There are several ways you can solve this problem which can be applied to individual build definition TFSBuild.proj or as a TFSBuild.proj template change to prevent the error from happening again when you create a new build definition. 

To change the template, make your changes to the following file: C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\1033\TFSBuild.projNOTE: You need to make the changes on the Build Manager (whoever is responsible to create the build definition) machine and not on the TFS server.  As I said above, do this only when you want subsequent (any new) Build Definition to be fixed automatically.

To change each individual build, navigate to the [Insert your Team Project name]\TeamBuildTypes\[Insert build definition name here] in your Source Control Explorer and change the TFSBuild.proj file for that particular build.  This should let you pick and choose where to apply the fix.

Options

  1. If you don't care about creating the work item at all as part of your build failure, just add <SkipWorkItemCreation>true</SkipWorkItemCreation> inside the <PropertyGroup> node.  This will prevent the Bug Work Item creation when the build failed.

  2. If you want TFS Build to create the task in your custom "Bug" Work Item, make sure to map or change the field definition in the <WorkItemFieldValues>...</WorkItemFieldValues> node in the TFSBuild.proj file.

  3. If you want TFS Build to use a different Work Item template (and not your custom "Bug" Work Item), you can create a specialized Buld Failure Work Item by importing the standard Bug Work Item from an out of the box TFS process template such as the MSF Agile one and change the the <WorkItemType>Bug</WorkItemType> node in the TFSBuild.proj file to <WorkItemType>Bug Failure</WorkItemType> (Replace Bug Failure with whatever you name your imported Bug work item as).

Additional References

Recommendation

  • Install TFS Power Tools on your development environment.  It comes with Process Template Editor VS add-in for doing visual Work Item customization instead of the regular XML edit method using witimport / witexport command line tools.

0 Comments
  • Posted in:
  • TFS

I found the latest TFS 2008 Installation Guide document (dated September 8th, 2008) a bit lacking in that it walked you through the entire single server installation but forgot one crucial step!  I hope the team will update the documentation soon to reflect this one important step that will save you tons of time trying to figure out what’s going on if you’re not familiar w/ how Windows Server 2008 and SQL Server 2008 work together, especially in regard to Reporting Service.

The installation will go through smoothly enough when you follow the guide.  Your best bet is to follow the Checklist: Single Server Team Foundation Server Installation page in the Installation Guide.

Just make sure you have TFS 2008 and TFS 2008 SP1 slipstreamed before you proceed with the install.  You need to do this if you are using SQL Server 2008.  To do this, follow the steps described in the Installation Guide titled: How to: Integrate the installation of Team Foundation Server and Service Pack 1 or follow the Fresh Install instruction in this blog post.

If you plan to use SQL Server 2008 SP1, make sure to make the necessary changes described in this KB or you won’t  be able to proceed with the TFS installation.

Some instructions in the Installation Guide are a little confusing.  For example, it talks about different types of accounts necessary for the installation, but during the installation of TFS, it will blindly tell you to use the same account (Step 12 and 14 in the How to: Install Team Foundation Server page).  In this case, you will only need 2 accounts really, which is TFSSETUP to run the installation and TFSSERVICE to run all the services including WSS and Reporting Service rendering TFSREPORTS and WSSSERVICE account useless / unnecessary.  Just give TFSSERVICE the Allow log on locally and Log in as a service permission and you’re set to go.

One common error that you are going to get once you are done with TFS installation steps is a reporting service error stated below:

“The permissions granted to user ‘…' are insufficient for performing this operation. (rsAccessDenied)”

You’ll get this when trying to access the report service from the browser (i.e. http://localhost/reports).

Now, this is the missing step which is not in the installation guide (I hope they’ll add this in soon)…You need to configure report server for local administration on Windows Server 2008 properly to get rid of the rsAccessDenied error.  To do that, followthis MSDN article.  Once you are done with this final step, your TFS 2008 should be working just fine on W2K8 and SQL 2008.

So, in summary:

  1. Please make sure your W2K8 installation is 32-bit!!!
  2. Please make sure TFSSETUP / its equivalent account is a member of the local machine Administrators group.
  3. Please login as the TFSSETUP / equivalent account before you do the installation (after it’s assigned as local administrator).
  4. Please make sure to slipstream your TFS 2008 media with TFS 2008 SP1 before the installation
  5. Make necessary changes per KB 969985 if you are going to use SQL 2008 SP1
  6. Properly configure Report Server for Local Administration post TFS installation

As a side note, although installing TFS 2008 on single server 64 bit windows, such as W2K8 R2 that is just released, is not currently supported by Microsoft, apparently it is doable.  See this blog post for detail.