Personnaliser un processus XML hébergé
Azure DevOps Services
Azure DevOps Services prend en charge l’ajout et la mise à jour de processus via une expérience administrative qui est un processus d’importation basé sur le web. Après avoir ajouté un processus, vous pouvez créer un ou plusieurs projets à partir de celui-ci. Vous pouvez mettre à jour le processus à tout moment en l’important à nouveau. Les modifications apportées au modèle de processus sont ensuite appliquées à tous les projets qui utilisent le processus.
Important
Avec le modèle de processus XML hébergé, vous personnalisez le suivi du travail en mettant à jour certains fichiers de définition XML d’un modèle de processus. Cette fonctionnalité est disponible uniquement lorsque les données sont migrées vers Azure DevOps Services à l’aide du service d’importation de base de données Team Foundation Server.
Pour en savoir plus sur la personnalisation et les modèles de traitement, consultez Personnaliser le suivi du travail.
Un processus est un fichier zip qui contient un ensemble de fichiers interdépendants. Ces fichiers définissent les blocs de construction du système de suivi des éléments de travail et d’autres sous-systèmes dans Azure DevOps Services. Certains blocs de construction mettent à jour des projets existants, tandis que d’autres s’appliquent uniquement aux nouveaux projets. Consultez le tableau suivant pour obtenir la liste complète des blocs de construction.
Utilisé lors de l’importation/mise à jour d’un processus
Utilisé lors de la création d’un projet
Remplacé par les valeurs système par défaut
Ignoré
Suivi des éléments de travail
Esprits
Catégories
Configuration du processus
Zones et itérations
Gestion des tests
Éléments de travail
Requêtes d'élément de travail
Build
Lab Management
Gestion de version
Mappages Microsoft Project
Rapports
Portail (produits SharePoint)
Il existe des différences entre ce que Azure DevOps Services prend en charge et ce que Team Foundation Server local prend en charge. Pour obtenir un résumé de ces différences, consultez Différences de personnalisations des modèles de processus.
Comment personnaliser un processus
Lorsque vous personnalisez un processus, il est plus facile de commencer par un processus bien défini que d’en créer un nouveau.
Si vous mettez à jour un processus existant que vous avez utilisé avec Team Foundation Server local, assurez-vous qu’il est conforme aux contraintes placées sur les modèles à importer.
Ouvrez Paramètres>Processus
Vous créez, gérez et personnalisez les processus à partir de Paramètres de l’organisation>Processus.
Choisissez le logo Azure DevOps pour ouvrir Projets. Choisissez ensuite Paramètres de l’organisation.
Ensuite, choisissez Processus.
Important
Si vous ne voyez pas Processus, vous travaillez à partir de TFS-2018 ou d’une version antérieure. La page Processus n’est pas prise en charge. Vous devez utiliser les fonctionnalités compatibles avec le modèle de processus XML local.
Exporter et importer un processus
Sous l’onglet Processus , sélectionnez les points de suspension (...) pour ouvrir le menu contextuel du processus XML hébergé que vous souhaitez exporter. Vous pouvez exporter uniquement des processus XML hébergés.
Enregistrez le fichier zip et extrayez-en tous les fichiers.
Renommez le processus dans le fichier ProcessTemplate.xml situé dans le répertoire racine.
Nommez le processus pour le distinguer des processus existants.
<name>MyCompany Agile Process </name>
Modifiez le type de version et modifiez les nombres principaux et secondaires. Fournissez un GUID distinct pour le type, comme dans cet exemple :
<version type="F50EFC58-C2FC-4C66-9814-E395D90778A3" major="1" minor="1"/>
Appliquez les personnalisations prises en charge.
Créez un fichier zip de tous les fichiers et dossiers dans le répertoire racine.
Personnalisations prises en charge
Vous pouvez appliquer les personnalisations suivantes à votre processus :
- Ajouter, supprimer ou modifier un WIT.
- Ajouter ou modifier un champ.
- Ajoutez jusqu’à cinq backlogs de portefeuille.
- Ajoutez des catégories que vous utiliserez dans la configuration de votre processus.
- Modifier la configuration du processus.
- Ajouter des listes globales.
La section suivante répertorie les limitations imposées par le système.
Restrictions
Vous pouvez importer jusqu’à 32 processus dans Azure DevOps Services. Vos processus personnalisés doivent être conformes à toutes les règles résumées suivantes. Sinon, des messages d’erreur de validation peuvent apparaître lors de l’importation.
Modèle de processus
Votre fichier ProcessTemplate.xml doit être conforme à la syntaxe et aux règles décrites dans la référence d’élément XML ProcessTemplate. En outre, il doit remplir les conditions suivantes :
- Limite le nombre de WIT définis à 64
- Contient un seul fichier de définition de Categories.xml
- Contient un seul fichier de définition de ProcessConfiguration.xml
- Utilise des noms conviviaux uniques dans tous les champs et définitions WIT
En outre, votre processus doit réussir les vérifications de validation suivantes :
- Les noms de processus sont uniques et contiennent au maximum 155 caractères Unicode.
- Un modèle portant le même nom et le MÊME GUID de version qu’un processus existant remplace ce processus.
- Un modèle portant le même nom, mais un GUID de version différente génère une erreur.
- Les noms de processus ne peuvent pas contenir les caractères spéciaux suivants :
. , ; ' ` : / \ * | ? " & % $ ! + = ( ) [ ] { } < >
.
Pour connaître les contraintes supplémentaires , consultez Restrictions d’affectation de noms.
- Les dossiers de processus ne contiennent aucun fichier .exe. Même si vous pouvez importer un processus qui contient un fichier .exe, la création du projet échoue.
- La taille totale du processus est au maximum de 2 Go. Sinon, la création du projet échoue.
Il traite la configuration
Le fichier de définition ProcessConfiguration.xml doit être conforme à la syntaxe et aux règles décrites dans la référence d’élément XML ProcessConfiguration. En outre, il doit remplir les conditions suivantes :
- Spécifie tous les éléments TypeFields
- Est limité à cinq backlogs de portefeuille
- Contient un seul backlog de portefeuille non pris en charge
- Spécifie un seul backlog de portefeuille parent pour chaque backlog de portefeuille subordonné
- Contient les mappages d’état à méta-état de workflow requis et ne fait pas référence aux métastates non pris en charge
Catégories
Le fichier de définition Categories.xml doit être conforme à la syntaxe et aux règles décrites dans la référence d’élément XML Categories. En outre, il doit remplir les conditions suivantes :
- Est limité à 32 catégories
- Définit toutes les catégories référencées dans le fichier ProcessConfiguration.xml
Types d'éléments de travail
Un élément WITD et ses éléments enfants doivent être conformes à la syntaxe et aux règles décrites dans référence d’élément XML WITD. En outre, il doit remplir les conditions suivantes :
- Il y a au maximum 512 champs dans un seul WIT et 512 champs sur tous les WIT.
- Le nom convivial et l’attribut refname requis attribués à un WIT sont uniques dans l’ensemble des fichiers de définition WIT.
- La valeur d’attribut refname requise ne contient pas de caractères non autorisés ou n’utilise pas les espaces de noms non autorisés System. Nom et Microsoft. Nom.
- Les noms de référence contiennent au moins un point (.), et tous les autres caractères sont des lettres sans espaces.
- L’élément WITD contient un élément FORM qui définit un élément WebLayout conforme à la syntaxe spécifiée dans les éléments WebLayout et Control.
Champs d'élément de travail
Un élément FIELDS et ses éléments enfants doivent être conformes à la syntaxe et aux règles décrites dans la référence d’élément XML FIELD. En outre, il doit remplir les conditions suivantes :
- Le nom convivial et l’attribut refname requis attribués à un WIT sont uniques dans l’ensemble des fichiers de définition WIT.
- La valeur d’attribut refname requise ne contient pas de caractères non autorisés ou n’utilise pas les espaces de noms non autorisés System. Nom et Microsoft. Nom.
- Les noms de référence contiennent au moins un point (.), et tous les autres caractères sont des lettres sans espaces.
Un élément FIELD et ses éléments enfants peuvent contenir un élément GLOBALLIST .
Limiter les restrictions
- Un élément FIELDS est limité à 512 champs.
- Un type d’élément de travail est limité à 64 champs de nom de personne. Un champ person-name est un avec l’attribut et la valeur
syncnamechanges=true
. - Un élément ALLOWEDVALUES ou SUGGESTEDVALUES est limité à 512 éléments LISTITEM .
- Un champ est limité à 1 024 règles.
Champs obligatoires
Les champs suivants sont spécifiés dans le fichier ProcessConfiguration.xml :
- Pour tous les WIT d’une catégorie qui définit un backlog de configuration de processus, spécifiez les champs utilisés pour les attributs et les valeurs
type=Team
ettype=Order
. - Pour tous les WIT d’une catégorie qui définit un backlog ou un backlog de portefeuille standard, spécifiez le champ utilisé pour
type=Effort
. - Pour tous les WIT de la catégorie qui définit l’élément TaskBacklog , spécifiez :
- Champ utilisé pour
type=RemainingWork
. - Champ utilisé pour
type=Activity
. - Règle ALLOWEDVALUES pour le champ utilisé pour
type=Activity
.
- Champ utilisé pour
Restrictions de règle
En plus des restrictions de règle de champ standard, les restrictions suivantes sont appliquées :
- Les éléments de règle de champ ne peuvent pas spécifier les attributs pour et pas .
- Les éléments FIELD ne peuvent pas contenir les éléments de règle enfant CANNOTLOSEVALUE, NOTSAMEAS, MATCH et PROHIBITEDVALUES.
- À l’exception des champs suivants, définitions DE CHAMP pour System. Les champs de nom ne peuvent pas contenir de règles de champ.
- System.Title peut contenir les règles REQUIRED et DEFAULT.
- System.Description peut contenir les règles REQUIRED et DEFAULT.
- System.AssignedTo peut contenir les règles REQUIRED, DEFAULT, ALLOWEXISTINGVALUE et VALIDUSER.
- System.ChangedBy peut contenir les règles REQUIRED, DEFAULT, ALLOWEXISTINGVALUE et VALIDUSER.
Noms et attributs cohérents
Dans un processus ou une collection de projets, le nom, le type et les autres attributs définis par un élément FIELD doivent être identiques dans toutes les définitions WIT.
champs d'identité
Les champs d’identité correspondent aux champs utilisés pour contenir des noms de compte, d’utilisateur ou de groupe. Les champs système principaux suivants sont codés en dur en tant que champs d’identité :
- Assigned To (System.AssignedTo)
- Authorized As (System.AuthorizedAs)
- Changed By (System.ChangedBy)
- Created By (System.CreatedBy)
- Activated By (Microsoft.VSTS.Common.ActivatedBy)
- Fermé par (Microsoft.VSTS.Common.ClosedBy)
- Résolu par (Microsoft.VSTS.Common.ResolvedBy)
Ajouter un champ d’identité personnalisé
Un champ de chaîne est reconnu comme champ d’identité lorsque vous spécifiez l’attribut syncnamechanges sur True.
Restrictions de règle sur les champs d’identité
Pour la version actuelle de l’importation de processus, ne spécifiez aucune des règles suivantes dans une définition FIELD .
- SUGGESTEDVALUES
- Règles qui contiennent des valeurs de non-identité.
Exemple correct
Pour limiter les noms de compte valides dans un champ d’identité, spécifiez l’élément VALIDUSER
avec un attribut de nom de groupe.
<FIELD name="Project Manager" refname="Fabrikam.ProgramManager" type="String" reportable="dimension" syncnamechanges="true">
<ALLOWEXISTINGVALUE />
<VALIDUSER group="[PROJECT]\Program Manager Group" />
<HELPTEXT>The program manager responsible for signing off on the user story.</HELPTEXT>
</FIELD>
Avant d’importer le processus, vérifiez que vous avez créé le groupe dans les projets mis à jour par le processus.
Exemple incorrect
L’exemple suivant n’est pas valide, car il spécifie :
- Élément
ALLOWEDVALUES
. - Élément
DEFAULT
qui spécifie la chaînevalue="Not Assigned"
de non-identité .
<FIELD name="Project Manager" refname="Fabrikam.ProgramManager" type="String" reportable="dimension" syncnamechanges="true">
<ALLOWEXISTINGVALUE />
<ALLOWEDVALUES>
<LISTITEM value="[PROJECT]\Program Manager Group" />
<LISTITEM value="Not Assigned" />
</ALLOWEDVALUES>
<DEFAULT from="value" value="Not Assigned" />
<VALIDUSER />
<HELPTEXT>The program manager responsible for signing off on the user story.</HELPTEXT>
</FIELD>
Workflow
Un élément WORKFLOW et ses éléments enfants doivent être conformes à la syntaxe et aux règles décrites dans référence d’élément XML WORKFLOW. En outre, il doit remplir les conditions suivantes :
- Limite chaque WIT à 16 états de flux de travail
- Définit tous les états de flux de travail mappés à des métaétats dans le fichier de définition ProcessConfiguration
- Définit une transition entre tous les états de workflow mappés à la catégorie d’état « Proposé » et les états de workflow mappés à la catégorie d’état « InProgress »
- Définit une transition entre tous les états de workflow mappés à la catégorie d’état « InProgress » et les états de workflow mappés à la catégorie d’état « Complete ».
Pour obtenir une description de la catégorie d’état et des mappages, consultez États de flux de travail et catégories d’état.
Listes globales
Pour le modèle de processus XML hébergé, les limites suivantes sont placées sur l’importation de liste globale :
- Il existe au plus 64 listes globales.
- Il y a au maximum 512 éléments par liste.
- Environ 10 000 éléments peuvent être définis au total parmi toutes les listes globales spécifiées dans tous les WIT.
Présentation des formulaires
Un élément FORM et ses éléments enfants doivent être conformes à la syntaxe et aux règles décrites dans la référence d’élément XML FORM.
Un élément Control ne peut pas spécifier de contrôle personnalisé. Les contrôles personnalisés ne sont pas pris en charge.
Articles connexes
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de l’année 2024, nous abandonnerons progressivement le mécanisme de retour d’information GitHub Issues pour le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultez :Soumettre et afficher des commentaires pour