Travailler avec des espaces de travail de build
Comme vous avez besoin d' l'espace de travail sur votre ordinateur de développement (dev) pour développer votre application, vous devez spécifier l'espace de travail de l'agent de build utilise pour générer et tester votre application.
Que voulez-vous faire ?
Spécifiez un espace de travail pour votre définition de build
Consultez l'exemple d'une définition de l'espace de travail de génération
Copiez les données entre les espaces de travail
Comprendre comment un espace de travail de génération fonctionne
Spécifiez un espace de travail pour votre définition de build
Lorsque vous définissez votre processus de génération, vous devez appliquer certaines meilleures pratiques lorsque vous spécifiez l'espace de travail.
Inclure tous les dossiers requis.
Prenez soin d'inclure tous les dossiers qui contiennent les fichiers requis par votre processus de génération.Par exemple, si vous ajoutez une autre solution au champ Éléments à générer sous l'onglet de Processus, vous devrez peut-être ajouter un mappage de remplacement à l'espace de travail.
Inclure uniquement les dossiers requis.
Mappage avec une valeur ÉtatActif uniquement les dossiers requis par votre processus de génération requiert.Si un sous-dossier d'un dossier mappé contient les fichiers que le processus de génération ne requiert pas, mappez- le avec une valeur ÉtatMasqué.Dans de nombreux cas, lorsque vous créez une définition de build, le dossier racine d'un projet d'équipe est mappé dans l'espace de travail.Dans cette configuration, l'agent de build télécharge tous les fichiers du dossier de contrôle de version de votre projet d'équipe.Si ce dossier contient beaucoup de données, votre build peut gaspiller des ressources système de génération et ralentir votre processus de génération en téléchargeant un grand nombre de données qu'il ne requiert pas.
Lorsque vous supprimez des éléments du champ Éléments à générer sur l'onglet processus, recherchez les mappages que vous pouvez supprimer dans l'espace de travail.
Conseil |
---|
Pour plus d'informations sur l'optimisation un espace de travail, consultez l' Optimiser vos espaces de travail. |
Utilisez le jeton $(SourceDir) pour mapper un dossier de serveur à un dossier local dans le sous-répertoire \Sources.
Dans la plupart des cas, l'emplacement le plus adapté pour les fichiers sources sur l'agent de build se situe sous le sous-répertoire ..\Sources dans le répertoire de travail.Vous pouvez spécifier cet emplacement en utilisant le jeton $(SourceDir) dans la zone Dossier Agent de build.
Notez la façon dont l'espace de travail affecte une définition de build qui est déclenchée par des archivages.
Si vous avez affecté au déclencheur de la définition de build la valeur Intégration continue, Builds enchaînées ou Archivage contrôlé, les dossiers de serveur que vous mappez sont liés au processus de génération.Voici un exemple.Un développeur archive des modifications apportées à un dossier.Le dossier est mappé dans l'espace de travail d'une définition de build et cette définition de build est un déclencheur Archivage contrôlé .Les modifications sont bloquées jusqu'à ce que le processus de génération terminé.
Exemple de l'espace de travail de définition de build
L'ingénieur de compilation Roberto a créé la définition de build Storefront Nightly.
Cette définition de build génère deux solutions : $/Core/Controllers/Controllers.sln et $/Core/Viewers/Viewers.sln.Par conséquent, elle doit mapper les deux dossiers qui contiennent ces solutions, les projets qu'ils contiennent, et tous les autres fichiers requis.
Pour que le processus de génération soit plus efficace, Roberto exclut un dossier contenant des fichiers de documentation non requis par son processus de génération : $/Core/Viewers/Docs.
Les solutions dépendent de fichiers binaires d'une bibliothèque de composant d'une autre société.Ces fichiers binaires sont protégés par un mécanisme propriétaire qui exige qu'ils soient placés dans un dossier physique spécifique : c:\adatum\widgets.
Copiez les données entre les espaces de travail
Vous pouvez gagner du temps en copiant les mappages d'un espace de travail dans un autre.
Pour copier les mappages de l'un de vos espaces de travail
Choisissez Copier un espace de travail existant.
Dans la boîte de dialogue Sélectionner un espace de travail à copier, copiez les mappages de l'espace de travail.
Pour copier les mappages d'un autre espace de travail de définition de build ou d'un autre espace de travail de membre d'équipe
Effectuez l'une des étapes suivantes :
Pour copier les mappings depuis un autre espace de travail de définition de build, ouvrez la définition de build, puis cliquez sur l'onglet Espace de travail.
Pour copier les mappages d'un autre espace de travail de membre d'équipe, demandez au membre de choisir Fichier dans la barre de menu et de cliquer sur Contrôle de code source, puis sur Espaces de travail.Sélectionnez l'espace de travail, puis cliquez sur Modifier.
Ouvrez le menu contextuel d'une ligne dans la table Dossiers de travail , puis choisissez Sélectionner tout.
Ouvrez le menu contextuel d'une ligne dans la table Dossiers de travail , puis choisissez Copier.
Créez un fichier texte, collez le contenu du Presse-papiers dans ce fichier texte, puis enregistrez -le.
Créez une définition de build ou modifiez une définition de build existante qui est la cible des mappages que vous copiez.
Pour plus d'informations, consultez Créer une définition de build ou Modifier une définition de build.
Sous l'onglet Espace de travail , ouvrez le menu contextuel pour une ligne dans la table Dossiers de travail , puis choisissez Coller.
Le cas échéant, adaptez les mappages de sorte que l'agent de build puisse les utiliser.Assurez-vous notamment que la valeur de la zone Dossier Agent de build est correcte et qu'elle contient le jeton $(SourceDir), si nécessaire.
Comprendre comment un espace de travail de génération fonctionne
Pendant le processus de génération, l'agent de build procède à des compilations et effectue d'autres tâches avec vos fichiers sources.Pour effectuer ces tâches, l'agent de build télécharge les fichiers des dossiers du serveur de contrôle de version dans un répertoire de travail local.Pour faciliter le téléchargement de ces fichiers, l'agent de build crée un espace de travail de contrôle de version, ce qui mappe les dossiers du serveur aux dossiers locaux du répertoire de travail de l'agent de build.
Avant le démarrage du processus de génération
Définissez le répertoire de travail de chaque agent de build dans votre système de génération.Pour plus d'informations, consultez Déployer et configurer des agents de build.
Lorsque vous créez votre définition de build, sous l'onglet Espace de travail, spécifiez les dossiers qui contiennent les fichiers que vous souhaitez télécharger et indiquez la façon dont ces dossiers doivent être mappés aux dossiers locaux sur l'agent de build.
Pendant le processus de génération
Le processus de génération passe vos spécifications d'espace de travail à l'activité de flux de travail Activité CreateWorkspace pour créer un espace de travail dans son répertoire de travail.
Le processus de génération utilise l'activité Activité DownloadFiles pour télécharger les fichiers dans l'espace de travail.Une fois cette étape effectuée, l'agent de build peut commencer à utiliser ces fichiers (par exemple, les compiler).