Une des raisons pour laquelle nous avons décidé d'installer un serveur "Team Foundation Server" est la possibilité de mettre en place un serveur de compilation.
L'un des avantages principaux d'un serveur de compilation est de pouvoir automatiser la génération des livrables, en contrôlant un maximum la qualité et de pouvoir assurer un suivi des différentes versions.

Migration des codes sources

La quasi totalité des projets dont je m'occupe ont été développés en utilisant "Visual C++ Version 6". Une mise à jour de l'environnement de développement s'imposait donc. La migration des codes sources n'a pas posé de gros problèmes, il a juste fallu inséré la ligne : "#define _CRT_SECURE_NO_WARNINGS" dans le fichier "stdafx.h" pour éviter un nombre impressionnant de warnings.

Compilation en local

Et hop, premiers essais de compilation en local, tout semble fonctionner. Les sources sont archivées sur le serveur. J'en profite pour faire un petit projet de test pour tester l'environnement, tout est fonctionnel.
Je construis mon premier Build sur le serveur en utilisant le projet de test, et miracle, j'obtiens un magnifique exécutable dans le dossier final.
J'en profite alors pour construire un build contenant plusieurs projet. Tout semble se dérouler correctement, mais les fichiers exécutables ne sont pas généré. J'essaye alors d'augmenter le niveau de log du fichier "Buildlog.txt", mais aucune indication intéressante n'apparait. Les compilations des différents projets se déroulent sans erreurs, ni warning, mais les binaires ne sont pas copiés dans le dossier de livraison.
Après de multiples recherches, il s'avère que certains dossiers de sorties des projets de "Visual C++ Version 6" indiquaient des chemins de type "Release" ou "Debug" et non des variables du type "$OutDir". En fouillant un peu sur le serveur de compilation, les fichiers étaient bien générés, mais la tâche de copie ne trouvaient pas les fichiers.
Il m'a donc juste suffit de reprendre les projets afin de corriger les informations pour enfin obtenir une compilation cohérente.