The TFS to TFS Migration tool consists of a Windows Form Application (SmartClient) that communicates with a Windows Communication Foundation (WCF) service. When you install the application, the WCF service will be configured to run inside of a Windows Service. It runs in a Windows Service because most migration jobs are long running operations that run overnight, and the Windows Service can run "headless" meaning that it doesn't require a UI and it also doesn't require a user to be logged in. If you choose, you can also configure the SmartClient to host the WCF service, which wouldn't require the Windows Service. We haven't included steps on how to do this, and this isn't the recommended configuration, but since it is a WCF service there are a number of deployment options that could be implemented.

The Session file editing happens in the SmartClient, there are a set of XML serializeable classes that manipulate the Session configuration file. The Session configuration file is an XML file used by the toolkit, it contains all of the information needed to start a migration job. It contains data to start both WIT and VC jobs, and the schema of the XML document can vary based on the provider that you are dealing with. When using the TFS to TFS Migration tool, you don't need to directly modify the XML document, the UI does it for you.

The WCF Service also manages the Migration Toolkit running sessions. Note that Migration Toolkit sessions are durable, if there is an error that occurs during a session, you can always restart the session and it will pick up where it left off.


Last edited Dec 17, 2009 at 3:16 PM by mmitrik, version 4


No comments yet.