Problème avec les Builds de TFS 2010 RC après mise à jour depuis la Beta 2

Ce weekend je me suis attelé à l’un de mes projets perso que j’avais, il y a quelques temps, migré vers un TFS 2010 Beta 2. Depuis mon passage sur la RC je n’avais pas encore remis le nez dedans et ce weekend je me suis aperçu qu’une erreur survenait lors de l’exécution des builds.

Voici le détail de l’erreur : File not found: C:\Windows\Microsoft.NET\Frameworkv4.0.21006\MSBuild.exe

L’erreur est assez parlante et facile à vérifier. J’ouvre un windows explorer et effectivement le répertoire v4.0.21006 n’existe plus, puisqu’il correspond au numéro de version du framework .Net 4.0 Beta 2. La version RC quant à elle a le numéro v4.0.30128.

Il suffit donc de modifier ce numéro de version quelque part dans la définition des Builds… Après quelques recherches sur le web, je tombe sur le blog de Tomas Scott qui indique qu’il suffit de recréer une nouvelle collection et un nouveau projet. Cette nouvelle collection se basera sur les templates de Build de la version RC, qui eux pointerons vers le bon chemin du framework. Vous pouvez ensuite récupérer ces templates et les remplacer par vos anciens.

C’est en effet une solution simple et pratique… Sauf que moi je suis encore plus fainéant que ça, il me fallait donc une autre solution. Si ce sont les templates qui merdent, alors autant chercher dans ces templates le chemin de MSBuild.exe et le remplacer par le nouveau. Ou se trouve ce fameux template ? Dans le source control du Team Project, à la racine, il y a un répertoire BuildProcess Template dans lequel on trouve le template DefaultTemplate.xaml.


image

2 possibilités pour le modifier : en mode notepad ou en mode designer de workflow. Si vous le faites en mode je suis un killer je le fais avec notepad, rien de plus simple : faites une recherche de la chaine v4.0.21006 puis remplacer la par v4.0.30128. Vous devriez normalement trouver 2 occurrences.

Nous allons ici ouvrir le fichier dans le designer de workflow. Après double clic sur le fichier, un joli designer s’ouvre et vous permet d’éditer le template du workflow des builds. Si vous l’étudiez un peu, vous retrouverez les étapes que vous voyez passer lorsque vous lancer une build. Il vous faut rechercher l’activité de type MSBuild, Run MSBuild for Project, comme indiqué ci-dessous :


image

Une fois trouvé, il suffit de la sélectionner et d’afficher les propriétés. Dans les propriétés rechercher la propriété ToolPath :


image

Editer la propriété afin de pointer sur la bonne version du framework, à savoir la v4.0.30128 :


image

Recommencer cette opération en recherchant la 2ème activité de type MSBuild et mettre à jour la propriété ToolPath.


image

Et voilà le tour est joué! Un petit checkin sur le fichier DefaultTemplate.xaml et c’est fini. Pour le vérifier, il suffit de relancer la Build et de constater que l’erreur a disparu.

Si seulement tout pouvait être aussi simple dans la vie…

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s