The new VSTS Rangers project, which entails the TFS Migration and TFS2TFS Project Copy tools, is under construction as outlined in VSTS Rangers Projects – TFS2TFS Project Copy: Artefacts.
In the past the TFS Migration Toolkit initiative has caused a bit of confusion and dissatisfaction as outlined in Brian’s blog and by Bill on the TFS Migration Codeplex site. In essence the immediate strategy includes addressing the reliability, stability and documentation of the toolkit and tools, Version Control and Work Item synchronization, and Microsoft dogfooding.
The core scenarios as outlined on codeplex include consolidation, migration (copying) and synchronisation.
*NOTE 2010-01-20 - the following poster has been updated. Please see TFS Integration Platform – Minor guidance refresh, with updated contact references for details.
To support my adventure of understanding the technology, the battlefield and in particular the boundaries, I have created the quick reference poster, as shown above. The poster looks like a real horror story (to some…) and at a first glance appears complex, however, once explained you should agree that it is a handy quick reference poster. We will, however, break it up into a simpler overall and three (3) scenario specific quick reference posters over time as part of the TFS2TFS Project Copy VSTS Rangers project.
Let us step through the poster and determine if we are all in the same movie:
- Do you wish to upgrade your Team Foundation Server (TFS) server from 2005 or 2008, to 2008 or 2010?
- If yes, you are in the wrong movie in terms of the migration scenarios and tools. As specified on the poster, you should be consulting the TFS administration and installation manuals and consider the standard upgrade scenario for Team Foundation Server (TFS).
- If no, go to step 2 “Consolidate”
- Would you like to consolidate team projects from two or more TFS servers to one TFS Server?
- If yes …
- We need to ask ourselves whether we are consolidating TFS 2005 or 2008 servers to TFS 2008 or TFS 2010. Although not recommended an all-TFS 2005 consolidation is supported in theory.
- If yes, we can consider the TFS Migration tools if, and only if, we are consolidating version control and work item tracking data only. All other data, i.e. SharePoint artefacts, will remain behind on the source servers.
- If not, are we looking at TFS 2010 to TFS 2010 consolidations? If yes, we should just plan to move Team Project Collections using the standard scenario if feasible.
- Alternatively if, and only if, we are consolidating version control and work item tracking data only we can consider the TFS Migration Tools.
- If no, go to step 3 “Migrate”
- Would you like to migrate a TFS or non-TFS project to a TFS Server?
- If yes …
- Firstly, do you need history? If not, consider copying just the tip of the iceberg, the latest version control and work items, into TFS and ejecting from this movie.
- Are you migrating from TFS Server to TFS Server?
If yes, consider whether you need version control or work item tracking data only, in which case the TFS Migration Tools are feasible. However, the recommended scenario will continue to be to consult your TFS administration and installation manuals, considering the standard scenario for moving a TFS Server to another TFS Server.
Note that if you just have a few team projects, a clone (standard move + instanceinfo.exe) followed by deleting the unwanted projects, gives you a full fidelity copy of the projects copied.
- Are you migrating from VSS, Rational ClearCase, RationalClearQuest or HP QualityCenter to TFS?
If yes, consult your TFS Administration Guide and the standard migration scenarios, as well as searching for migration solutions on http://msdn.microsoft.com/en-us/default.aspx.
- Otherwise we are in the fall through bucket and can consider re-using or developing custom adapters for the TFS Migration Tools, which is beyond the scope of this poster and which will be dealt with in a separate customization poster.
- If no, go to step 4.
- Would you like to synchronise (mirror) a non-TFS or TFS Server with another non-TFS or TFS Server?
- If yes and if, and only if, we are consolidating version control and work item tracking data only, we can consider the TFS Migration Tools for a TFS<—>TFS synchronisation or consider using the TFS Migration Tools SDK to develop custom adapters.
- If no, you should refer to you product documentation for synchronization features in your product. HP QualityCenter, for example, offers synchronization features. Alternatively we can consider re-using or developing custom adapters for the TFS Migration Tools again.
The quick reference poster is not perfect and will probably change over the next few months, until TFS 2010 ships. We hope, however, that it will allow you to better understand the available and recommended scenarios, should the need for migration crop up in your environment.
I emphasise that the above quick reference poster and accompanying verbiage is my personal understanding of the migration story, the associated scenarios and the new VSTS rangers project. As mentioned, both the quick reference poster and the description thereof may be tweaked and modified in future.
In the interim I would like to thank Bill Essary and Bijan Javidi for their patience and insight, which has lead to the quick reference poster, text and my understanding of the scenarios. My African elephant in a migration crystal glass warehouse type approach to getting to grips with this initiative, has lead to many concerns and stop-the-bus discussions … but I believe the effort, the sweat and the occasional tears were worth it q;-) Bill, for the next project I will switch from an African elephant, to an African Rhino … or perhaps an African Water Buffalo … the latter of which is difficult to stop once on a charge q;-)
What are your thoughts on the migration scenarios?