mardi 30 décembre 2008

Team Foudation Server et PowerShell

PowerShell est un outil manifique et les API de Team Foundation Server aussi. Alors pourquoi pas ce servir de l'un pour utiliser l'autre.

PsTFS est une initiative que j'ai pris afin de manipuler Team Foundation Server via PowerShell.

Avec ces CMDLET il est facillement possible:

  • De visualiser les membres d'un projet ou de chaque projet
  • D'ajouter une liste de membres dans des groupes de projet
  • De lister les projets
  • De visualiser les wokitems
  • D'exécuter des requetes de Workitem
  • D'ajouter un ou plusieurs fichiers à un projet
  • D'ajouter un ou plusieurs répertoires avec le contenu (récursivité)
  • D'effectuer des merges

Et bien d'autre encore.

Liste des CmdLet

CmdLetDescription
Add-FilesPermet d'ajouter des fichiers
Add-MemberProjectPermet d'ajouter des membres à des groupes d'un projet
Add-ProjectPermet d'ajouter un nouveau projet au server Team Foundation Server
Get-AllProjectPermet de récupérer les information de tous les projets
Get-ChangesetPermet de récupérer les changeset pour un projet ou l'ensemble des projets
Get-MemberProjectPermet de récupérer la liste des membres d'un projet
Get-PendingStatusPermet de récupérer les fichiers en attente d'archivage
Get-TFSPermet de ce connecter à un serveur TFS
Get-WIPermet de récupérer un workitem depuis son ID ou son URI dans une version spécifique
Get-WIQueryPermet de récupérer les requêtes stockées dans un projet
Get-WIsPermet d'exécuter une requête
Remove-MemberProjectPermet de supprimer des membres d'un projet
Set-MergePermet d'effectuer des merges entre branche


L'outil sera disponible dans les prochains jours, pour ne pas le louper, abonnez vous au RSS de mon blog.

mardi 9 décembre 2008

Migration de WorkItem d'un projet à un autre

Dans le cadre d'une migration, j'ai du migrer les workitem d'un projet sur un nouveau projet qui se trouve être sur un autre serveur TFS.
N'ayant pas trouvé d'outils me permettant cette manipulation j'ai donc développé mon propre outil.

Mon outil, nommé "MigrationWI", permet de migrer des workitems:
  • D'un projet vers un autre projet sur le même serveur
  • D'un projet vers un autre projet sur un autre serveur

L'outil permet de migrer tout le contenu du WI mise à part :

  • Les dates
  • Les itérations
  • Les zones
  • Le statut (Le workitem migrer est en état "Actif")
  • La raison (Le workitem migrer est en raison "Nouveau")

Pour le moment il gère également la migration

  • Des liens de type Hypertexte
  • Des documents attachés
Il est possible de migrer:
  • Par type de workitem (Bug, Tache ...)
  • De choisir seulement de migrer certain WI
Voici des captures écrans

Connexion aux deux serveurs:


Récupération des projets sur le serveur d'origine:


Récupération des types de workitem, et sélection de ceux à migrer:


Choix des workitems à migrer:


Connexion au serveur destinataire et choix du projet destinataire:



Information de fin de transfert



Vu sur le projet destinataire:

Vu sur le WI nouvellement transferé (avec les liens hypertext):



Fenêtre de log sur les opérations effectuées:


Si vous souhaitez le programme il vous suffit de me contacter n.choulant@evaluant.com et je vous l'enverrais.

Bonne migration.

vendredi 5 décembre 2008

TFS 2008 sur Windows Server 2008 et SQL Server 2008

Rentrant tout juste de ma mission d'installation de Team Foundation Server 2008 sur un environnement Windows Server 2008 et SQL Server 2008, je tenais à donner mon feedback sur ce type d'installation.

En un mot je dirais "C'est que du bonheur", bon d'accord il y a plus d'un mot mais c'est vraix.

Il n'y a aucun souci, Team Foundation Server 2008 avec son SP1, s'install parfaitement et avec SQL Server 2008 il gagne en performence.

Pour preuve voici les captures ecran :










Installation de SQL Server 2008











Instalation réussit de TFS 2008.










Ouverture de Team Explorer 2008 SP1 sur Windows Server 2008.









SI vous souhaitez être accompagné dans cette installation contactez moi : n.choulant@evaluant.com

Je tiens à préciser qu'il n'y a aucune erreur caché ou warning...