Partager via


Personnaliser votre modèle de processus de génération

Si vous avez besoin que les performances de votre processus de génération soient supérieures à celles du modèle par défaut, vous pouvez personnaliser le modèle de processus de génération pour qu'il suive vos propres instructions Windows Workflow Foundation (WWF). Vos instructions peuvent exécuter du code .NET Framework implémenté dans les objets CodeActivity. Vous pouvez exécuter des activités intégrées à Team Foundation Build (TFBuild), qu'elles soient proposées par des tiers ou, si besoin, créées par vous-même.

Conseil

Si votre fonctionnalité de processus de génération personnalisée peut être écrite dans un fichier de commandes Windows ou un script PowerShell, vous pouvez télécharger votre script et l'exécuter dans le cadre de votre processus de génération.Cette approche peut s'avérer plus rapide et plus simple que la création d'un processus de génération personnalisé.Consultez Exécuter un script dans votre processus de génération.

  • Démarrer une solution de processus de génération personnalisé et créer un modèle

  • Utiliser un modèle personnalisé dans votre définition de build

  • Obtenir des réponses à des questions courantes

Démarrer une solution de processus de génération personnalisé et créer un modèle

Avant d'implémenter vos instructions, vous devez extraire une copie du modèle par défaut de votre serveur Team Foundation et l'ajouter à un projet de code Visual Basic.

Important

Vous travaillez dans un Icône Gitprojet d'équipe Git?Prévoyez-vous de télécharger des binaires d'activité du processus de génération ?Dans ce cas, le stockage des fichiers binaires (notamment les nombreuses révisions des fichiers volumineux) peut énormément augmenter la taille de votre référentiel Git.Nous vous conseillons de stocker les fichiers binaires de votre processus de génération personnalisé dans un référentiel distinct du code à partir duquel vous générez votre application.Vous pouvez créer un projet d'équipe distinct pour vos processus de génération, ou créer un référentiel supplémentaire dans votre projet d'équipe existant.

  1. Connectez-vous (raccourci clavier : Ctrl+0, C) au projet d'équipe (et si nécessaire, au Icône Git référentiel Git) dans lequel vous envisagez de stocker la source du processus de génération.

  2. Créez un projet de code (raccourci clavier : Ctrl+Maj+N).

    Plus précisément, créez une solution (par exemple, BuildProcessSource) contenant un projet de code de bibliothèque d'activité de workflow Visual Basic (par exemple, Modèles). Ajoutez la solution à un nouveau répertoire sous le contrôle de version dans un emplacement compréhensible.

    Icône TFVC Exemple TFVC : C:\Users\YourName\Source\Workspaces\FabrikamTFVC\BuildProcessTemplates\

    Icône Git Exemple Git : C:\Users\YourName\Source\Repos\BuildProcesses\

    Créer un projet de code qui contient le nouveau modèle

    Pourquoi ai-je besoin d'un projet de code pour modifier mon modèle ?

  3. Sur la page de builds (raccourci clavier : Ctrl+0, B), créez ou modifiez une définition de build.

    Nouvelle définition de build ou Modifier la définition de build

  4. Téléchargez une copie du modèle par défaut. Enregistrez votre nouveau modèle dans le même dossier que celui contenant le projet de code que vous avez créé précédemment dans cette procédure

    Icône TFVC Exemple TFVC : C:\Users\YourName\Source\Workspaces\FabrikamTFVC\BuildProcessTemplates\BuildProcessSource\Templates

    Icône Git Exemple Git : C:\Users\YourName\Source\Repos\BuildProcesses\BuildProcessSource\Templates

    Lien Télécharger sous l'onglet Processus de définition de build

    Boîte de dialogue Enregistrer sous

  5. Dans l'Explorateur de solutions (raccourci clavier : Ctrl+Alt+L), ajoutez le modèle à votre projet Modèles.

    Ajouter le fichier du modèle de processus de build au projet

    Boîte de dialogue Ajouter un élément existant

    Vous n'avez pas besoin du fichier Activity1.xaml. Si vous le souhaitez, vous pouvez le supprimer.

  6. Définissez la propriété Action de génération de votre modèle sur Contenu.

    Définir Build Action par Contenu

  7. Ajoutez les références suivantes au code de votre projet de test Modèles :

    Comment puis-je ajouter ces références au projet de code ?

    Enregistrer le projet de code.

  8. Implémentez un message « Hello World ! ». Vous pouvez ainsi être sûr que le modèle est opérationnel une fois qu'il est archivé et exécuté. Pour cela, faites glisser une activité de WriteBuildMessage dans votre flux de travail et définissez sa propriété BuildMessageImportance sur Microsoft.TeamFoundation.Build.Client.BuildMessageImportance.High.

    Activité WriteBuildMessage ajoutée au modèle

  9. Enregistrez le modèle et téléchargez votre nouvelle solution. Archivez les modifications en attente si vous travaillez dans Icône TFVC TFVC (raccourci clavier : Ctrl+0, P), ou validez-les (raccourci : Ctrl+0, G) et envoyez-les si vous travaillez dans Icône Git Git.

    Téléchargement des modifications à l'aide de TFVC ou Git

Utiliser un modèle personnalisé dans votre définition de build

Après avoir téléchargé un modèle de processus de génération personnalisé dans votre projet d'équipe, comme expliqué ci-dessus, vous pouvez utiliser le modèle à partir de vos définitions de build.

  1. Sur la page de builds (raccourci clavier : Ctrl+0, B), créez ou modifiez une définition de build.

  2. Sous l'onglet Processus de la définition de build, sélectionnez Afficher les détails Afficher les détails, puis sélectionnez Nouveau.

    Définition de build, onglet Processus, bouton Nouveau

  3. Après avoir choisi Nouveau :

    • TFVC : entrez ou recherchez le chemin d'accès au modèle sur votre serveur Team Foundation Server.

    • Git : entrez ou recherchez le chemin d'accès au modèle sur votre ordinateur de développement.

  4. Après avoir spécifié le chemin d'accès au modèle, vous pouvez le sélectionner dans la liste.

    CustomTemplate sélectionné dans la définition de build

  5. Si vous créez une définition de build, sélectionnez la solution que vous générez et spécifiez l'emplacement intermédiaire, ainsi que toutes les autres options dont vous avez besoin. Consultez Créer ou modifier une définition de build. Lorsque vous avez terminé, enregistrez la définition de build.

  6. Dans la page de builds (raccourci clavier : Ctrl+0, B), mettez la build en file d'attente.

    Mise en file d'attente d'une build à partir de la page Builds

  7. Une fois la génération terminée, affichez les résultats pour vérifier que votre flux de travail personnalisé s'est exécuté comme prévu.

    Le message « Hello World! » figure dans le journal de génération

Q et R

Q : J'ai été bloqué par le système car je ne possède pas l'autorisation requise.Comment puis-je l'obtenir ?

R : Référence des autorisations pour Team Foundation Server

Q : Pourquoi ai-je besoin d'un projet de code pour modifier mon modèle ?

R : Vous devez modifier les modèles à partir d'un projet de code, car :

  • Des problèmes peuvent survenir lorsque vous essayez de modifier un modèle en dehors du contexte d'un projet de code.

  • Des problèmes peuvent survenir, sauf si vous développez votre activité de processus de génération dans la même solution que les modèles de processus de génération. De cette façon, lorsque vous devez utiliser l'une de vos activités dans votre modèle de processus, l'activité est disponible dans la boîte à outils du concepteur de flux de travail. Toutefois, vous devez conserver le code source pour vos activités dans un projet de code différent de celui qui contient vos modèles de processus de génération. Consultez Utiliser et développer des activités de processus de génération personnalisé.

Q : Comment puis-je ajouter les références dont j'ai besoin pour utiliser le flux de travail TFBuild ?

R : Utilisez le gestionnaire de références pour ajouter des références à

Affichez les références du projet de code et ouvrez le gestionnaire de références.

Références du projet de code du modèle personnalisé

Boîte de dialogue Gestionnaire de références

Accédez à C:\Program files (x86)\Microsoft Visual Studio 12,0\Common7\IDE\ReferenceAssemblies\v2.0, puis sélectionnez et ajoutez :

Boîte de dialogue Sélectionner les fichiers à référencer

Boîte de dialogue Gestionnaire de références

Q : Puis-je partager un modèle sur différents projets d'équipe ?

R : oui. Vous pouvez enregistrer un modèle avec plusieurs projets d'équipe. Cette fonction signifie que vous pouvez partager un processus de génération entre tout projet d'équipe dans la collection de projets d'équipe qui contient votre modèle.

Q : Si je modifie mon modèle, qu'arrive-t-il aux définitions de build qui l'utilisent ?

R : Si vous devez modifier un modèle, vous devez prévoir d'examiner toutes les définitions de build qui sont basées sur le modèle et de les corriger après avoir apporté vos modifications au modèle. Dans le cas contraire, vos définitions de build peuvent échouer ou fonctionner de manière inattendue.

Q : Que se passe-t-il si je supprime mon modèle de processus de génération ?

R : Si vous décidez de supprimer un modèle de processus de génération, assurez-vous au préalable de rechercher et de supprimer toutes les définitions de build basées sur le modèle. Lorsque vous supprimez le modèle, toutes les définitions de build restantes basées sur le modèle ne fonctionneront plus.

Q : Qu'est-ce qui provoque des erreurs dans mon processus de génération personnalisé ?

R : Quelques causes courantes d'erreurs :

  • TF215097 : peut apparaître en cas d'attribut obligatoire manquant dans votre activité personnalisée ou si vous tentez de modifier votre modèle dans le même projet de code qui contient vos activités personnalisées.

  • Erreur MSBuild XC1014 : peut apparaître si vous ne définissez pas l'action de génération de votre modèle sur Contenu.

Si vous obtenez l'une des erreurs ci-dessus, veillez à ne pas manquer une des étapes des procédures ci-dessus.

Vous trouverez également cette rubrique utile : Diagnostiquer des problèmes de build.

Q : Qu'est-ce que Windows Communication Foundation ?Comment l'utiliser ?

R : Windows Workflow Foundation.

Q : Comment puis-je obtenir des données de variable d'environnement ?

R : Utilisez les données d'environnement à partir d'un processus de génération personnalisé

Q : Où puis-je en savoir plus sur les activités intégrées ?

R : Activités Team Foundation Build

Que dois-je faire si les activités intégrées ne répondent pas à mes besoins ?

R : Développez votre propre activité de processus de génération personnalisé.

Q : Où puis-je obtenir des modèles, des activités de flux de travail et des scripts ?

R : Community TFS Build Extensions

Q : Où puis-je obtenir davantage d'informations sur le développement de processus de génération personnalisés ?

R : Réponse organisée : personnalisez votre processus Team Foundation Build