This is the English version of my post in Italian about the “little bugs” I’ve found in the upgrade guide and the steps I’ve followed to successfully upgrade my server. Thanks to Aldo.NET the official Upgrade Guide has been updated with the hints I’ve posted. Blogs: what a powerful thing !! this communication links was impossible some years ago !
As mentioned by Paolo, TFS RC has been released. The RC version will be identical to (except by the numbers of bugs fixed) the RTM version. The Installation Guide mentioned by Rob Caron in his post, is 42 pages long and I strongly recommend to follow them to successfully complete your upgrade: I’ve finished migrating my server on February 8th so I’ve worked with a functional RC for 7 days; by the way it’s much faster than the Beta3 Refresh. The installation guide is very complete but contains a few bugs which are highlighted below.
I list below the important steps and the key points for a Single Server upgrade:
Key points:
Any customization must be manually ported: last section of the guide.
Custom Reports probably will not work on the RC/RTM version because the cube structure has changed: it is necessary to manually edit them to adapt them to the new structure.
There are 2 new versions for the Process Templates – MSF for Agile and MSF for CMMI. After the upgrade I found myself with 4 versions (both the old and the new ones). The new ones are identified by the number 4.0.
Pay attention to customized queries: some fields have changed and it is necessary to adapt the query syntax.
You will have to recreate your project Alerts.
Preliminary verification steps [optional]
1) Create 2 projects: 1 with MSF for Agile on 1 with MSF for CMMI
2) Create a new project for each custom template (if you have any)
3) Check for each project if you can view and create new Work Items
4) If everything looks ok, delete the projects
You can also use the command line tool TFSDeleteProject.exe /server:name /force projectname. Check for possible errors during the deletion.
Important
ALWAYS check in all your code before upgrading
Important: it is not in the Guide! You have to Merge or Undo any open Shelveset or Branch if you have pending changes
This is the error message you get if you leave a Shelveset with pending changes during step 4 of this mini-guide:
---------
Connecting to SQL Server robtfs Success
Verify if core team foundation databases exist Success
Fetching Server location for WorkItemAttachments Found - ROBTFS
Fetching Server location for Warehouse Found - ROBTFS
Verifying connection to WIT Attachment server - ROBTFS Success
Verifying connection to Warehouse server Success
Verifying connection to OLAP Server Success
Verifying if WI Attachments DB exist on ROBTFS Success
Verifying if TFSIntegration DB is Beta3 Success
Verifying if TFSWorkItemTracking DB is Beta3 Success
Verifying if TFSWorkItemTrackingAttachments DB is Beta3 Success
Verifying if TFSBuild DB is Beta3 Success
Verifying if TFSVersionControl DB is Beta3 Success
Verify WIT DB for reference name incompatibility Success
Verify for CMMI Field name clash Success
Checking pending branches and merges.
ERROR: We have detected the following pending merges or branches changes in the
server. Please undo these operations in order to upgrade:
Workspace/Shelveset, Owner, Workspace/Shelveset Name, Machine
Workspace, ROBTFS\robertob, PEPPE, PEPPE
------
To check if you have any pending changes, you have to open a project/solution and check (by right clicking) the View Pending Changes window to see if anything is in there. You can of course Undo or Check-in or Unshelve each file separately
Then close Visual Studio and any other client (e.g. Team Explorer)
Upgrade
0) Write down the existing project you want to upgrade: you’ll need them often during the upgrade steps
1) Download the TFSUpgradeTool
You can get it from here http://go.microsoft.com/fwlink/?LinkID=60341
2) Extract its content in a folder
3) go to the folder you just extracted the content to
4) execute TFSUpgrade servername /verify
This tool checks for the upgrade prerequisites: if everything is OK you should get this list:
-----
C:\temp\tfsugrade>tfsupgrade robtfs /verify
Verifying Upgrade Prerequisites
DB ServerName : robtfs
Log File : TFSUpgrade-632750041165352416.txt
Connecting to SQL Server robtfs Success
Verify if core team foundation databases exist Success
Fetching Server location for WorkItemAttachments Found - ROBTFS
Fetching Server location for Warehouse Found - ROBTFS
Verifying connection to WIT Attachment server - ROBTFS Success
Verifying connection to Warehouse server Success
Verifying connection to OLAP Server Success
Verifying if WI Attachments DB exist on ROBTFS Success
Verifying if TFSIntegration DB is Beta3 Success
Verifying if TFSWorkItemTracking DB is Beta3 Success
Verifying if TFSWorkItemTrackingAttachments DB is Beta3 Success
Verifying if TFSBuild DB is Beta3 Success
Verifying if TFSVersionControl DB is Beta3 Success
Verify WIT DB for reference name incompatibility Success
Verify for CMMI Field name clash Success
Checking pending branches and merges. Success
Fetching Report Server location Found - http://ROBTFS/ReportServer/ReportService
.asmx
Verification of DB's complete
-----
5) Uninstall in this sequence
5.1) Microsoft Visual Studio Team Foundation Server - ENU
5.2) Microsoft Visual Studio Team Explorer - ENU (if you have it installed on the server)
If you have installed Visual Studio Team Foundation Server (Build) on the same machine, you have to uninstall it now. The Installation guide does not spell out this step, but you have to uninstall the Build Server if it’s on the same TFS machine. Instead, if your Team Build machine is separate from the server you can do this step later
Later on we’ll see in detail the upgrade procedure.
6) Backup the following databases
TfsActivityLogging
TfsBuild
TfsIntegration
TfsVersionControl
ReportServer
ReportServerTempDB
STS_Config
STS_servername_# (where servername is the name of the server and # is a number)
TfsWarehouse
TfsWorkItemTracking
TfsWorkItemTrackingAttachments (in realtà questo DB non è cambiato come struttura)
7) Use the TFSUpgrade again, this time without the /verify switch
TFSUpgrade.exe servername
You should get a log like this one (it might differ of course depending on your project names).
On my server there were only two real projects, SalamiManagement and ComeurOnline.Maui: the first one had some Alerts set on the Builds and as I’ve told you before you need to set them up again after the upgrade.
------
C:\temp\tfsugrade>tfsupgrade robtfs
Are you sure you want to upgrade TeamFoundation databases on robtfs to RTM? (Y/N
):y
Beginning upgrade from Beta3 to RTM
DB ServerName : robtfs
Log File : TFSUpgrade-632750048623076096.txt
Connecting to SQL Server robtfs Success
Verify if core team foundation databases exist Success
Fetching Server location for WorkItemAttachments Found - ROBTFS
Fetching Server location for Warehouse Found - ROBTFS
Verifying connection to WIT Attachment server - ROBTFS Success
Verifying connection to Warehouse server Success
Verifying connection to OLAP Server Success
Verifying if WI Attachments DB exist on ROBTFS Success
Verifying if TFSIntegration DB is Beta3 Success
Verifying if TFSWorkItemTracking DB is Beta3 Success
Verifying if TFSWorkItemTrackingAttachments DB is Beta3 Success
Verifying if TFSBuild DB is Beta3 Success
Verifying if TFSVersionControl DB is Beta3 Success
Verify WIT DB for reference name incompatibility Success
Verify for CMMI Field name clash Success
Checking pending branches and merges. Success
Fetching Report Server location Found - http://ROBTFS/ReportServer/ReportService
.asmx
Verification of DB's complete
Attempting to delete reports from report server
Creating reporting proxy Success
Fetching projects to delete
Deleting : /SalamiManagement... Success
Deleting : /ComeurOnline.Maui... Success
Reports Deleted successfully
Reports deleted successfully
Upgrading database TFSWorkItemTracking
Removing TFSExecRole on TFSWorkItemTracking Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep1StoredQueries Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep2WITypeUsages Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep3ValidateDateRule Succes
s
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep4FriendlyNameUpdate1 Suc
cess
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep4FriendlyNameUpdate2 Suc
cess
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep5CMMIChanges Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep6DataUpdates Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep7DropObjects Success
Stamping Database TFSWorkItemTracking with RTM Version Success
Upgrading database TFSBuild
Removing TFSExecRole on TFSBuild Success
Running TFSBuild upgrade scripts Success
Stamping Database TFSBuild with RTM Version Success
Upgrading database TFSVersionControl
Removing TFSExecRole on TFSVersionControl Success
Running TFSVersionControl upgrade scripts - Step1 Success
Running TFSVersionControl upgrade scripts - Step2 Success
Running TFSVersionControl upgrade scripts - Step3 Success
Running TFSVersionControl upgrade scripts - Step4 Success
Running TFSVersionControl upgrade scripts - Step5 Success
Running TFSVersionControl upgrade scripts - Step6 Success
Stamping Database TFSVersionControl with RTM Version Success
Upgrading database TFSWorkItemTrackingAttachments
Already up to date
Upgrading database TFSIntegration
Removing TFSExecRole on TFSIntegration Success
Running TFSIntegration upgrade scripts Success
Stamping Database TFSIntegration with RTM Version Success
Converting subscriptions to use SID.
The following subscriptions were deleted as the user could not be found in the d
atabase:
event_type,expression,subscriber,schedule,delivery_type,address,classification
CheckinEvent,"Artifacts/Artifact[@TeamProject = 'SalamiManagement']" <> null,PEP
PE\robertob,0,0,roberto@robertobrunetti.net,SalamiManagement:CheckinEvent
BuildStatusChangeEvent,"TeamProject" = 'SalamiManagement',PEPPE\robertob,0,0,rob
erto@robertobrunetti.net,SalamiManagement:BuildStatusChangeEvent
Success
Dropping TFSActivityLogging database Success
Dropping database TFSWarehouse; Will be recreated during setup Success
Dropping OLAP database TFSWarehouse; Will be recreated during setup Success
Creating stored procedure GetTFSVersion Success
UPGRADE COMPLETED SUCCESSFULLY
-----
8) Update the Sharepoint databases (the DB names get updated)
We will use the TFSUpgradeAT.exe tool
Here is the upgrade log where you can see the new names. After a first check you are asked if you want to upgrade.
C:\temp\tfsugrade>tfsupgradeat
Verifying if IIS://localhost/W3SVC/1/Root exists Success
Fetching Sharepoint Config Database & Server location Success
Verifying Connection to config Db Success
Verifying if http://localhost is extended Success
Fetching Content Db details Success
Verifying Connection to content Db Success
Verifying App pool Names Success
All Prereqs satisfied
Upgrade will perform the following actions
Rename Sharepoint Config DB STS_Config to STS_Config_TFS
Rename Sharepoint Content DB STS_ROBTFS_1 to STS_Content_TFS
Clone Apppool 'WSS7c9Adm' to 'TFSWSSAdmin'
Clone Apppool 'TFWSS7c9' to 'TFSWSS'
Change AppPool for http://robtfs:17012/ to 'TFSWSSAdmin'
Change AppPool for http://localhost/ to 'TFSWSS'
Do you want to proceed with the upgrade? (Y/N):y
Renaming Config database STS_Config to STS_Config_TFS on server ROBTFS Success
Renaming Content database STS_ROBTFS_1 to STS_Content_TFS on server ROBTFS Success
Updating content db name in config db Success
Updating site to use new config db Success
Cloning App Pool WSS7c9Adm to TFSWSSAdmin Success
Cloning App Pool TFWSS7c9 to TFSWSS Success
Changing App Pool for root Success
Changing App Pool for _layouts Success
Changing App Pool for _vti_bin Success
Changing App Pool for _wpresources Success
Changing App Pool for Admin Site Success
UPGRADE COMPLETED SUCCESSFULLY
------
9) Download the ISO image containing the setup from MSDN, extract it and locate the folder KB913393.
Run the executable you find there: NDP20-KB913393-X86.exe
10) Install TFS RTM (or RC)
10.1) Login with the same account you used to install the Beta3 version (if you have done it by the instructions it should be TFSSetup and password TFSSetup)
10.2) Run Setup – Select "Install Team Foundation Server" – then Single-Server Installation
10.3) Accept all defaults folders during the setup (I have tried to change them and the setup crashed)
10.4) Service accounts: use TFSService (same as Beta3 Refresh). Note: this account is used also for the Application Pool.
10.5) Reporting account: use TFSReports - password TFSReports. Same as Beta3 Refresh
11) Update the DataWarehouse
11.1) Check that the service TFSServerScheduler is runining. If it isn’t, start it manually
11.2) Call the WarehouseController web service: in IE go to http://servername:8080/warehouse/v1.0/warehousecontroller.asmx, select the GetWarehouseStatus method and click Invoke. The service should return “Idle”. Leave this IE window open and in onother instance of IE invoke the Run method from the same web service. This method should return “true” and tells you the update has started (It could last an hour). To check the progress, you can refresh the IE window where GetWarehouseStatus is running. If you are fast enough, you will see (in order): ProcessingAdapters (schema modification), ProcessingOlap (schema modification), ProcessingAdapter (pulling data), ProcessingOlap (processing the cube) e Idle at the very end. Wait until you get the Idle state before continuing with the next step.
12) Install Team Explorer
13) If you have created Build Types for your projects you need to upgrade them:
from the command prompt, locate the directory containing the upgrade package (see the beginning of this post) and execute TFSBuildUpgrade.exe servername. This was my log: in my case the SalamiManagement project got updated because it had a build type BuildAllDebug defined, while the ComeurOnline.Maui project was not updated because it did not have any build type.
C:\temp\tfsugrade>tfsbuildupgrade robtfs
Please validate the upgraded TfsBuild.proj files for any discrepancies. This too
l will only upgrade the files from Beta 3 to RTM format.
Press [Enter] key to continue .
Starting the upgrade of build types for Team Project SalamiManagement ...
Converting the build type : BuildAllDebug.
Done converting the build type BuildAllDebug for Team Project SalamiManagement.
Starting the upgrade of build types for Team Project ComeurOnline.Maui ...
Team Project ComeurOnline.Maui does not have any build type defined.
Conversion of build type definitions is done. Please refer the log file [C:\Documents and Settings\TFSSetup\Local Settings\Temp\TfsUpgradeLog.txt] for more details.
14) the structure of the Process Template and of the Reports has changed.
Even the standard reports need to be updated. This set of steps needs to be repeated for each project from the Team Explorer (you can do it in a single shot ... selecting every project from the window…step 14.2)
14.1) Connect to Team Foundation Server.
14.2) Select all projects and click OK
14.3) From the Team menu, select TFS Settings and then Process Template Manager
14.4) Download the new version of the project template you want to use. In my case MSF for Agile...v4.0 which is the new version of the template I had used to create the projects. Step not called out in the docs: set the new version as the default one
14.5) Download the new template(s) that you wish to use in your existing projects and save them in a folder. A subfolder gets created for each template.
14.6) From the command prompt run TFSUploadReports.exe /s servername /p projectname /t:folderWhereYouDownloaded\templateFolder (the one indicated in bullet 14.5 as the subfolder for each template). Bug on the Installation Guide: you need to specify the /s parameter (as mentioned here) to pass the name of the server
14.7) Repeat step 14.6 for all the projects where you want to use the new reports
C:\temp\tfsugrade>tfsuploadreports /s robtfs /p salamimanagement /t "C:\temp\Pro
cessTemplate\MSF for Agile Software Development - v4.0"
Uploading : Work Item with Tasks done.
Uploading : Work Item with TestResults done.
Uploading : Work Items done.
Uploading : Builds done.
Uploading : Reactivations done.
Uploading : Remaining Work done.
Uploading : Bug Rates done.
Uploading : Bugs by Priority done.
Uploading : Project Velocity done.
Uploading : Quality Indicators done.
Uploading : Unplanned Work done.
Uploading : Related Work Items done.
Uploading : Scenario Details done.
Uploading : Actual Quality vs Planned Velocity done.
Uploading : Tests Passing With Active Bugs done.
Uploading : Tests Failing Without Active Bugs done.
Uploading : Regressions done.
Uploading : Bugs Found Without Corresponding Tests done.
Uploading : Load Test Detail done.
Uploading : Load Test Summary done.
C:\temp\ProcessTemplate is the folder where I had downloaded the new version of the template (step 14.4) and, as you can see, contains the subfolder for the template MSF for Agile...v4.0.
The installation of the Single Server is over if you are not using Team Build or Team Proxy.
Obviously the VS 2005 clients "Team Something" (Developer, Architect, Tester) can’t connect to the new TFS because the paths to the web services are different. You need to reinstall Team Explorer on the client machines.
15) To upgrade or to install from scratch Team Foundation Build
The installation guide requires you to uninstall Team Build now but, as we have seen, if you have Team Build on the same machine as the Team Foundation Server you had to do it in a pervious step
15.1) Login as TFSSetup
15.2) In the Build subfolder of the CD/ISO run Setup
15.3) use the default directories
15.4) Use TFSService - TFSService as the service account (you have to use the same account used to run the TFS service)
15.5) If you are using a separate machine from the TFS one, setup.exe also creates the entries in the Windows Firewall to allow communications
16) Team Foundation Proxy (if you have used a proxy)
16.1) Backup your configuration: you just need to save the proxy.config file from the folder <x:\program files\Microsoft Visual Studio 2005 Team Foundation Server\Web Services\VersionControlProxy>. Also verify what’s the folder name for the cache – it is needed in step 16.5
16.2) Uninstall the Beta3 Refresh Proxy
16.3) Install KB913393 as suggested during step 9
16.4) Install the Proxy RC o RTM: its setup is in the Proxy folder inside the CD/ISO
16.5) Use the same path you used in Beta3 Refresh for the cache
16.6) Overwrite the proxy.config file with the one you saved in step 16.1
Just a final note: this new installation “blocks” very often the VS 2005 client during a check-in. The error is “Object non set to an instance of an object”: unfortunately VS doesn’t respond to keyboard anymore (the mouse is still working) because there is a “strange modal” dialog left open…unfortunately this dialog is hidden (really invisible) so we cannot press the “OK” button to close it.
I’ve found that disabling Check-In Policy (from Team Project Settings) the error goes away.
Hope useful
Come accennato da Paolo, è uscito TFS RC. La versione RC sarà identica (bug risolti a parte) rispetto alla versione RTM. La guida indicata da Rob Caron nel suo post contiene 42 pagine di doc da seguire per effettuare l'upgrade: ho terminato adesso la migrazione del mio server e sembra funzionare bene, tra l'altro molto più veloce della Beta3 Refresh. La guida contiene però qualche "bug" che ho evidenziato in questo post. Riporto i passi corretti da seguire e le "cose" importanti per un'upgrade di una installazione Single Server:
Cose importanti:
Le eventuali customizzazioni vanno importate a mano
I Custom Report probabilmente non funzioneranno nella RC/RTM in quanto è cambiata la struttura del cubo: occorre modificarli a manno per adattarli alla nuova struttura
Ci sono due nuove versioni dei template MSF for Agile e MSF for CMMI. Dopo l'upgrade mi sono trovato entrambe le versioni quindi 4 template. Quelli nuovi hanno la versione 4.0 come identificativo
Occhio alle query personalizzate: alcuni campi sono cambiati e quindi occorre riaggiornare la struttura della query
Le Alert sui progetti vanno ricreate
Operazioni preliminari di controllo funziomento [opzionali]
1) Creare un progetto MSF for Agile e uno MSF for CMMI
2) Creare un nuovo progetto basato su ogni Custom Template (se li avete creati)
3) Controllare per ogni progetto se è possibile vedere e creare Work Item
4) Se tutto funge, cancellare i progetti appena creati
Volendo si può usare dal command prompt TFSDeleteProject /server:name /force nomeprogetto. Controllare eventuali errori durante la cancellazione
Importante
In ogni caso, eseguire il check-in di tutto i sorgenti prima di fare l'upgrade.
Importante: non è scritto nella guida ! Fare il Merge o l'Undo di qualunque Shelveset o Branch aperto che abbia delle modifiche aperte.
Questo il messaggio di errore se resta aperto uno ShelvSet:
---------
Connecting to SQL Server robtfs Success
Verify if core team foundation databases exist Success
Fetching Server location for WorkItemAttachments Found - ROBTFS
Fetching Server location for Warehouse Found - ROBTFS
Verifying connection to WIT Attachment server - ROBTFS Success
Verifying connection to Warehouse server Success
Verifying connection to OLAP Server Success
Verifying if WI Attachments DB exist on ROBTFS Success
Verifying if TFSIntegration DB is Beta3 Success
Verifying if TFSWorkItemTracking DB is Beta3 Success
Verifying if TFSWorkItemTrackingAttachments DB is Beta3 Success
Verifying if TFSBuild DB is Beta3 Success
Verifying if TFSVersionControl DB is Beta3 Success
Verify WIT DB for reference name incompatibility Success
Verify for CMMI Field name clash Success
Checking pending branches and merges.
ERROR: We have detected the following pending merges or branches changes in the
server. Please undo these operations in order to upgrade:
Workspace/Shelveset, Owner, Workspace/Shelveset Name, Machine
Workspace, ROBTFS\robertob, PEPPE, PEPPE
------
Per verificare eventuali pending changes occorre aprire un progetto e verificare da (Tasto Dx) View Pending Changes cosa è "rimasto aperto". Per ogni file si può fare undo oppure ovviamente check-in o Unshelve
Chiudere poi Visual Studio e qualunque altro client (Team Explorer ad esempio)
Upgrade
0) Segnarsi i progetti esistenti da aggiornare: ci serviranno molte volte durante i passi
1) Scaricare il TFSUpdradeTool
Si trova quì http://go.microsoft.com/fwlink/?LinkID=60341
2) Estrarre il contenuto dell'exe in una directory
3) Andare nella directory appena estratta
4) Eseguire TFSUpgrade nomeserver /verify
Questa utility verifica i prerequisiti per poter fare un upgrade: se va tutto bene dovreste trovare questo elenco:
-----
C:\temp\tfsugrade>tfsupgrade robtfs /verify
Verifying Upgrade Prerequisites
DB ServerName : robtfs
Log File : TFSUpgrade-632750041165352416.txt
Connecting to SQL Server robtfs Success
Verify if core team foundation databases exist Success
Fetching Server location for WorkItemAttachments Found - ROBTFS
Fetching Server location for Warehouse Found - ROBTFS
Verifying connection to WIT Attachment server - ROBTFS Success
Verifying connection to Warehouse server Success
Verifying connection to OLAP Server Success
Verifying if WI Attachments DB exist on ROBTFS Success
Verifying if TFSIntegration DB is Beta3 Success
Verifying if TFSWorkItemTracking DB is Beta3 Success
Verifying if TFSWorkItemTrackingAttachments DB is Beta3 Success
Verifying if TFSBuild DB is Beta3 Success
Verifying if TFSVersionControl DB is Beta3 Success
Verify WIT DB for reference name incompatibility Success
Verify for CMMI Field name clash Success
Checking pending branches and merges. Success
Fetching Report Server location Found - http://ROBTFS/ReportServer/ReportService
.asmx
Verification of DB's complete
-----
5) Disinstallare in ordine
5.1) Microsoft Visual Studio Team Foundation Server - ENU
5.2) Microsoft Visual Studio Team Explorer - ENU (se l'avevate installato sul server)
Se avete installato Visual Studio Team Foundation Server (Build) sulla stessa macchina disinstallatela adesso. La guida al setup non menziona questo passo, ma la disinstallazione è obbligatoria se usate il Build Server sulla stessa macchina TFS. Se invece la macchina Build è diversa non occorre effettuare adesso la disinstallazione vedremo più avanti la procedura di upgrade
6) Backuppare i seguenti database
TfsActivityLogging
TfsBuild
TfsIntegration
TfsVersionControl
ReportServer
ReportServerTempDB
STS_Config
STS_servername_# (where servername is the name of the server and # is a number)
TfsWarehouse
TfsWorkItemTracking
TfsWorkItemTrackingAttachments (in realtà questo DB non è cambiato come struttura)
7) Utilizzare nuovamente TFSUpgrade senza l'opzione /verify
TFSUpgrade.exe nomeserver
Dovreste ottenere un log come questo (ovviamente voci diverse in base ai progetti esistenti).
Sul mio server erano presenti due progetti reali, SalamiManagement e ComeurOnline.Maui: il primo aveva impostate le alert per sulle Build che come abbiamo accennato devono essere ricreate dopo l'upgrade.
------
C:\temp\tfsugrade>tfsupgrade robtfs
Are you sure you want to upgrade TeamFoundation databases on robtfs to RTM? (Y/N
):y
Beginning upgrade from Beta3 to RTM
DB ServerName : robtfs
Log File : TFSUpgrade-632750048623076096.txt
Connecting to SQL Server robtfs Success
Verify if core team foundation databases exist Success
Fetching Server location for WorkItemAttachments Found - ROBTFS
Fetching Server location for Warehouse Found - ROBTFS
Verifying connection to WIT Attachment server - ROBTFS Success
Verifying connection to Warehouse server Success
Verifying connection to OLAP Server Success
Verifying if WI Attachments DB exist on ROBTFS Success
Verifying if TFSIntegration DB is Beta3 Success
Verifying if TFSWorkItemTracking DB is Beta3 Success
Verifying if TFSWorkItemTrackingAttachments DB is Beta3 Success
Verifying if TFSBuild DB is Beta3 Success
Verifying if TFSVersionControl DB is Beta3 Success
Verify WIT DB for reference name incompatibility Success
Verify for CMMI Field name clash Success
Checking pending branches and merges. Success
Fetching Report Server location Found - http://ROBTFS/ReportServer/ReportService
.asmx
Verification of DB's complete
Attempting to delete reports from report server
Creating reporting proxy Success
Fetching projects to delete
Deleting : /SalamiManagement... Success
Deleting : /ComeurOnline.Maui... Success
Reports Deleted successfully
Reports deleted successfully
Upgrading database TFSWorkItemTracking
Removing TFSExecRole on TFSWorkItemTracking Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep1StoredQueries Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep2WITypeUsages Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep3ValidateDateRule Succes
s
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep4FriendlyNameUpdate1 Suc
cess
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep4FriendlyNameUpdate2 Suc
cess
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep5CMMIChanges Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep6DataUpdates Success
Running WorkItemTracking upgrade - UpgradeWIDatabaseStep7DropObjects Success
Stamping Database TFSWorkItemTracking with RTM Version Success
Upgrading database TFSBuild
Removing TFSExecRole on TFSBuild Success
Running TFSBuild upgrade scripts Success
Stamping Database TFSBuild with RTM Version Success
Upgrading database TFSVersionControl
Removing TFSExecRole on TFSVersionControl Success
Running TFSVersionControl upgrade scripts - Step1 Success
Running TFSVersionControl upgrade scripts - Step2 Success
Running TFSVersionControl upgrade scripts - Step3 Success
Running TFSVersionControl upgrade scripts - Step4 Success
Running TFSVersionControl upgrade scripts - Step5 Success
Running TFSVersionControl upgrade scripts - Step6 Success
Stamping Database TFSVersionControl with RTM Version Success
Upgrading database TFSWorkItemTrackingAttachments
Already up to date
Upgrading database TFSIntegration
Removing TFSExecRole on TFSIntegration Success
Running TFSIntegration upgrade scripts Success
Stamping Database TFSIntegration with RTM Version Success
Converting subscriptions to use SID.
The following subscriptions were deleted as the user could not be found in the d
atabase:
event_type,expression,subscriber,schedule,delivery_type,address,classification
CheckinEvent,"Artifacts/Artifact[@TeamProject = 'SalamiManagement']" <> null,PEP
PE\robertob,0,0,roberto@robertobrunetti.net,SalamiManagement:CheckinEvent
BuildStatusChangeEvent,"TeamProject" = 'SalamiManagement',PEPPE\robertob,0,0,rob
erto@robertobrunetti.net,SalamiManagement:BuildStatusChangeEvent
Success
Dropping TFSActivityLogging database Success
Dropping database TFSWarehouse; Will be recreated during setup Success
Dropping OLAP database TFSWarehouse; Will be recreated during setup Success
Creating stored procedure GetTFSVersion Success
UPGRADE COMPLETED SUCCESSFULLY
-----
8) Aggiornare i database di Sharepoint (si aggiornano i nomi dei db)
L'utility da usare è TFSUpgradeAT.exe
Ecco il log dell'upgrade dove potete trovare i nuovi nomi rispetto ai vecchi. Dopo una prima verifica viene richiesto se effettuare l'upgrade.
C:\temp\tfsugrade>tfsupgradeat
Verifying if IIS://localhost/W3SVC/1/Root exists Success
Fetching Sharepoint Config Database & Server location Success
Verifying Connection to config Db Success
Verifying if http://localhost is extended Success
Fetching Content Db details Success
Verifying Connection to content Db Success
Verifying App pool Names Success
All Prereqs satisfied
Upgrade will perform the following actions
Rename Sharepoint Config DB STS_Config to STS_Config_TFS
Rename Sharepoint Content DB STS_ROBTFS_1 to STS_Content_TFS
Clone Apppool 'WSS7c9Adm' to 'TFSWSSAdmin'
Clone Apppool 'TFWSS7c9' to 'TFSWSS'
Change AppPool for http://robtfs:17012/ to 'TFSWSSAdmin'
Change AppPool for http://localhost/ to 'TFSWSS'
Do you want to proceed with the upgrade? (Y/N):y
Renaming Config database STS_Config to STS_Config_TFSon server ROBTFS Success
Renaming Content database STS_ROBTFS_1 to STS_Content_TFS on server ROBTFS Succe
ss
Updating content db name in config db Success
Updating site to use new config db Success
Cloning App Pool WSS7c9Adm to TFSWSSAdmin Success
Cloning App Pool TFWSS7c9 to TFSWSS Success
Changing App Pool for root Success
Changing App Pool for _layouts Success
Changing App Pool for _vti_bin Success
Changing App Pool for _wpresources Success
Changing App Pool for Admin Site Success
UPGRADE COMPLETED SUCCESSFULLY
------
9) Nell'immagine ISO del setup scaricabile da MSDN, una volta scompattata, trovate la directory KB913393.
Lanciare l'eseguibile che trovate all'interno: NDP20-KB913393-X86.exe
10) Installare TFS RTM (o RC)
10.1) Loggarsi con l'account usato per il setup iniziale della Beta3 (se avete seguito alla lettera la guida all'installazione della Beta3 Refresh dovrebbe essere TFSSetup con password TFSSetup)
10.2) Lanciare il Setup - Scegliere "Install Team Foundation Server" - Poi Single-Server Installation
10.3) Accettare i default per le directory di installazione (ho provato a cambiarle ed è crashato il setup)
10.4) Account per il Servizio: usate TFSService (lo stesso della Beta3 Refresh). N.B. Questo account serve anche per gli Application Pool.
10.5) Account per Reporting: usare TFSReports - password TFSReports. Sono sempre quelli della Beta3 Refresh
11) Aggiornare il Data Warehouse
11.1) Verificare che il servizio TFSServerScheduler sia attivo. Altrimenti parlo partire
11.2) Invocare il web service WarehouseController: Da IE andare su http://nomeserver:8080/warehouse/v1.0/warehousecontroller.asmx, scegliere il metodo GetWarehouseStatus e fare invoke. Il servizio deve resituire Idle. Lasciare aperta questa finestra di IE e dallo stesso web service invocare il metodo Run. Questo metodo deve restituire true e indica la partenza (può durare anche un'oretta) della fase di aggiornamento. Per controllare l'andamento, dalla finestra del metodo GetWarehouseStatus è possibile, facendo refresh, verificare i passi durante il processo. Troverete in questo ordine (se siete veloci) ProcessingAdapters (schema modification), ProcessingOlap (schema modification), ProcessingAdapter (pulling data), ProcessingOlap (processing the cube) e Idle alla fine. Attendere la risposta Idle prima di proseguire con il prossimo passo.
12) Installare Team Explorer
13) Se avete creato Build dei vari progetti occorre fare l'upgrade:
Dal command prompt, directory del package di upgrade (vedi inizio di questo post) eseguire TFSBuildUpgrade.exe nomeserver. Questo il mio log: nel mio caso il progetto SalamiManagement viene aggiornato in quanto ha la build BuildAllDebug attiva, mentre il progetto ComeurOnline.Maui non ha build definite quindi non viene aggiornato.
C:\temp\tfsugrade>tfsbuildupgrade robtfs
Please validate the upgraded TfsBuild.proj files for any discrepancies. This too
l will only upgrade the files from Beta 3 to RTM format.
Press [Enter] key to continue .
Starting the upgrade of build types for Team Project SalamiManagement ...
Converting the build type : BuildAllDebug.
Done converting the build type BuildAllDebug for Team Project SalamiManagement.
Starting the upgrade of build types for Team Project ComeurOnline.Maui ...
Team Project ComeurOnline.Maui does not have any build type defined.
Conversion of build type definitions is done. Please refer the log file [C:\Docu
ments and Settings\TFSSetup\Local Settings\Temp\TfsUpgradeLog.txt] for more deta
ils.
14) I template di progetto e report sono stati modificati come struttura.
Anche i report standard devono essere aggiornati. Questa serie di passi va fatta per ogni progetto esistente dal Team Explorer (anche in un colpo solo...)
14.1) Connettersi al Team Foundation Server.
14.2) Selezionare tutti i progetti e premere OK
14.3) Nel menù Team scegliere TFS Settings e poi Process Template Manager
14.4) Fare Download sulla nuova versione del project template da usare. Nel mio caso MSF for Agile...v4.0 che è appunto la nuova versione del template che avevo usato per la creazione dei progetti. <b>Passo non segnato: marcare come default la nuova versione</b>
14.5) Scaricare il o i nuovi template che si intendono applicare ai progetti esistenti e salvarli in una directory. Viene creata una sottodirectory per ogni template.
14.6) Dall'ormai famoso command prompt lanciare TFSUploadReports.exe /s nomeServer /p nomeProgetto /t:directorySceltaPerIlDownload\directoryTemplate (quella indicata nel punto 14.5 come sottodirectory per ogni template). Errore nella guida: non è indicato il parametro /s che invece è obbligatorio e indica il nome del server
14.7) Ripetere lo step 14.6 per tutti i progetti in cui si intendono usare i nuovi report
C:\temp\tfsugrade>tfsuploadreports /s robtfs /p salamimanagement /t "C:\temp\Pro
cessTemplate\MSF for Agile Software Development - v4.0"
Uploading : Work Item with Tasks done.
Uploading : Work Item with TestResults done.
Uploading : Work Items done.
Uploading : Builds done.
Uploading : Reactivations done.
Uploading : Remaining Work done.
Uploading : Bug Rates done.
Uploading : Bugs by Priority done.
Uploading : Project Velocity done.
Uploading : Quality Indicators done.
Uploading : Unplanned Work done.
Uploading : Related Work Items done.
Uploading : Scenario Details done.
Uploading : Actual Quality vs Planned Velocity done.
Uploading : Tests Passing With Active Bugs done.
Uploading : Tests Failing Without Active Bugs done.
Uploading : Regressions done.
Uploading : Bugs Found Without Corresponding Tests done.
Uploading : Load Test Detail done.
Uploading : Load Test Summary done.
C:\temp\ProcessTemplate è appunto la directory in cui ho scaricato la nuova versione del template (passo 14.4) che, come si nota, contiene la sottodirectory con il progetto MSF for Agile...v4.0.
L'installazione Single Server è terminata se non volete usare Team Build o Team Proxy.
Ovviamente i client VS 2005 "Team Qualcosa" (Developer, Architect, Tester) non si possono più collegare al TFS nuovo in quanto sono cambiati anche i path dei web service. Occorre reinstallare Team Explorer sulle macchina client.
15) Per fare l'upgrade o l'installazione da zero (se non avevate usato il tutto in Beta3 Refresh) del Team Foundation Build
<b>La guida riporta erroneamente la disinstallazione del motore di build adesso, ma come abbiamo visto se era installata sulla stessa macchina di TFS occorreva farlo molto prima</b>
15.1) Loggarsi come TFSSetup
15.2) Nella sottodirectory Build del CD/ISO lanciare Setup
15.3) Utilizzare la directory di default
15.4) Utilizzare TFSService - TFSService come account per il servizio (In ogni caso usare lo stesso account usato per far girare il servizio TFS)
15.5) Se usare una macchina diversa rispetto a TFS il setup crea le entry nel Windows Firewall per consentire la comunicazione
16) Team Foundation Proxy se avete usato un proxy occorre
16.1) Fare il backup della configurazione: è sufficiente copiare il file proxy.config dalla dir x:\program files\Microsoft Visual Studio 2005 Team Foundation Server\Web Services\VersionControlProxy. Controllare anche il nome della directory per la cache: serve per il passo 16.5
16.2) Disinstallare il Proxy beta3
16.3) Installare la KB913393 come indicato nel passo 9
16.4) Installare il Proxy RC o RTM: il setup si trova nella directory Proxy del CD/ISO
16.5) Usare lo stesso path per la cache utilizzata in Beta3
16.6) Ricopiare il file proxy.config salvato al punto 16.1