Buildez dans le cloud avec Team Foundation Services

Brian Harry l’a annoncé il y a quelques jours, il est maintenant possible d’utiliser Azure pour l’intégration continue de vos projets. Fini la création de Build Controller, Build Agent, VMs et la maintenance de tout ceci. Le moins qu’on puisse dire est que l’intégration continue devient de plus en plus accessible avec la prochaine génération de logiciels et de services Microsoft. Comment ca marche Pour faire bref, vous avez maintenant la possibilité de cibler un nouveau Build Controller (le “Hosted Build Controller”) dans vos définitions de Build. Lorsque celui-ci est spécifié, toute Build démarrée sera compilée sur le Cloud. En interne, Microsoft possède un pool de VM sur Azure et dès que vous déclenché une Build, une VM est prise dans ce pool et la mécanique d’intégration continue s’effectue “normalement” (création de workspace, récupération des sources, compilations, exécution des tests, indexation des sources, etc.). Une fois la Build terminée la VM est restaurée dans son état “clean” et réintègre le Pool. Vous avez la possibilité d’utiliser un Build Template Custom, comme On-Premise (i.e. “à la maison”). Un seul détail différencie les Build sur le Cloud de leur version On-Premise: la “Drop Location” des binaires compilés. Ce paramètre est historiquement une […]

How to use NuGet with the TFS Version Control

NuGet is really a great tool, something that we’ve missed for many many years in the Microsoft World. But don’t expect it to be at the top yet, which is understandable due to his young age. However it’s improving and the latest version 1.6 just proves it! Two ways to put under Source Control your NuGet package references Let’s briefly describe these methods by starting with the first introduced in the tool

Visualization & Modeling Feature Pack : du neuf pour le C++

Les développeurs C++ ont tendance à être oublié par Microsoft quant il s’agit d’ALM pour les outils client. Il faut dire que l’éditeur s’est penché sur cette discipline après la sortie de .net et celui-ci rend plus facile la réalisation de certains points comme les outils liés à l’architecture. Par exemple lorsque Visual Studio 2010 est sortit, les fonctionnalités Modeling liées à l’architecture étaient réservées au monde de .net. On peut le comprendre car pour développer ce genre de fonctionnalités on pourra se reposer sur le mécanisme de réflexion qu’offre la plateforme .net. Lorsqu’un langage ne permet pas de faire de la réflexion (comme le C++), seul le parsing des sources d’un projet permet d’extraire les données que l’on souhaite analyser. Ceux qui font du C++ savent que parser efficacement un fichier .cpp relève de l’exploit que seul le parseur de votre compilateur préféré sait réellement faire. Voilà pourquoi logiquement (malheureusement) les développeurs natifs ont été privés de ce genre d’outil…jusqu’à ce que le Visualization & Modeling Feature Pack point le bout de son .vsix. Cette extension de Visual Studio est disponible pour les abonnés de la MSDN qui utilisent Visual Studio Ultimate, celle-ci offre bon nombre de nouvelles fonctionnalités […]

VMPrepTool for Lab Manager 2010

Visual Studio 2010 Lab Management est considéré comment le summum de l’intégration continue, il permet d’intégrer dans ce cycle la gestion des machines utilisées pour effectuer les diverses campagnes de test. L’industrialisation de ce procédé à un coût : la configuration. Il faut avouer que dans notre cas, il est élevé: mettre en place Lab Manager demande un certain nombre de compétences, des connaissances et une bonne dose de patience! Ce “problème” ayant été remonté très tôt auprès de Microsoft, l’éditeur de Redmond a entreprit certains chantiers afin de limiter la casse. Un premier outil est sortit depuis quelques mois déjà: le VM Prep Tool, il prend en charge la fastidieuse tâche de créer/préparer une machine virtuelle pour que celle-ci soit prête à l’utilisation par Lab Manager. Concrètement cela consiste à installer les différents agents liés à TFS, les patches et faire des réglages systèmes spécifiques à la gestion des VM. L’outil se télécharge à l’adresse suivante: http://archive.msdn.microsoft.com/vslabmgmt. L’installation est un peu compliquée mais il suffit de suivre le guide inclut dans la page de téléchargement. Deux modes d’utilisation sont disponibles: Self Service Mode: permet de configurer/mettre à jour une VM pour qu’elle soit utilisable par Lab Manager. Admin Mode: […]

Team Build 2010: Comment débugger simplement avec l’indexation des sources!

Team Build 2010 résout fort simplement une problématique que l’on a depuis des lustres: comment débugger facilement une release ancienne ou compilée par une chaine d’intégration continue. Ceux qui savent de quoi je parle l’auront déjà compris: avoir les fichiers sources qui correspondent à ce que vous débuggez peut s’avérer être une tâche difficile voire impossible. La théorie (grosse maille) Pourquoi? Revenons rapidement sur le mécanisme du debugging (mais alors très rapidement): Tout commence par l’Exe que vous débuggez, ainsi que les DLL qu’il utilise: c’est le programme qui est exécuté pas à pas par le débuggeur. Seulement, si vous n’avez pas les sources, vous n’aurez qu’une vue code assembleur de votre programme et même si vous avez passé plusieurs années à faire de l’assembleur, ca ne vous donnera pas pour autant le courage de faire avec! L’utilisateur veut débugger avec les sources qui ont étés utilisées pour compiler le programme. Un type de fichiers existe pour faire le lien entre un fichier binaire (.exe, .dll): c’est le .pdb. Grossièrement le .pdb stocke pour chaque statement de votre langage le fichier source (un .cs par exemple) dans lequel il se trouvait et à quelle ligne. Lors du debugging, lorsqu’un fichier […]

Must Have: Work Item Text Search

Voilà une fonctionnalité qui n’a toujours pas été implémenté dans Visual Studio: rechercher un Work Item à partir du texte qu’il contient dans les principaux champs. La plupart des gens se rabattent sur le Web Access de TFS pour faire ce genre de recherche, ce qui est un peu agaçant. Un outil existe depuis quelque temps: Search Work Items for TFS 2010 (télécharger ici). Celui-ci vous rajoutera une barre d’outils dans Visual Studio qui retournera la liste des Work Item qui contiennent le texte que vous avez spécifié. Par défaut, seuls les champs Title, History et Description sont utilisés pour la recherche.

Must Have: Enfin des dossiers pour classer ses builds!

Une remarque que j’entends souvent lorsqu’on parle de TFS: “Dans Team Explorer, pourquoi on ne peut pas mettre de dossiers pour organiser nos builds???”. C’est vrai que dans un vrai projet le nombre de Build de TeamBuild devient vite conséquent, alors on se retrouve à chercher le bon item parmi les 200 présents, c’est énervant et ca fait désordre! Surtout qu’on ne demande pas la mer à boire non plus, développer cette fonctionnalité ne doit pas prendre des mois et pourtant cela fait des années qu’on l’attend, donc ca agace…

Must Have: TFS Administration Tool

Team Foundation Server se base sur SharePoint pour la partie portail collaborative et SQL Server Reporting Services pour la partie rapport de données. Pour l’utilisateur non avertit, le point d’entré est TFS et les deux autres technologies sont encapsulées par celui-ci. Si bien que lorsque celui-ci administre les permissions dans Visual Studio il s’attend à ce qu’elles soient effectives aussi bien sur TFS que SharePoint et SSRS. Malheureusement ce n’est pas le cas, Microsoft souhaite garder des administrations de permissions distinctes au grand malheurs de beaucoup de gens se retrouvant à faire les mêmes manipulations en trois exemplaires… Mais voilà, un outil Codeplex développé par des passionnés nous apporte la solution! Les Team Foundation Server Administration Tool se charge d’administrer les permissions des trois plateformes en même temps et à partir d’une interface unifiée!

Must Have: Les indispensables de Visual Studio et TFS 2010

Beaucoup de personne qui débutent avec l’offre ALM de Microsoft se contentent d’utiliser le minimum requis, à savoir un TFS 2010 installé du coté serveur et un Visual Studio 2010 du coté client. On ne peut pas les blâmer, on pourrait s’attendre à avoir toutes les fonctionnalités nécessaires pour développer sur à l’aide de cette plateforme et lorsqu’une fonctionnalité manque, notre moteur de recherche favori ne va peut être pas nous retourner la bonne solution voire…trop de solutions! TFS est un peu victime de son succès, son ouverture permet de créer une quantité incroyable d’add-ons, d’applications serveur/clientes si bien qu’on se perd vite. Du plus il n’y a pas vraiment de référentiel qui répertorie tout ce qu’on pourrait utiliser alors quand on débarque, on ne sait pas où mettre les pieds! Je vais donc commencer une série de billets taggés “MustHave” qui fera une brève description des outils jugés incontournables. Mais avant ca, étudions un peu les différentes familles d’outils disponibles rangé par catégorie de distribution. Les différentes contributions Il y a plusieurs familles d’outils gravitant autour de l’écosystème TFS, étudions les principales rapidement: Microsoft – General Distribution Release (GDR) GDR est un type de distribution générique chez Microsoft, ma […]