Gérer les collections de projets dans Azure DevOps Server

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Lorsque votre Azure DevOps Server héberge plusieurs projets, vous pouvez les gérer plus efficacement en les regroupant et en leur attribuant les mêmes ressources. Par exemple, vous pouvez regrouper des projets qui ont des exigences ou des objectifs similaires, tels que tous les projets qui accèdent à une base de code particulière. Vous pouvez ensuite gérer le groupe de projets d'équipe en tant que ressource autonome disposant de ses propres groupes d'utilisateurs, ressources de serveur et planification de la maintenance.

Un groupe de projets est appelé collection de projets. Lorsque vous installez Azure DevOps Server, une collection par défaut est créée pour contenir tous les projets. Lorsque vous créez une collection, vous spécifiez les ressources logiques et physiques que les projets au sein de cette collection peuvent utiliser. Tous les artefacts et données utilisés par ces projets sont stockés dans la base de données unique de la collection.

L’illustration suivante montre comment les bases de données pour les collections de projets sont intégrées à l’architecture logique. Lorsque vous créez un projet, vous spécifiez la collection qui stockera ses données.

Exemple : emplacement possible de bases de données de collection

Afficher des informations ou configurer un projet existant

  1. Si vous n’avez pas été ajouté en tant qu’administrateur Azure DevOps Server, ajoutez-le maintenant.

    Vous devez être membre du groupe Administrateurs local sur le serveur sur lequel vous souhaitez ouvrir la console, et être membre du groupe Azure DevOps Server ou Administrateurs Team Foundation, ou de votre autorisation Modifier Server-Level Informations doit être définie sur Autoriser.

  2. Connectez-vous au serveur de la couche Application, ouvrez la console d’administration et ouvrez le nœud Regroupements de projets d’équipe .

    Capture d’écran de Administration Console, nœud Regroupements de projets d’équipe, Azure DevOps Server 2022.

    Capture d’écran de Administration Console, nœud Regroupements de projets d’équipe, Azure DevOps Server 2019-2020.

  3. Sélectionnez le nom d'une collection, puis examinez les informations figurant sous les différents onglets. Certains onglets s’affichent uniquement si l’application correspondante a été configurée.

    Vous pouvez effectuer les tâches suivantes à partir de l'onglet correspondant.

    Onglet Tâches
    Généralités
    • Démarrer une collection ou Arrêter une collection : démarrer ou arrêter une collection. Les projets deviennent indisponibles lorsque vous arrêtez une collection. En général, vous arrêtez une collection pour prendre en charge les opérations de maintenance, telles que le déplacement ou le fractionnement d'une collection.
    • Si la collection est démarrée, seule l’option Arrêter la collection s’affiche . Si la collection est arrêtée, seul Start Collection s’affiche . Le démarrage ou l'arrêt d'une collection peut prendre quelques minutes. Vous devrez peut-être choisir Actualiser pour afficher le changement d’état.
    • Modifier les paramètres : modifiez la description ou la configuration de la collection.
    • Appartenance à un groupe : ajoutez ou supprimez des utilisateurs ou des groupes en tant que membres d’une collection. Pour plus d’informations, consultez Définir des autorisations d’administrateur pour les collections de projets.
    • Administrer la sécurité : gérez les autorisations d’un groupe de regroupements. Pour plus d’informations, consultez Informations de référence sur les autorisations et les groupes.
    État
    • Afficher un journal d’activité ou réexécuter un travail.
    Projets

Configurer les rapports

La page Création de rapports s’affiche uniquement lorsque vous avez ajouté un serveur de rapports à Azure DevOps. Choisissez cette page pour effectuer les tâches suivantes :

  • Configurer le serveur de rapports que la collection doit utiliser.
  • Lorsque vous modifiez l'emplacement de dossier par défaut, l'opération échoue si vous tapez le chemin d'accès d'un dossier inexistant sur le serveur, et si vous n'êtes pas autorisé à créer un dossier sur celui-ci. Vous devez spécifier un dossier existant si vous n'avez pas d'autorisations pour créer des dossiers sur ce serveur.
  • Pour supprimer l’emplacement par défaut des sous-dossiers de rapport, choisissez Effacer la configuration.
  • La suppression de la configuration supprime la fonctionnalité de création de rapports pour tous les projets existants et futurs de la collection.

Créer une collection de projets

Avant de créer une collection de projets, consultez Quels sont les avantages et les inconvénients de la création de plusieurs collections de projets ? comme décrit plus loin dans cet article.

  1. Si vous n’avez pas été ajouté en tant qu’administrateur, ajoutez-le maintenant.

    Vous devez être membre du groupe Administrateurs local sur le serveur sur lequel vous souhaitez ouvrir la console, et soit membre du groupe Team Foundation Administrateurs, soit de votre autorisation Modifier Server-Level Informations doit être définie sur Autoriser.

  2. Dans la console d’administration, ouvrez la page Regroupements de projets d’équipe et choisissez Créer une collection.

    Capture d’écran de la console d’administration, du nœud Regroupements de projets d’équipe, de la Azure DevOps Server 2022.

    Capture d’écran de la console d’administration Azure DevOps Server avec l’option Créer un regroupement mise en évidence.

  3. Suivez les instructions fournies par l’Assistant Création d’une collection de projets d’équipe .

    Pour le nom, spécifiez un nom unique avec au maximum 64 caractères (plus le plus court est le mieux), et ne spécifiez pas de barres obliques ou d’autres caractères spéciaux répertoriés dans restrictions de nommage.

    Boîte de dialogue Créer une collection, Azure DevOps Server 2022, avec l’option Héritage sélectionnée.

    Capture d’écran de la boîte de dialogue Créer une collection de projets d’équipe avec l’option Héritage sélectionnée.

  1. Choisissez Héritage si vous souhaitez utiliser l’interface utilisateur pour personnaliser le suivi du travail. Ce choix s’appuie sur le service Analytique pour prendre en charge vos besoins en matière de création de rapports.

    Choisissez XML si vous souhaitez utiliser des fichiers de définition XML pour personnaliser le suivi du travail.

    Notes

    Pour le modèle de processus XML local, vous pouvez utiliser witadmin pour répertorier, importer, exporter et modifier un processus pour un projet. Pour les modèles de processus hérités, vous pouvez uniquement utiliser witadmin pour répertorier et exporter les informations de processus. Pour obtenir une vue d’ensemble des modèles de processus et de ce qui est pris en charge, consultez Personnaliser votre expérience de suivi du travail.

L'Assistant prend en charge la configuration des ressources suivantes. Certaines ressources peuvent être configurées uniquement si le serveur de couche Application qui héberge la collection a été précédemment configuré pour prendre en charge l'application correspondante.

Instance SQL Server ou de la couche Données

  1. Spécifiez le nom du serveur de la couche Données Azure DevOps. Si vous souhaitez utiliser un instance nommé pour héberger la base de données pour cette collection de projets, vous devez également spécifier le nom du instance comme dans l’exemple suivant :

    Servername\Instancename

  2. Choisissez Créer une base de données pour cette collection si vous souhaitez créer une base de données pour la collection. Cette option nécessite que le compte de service utilisé par l’agent de travail en arrière-plan De Visual Studio Team Foundation dispose des autorisations nécessaires pour créer une base de données sur le instance de SQL Server.

    Ou choisissez Utiliser cette base de données existante si vous souhaitez utiliser une base de données qui existe déjà, puis spécifiez le nom de la base de données. Cette option requiert la présence d'une base de données vide sur l'instance SQL Server nommée, et que vous disposiez d'autorisations en écriture.

SQL Server Reporting Services

  1. Les rapports s’affichent si vous avez configuré la couche Application pour utiliser SQL Server Reporting Services ; sinon, il est désactivé. Pour le configurer ultérieurement, consultez Ajouter un serveur de rapports.

  2. Passez en revue les informations relatives au serveur et au dossier qui hébergera les rapports, puis choisissez Suivant. Cette option requiert que votre compte d'utilisateur dispose des autorisations nécessaires pour créer un dossier sur le serveur qui exécute Reporting Services.

    À moins que les restrictions de sécurité de votre infrastructure d'entreprise n'empêchent la création automatique d'un dossier dans le cadre de l'Assistant, vous devez utiliser l'option par défaut pour créer un dossier.

  3. Si vous devez utiliser un dossier qu’un administrateur a créé pour vous sur le serveur qui exécute Reporting Services, développez Configuration avancée, choisissez Spécifier un chemin d’accès à un dossier existant, puis spécifiez le chemin relatif du dossier qui a été créé pour vous.

    Choisissez Vérifier le chemin et, si le chemin est correct, choisissez Suivant.

Processus de vérification

  1. Dans Contrôles de préparation, passez en revue la status des vérifications.

    Un indicateur d’erreur bleu souligné apparaît en regard de toute configuration contenant une erreur. Vous pouvez sélectionner l'indicateur pour afficher un message détaillé du problème. Vous devez résoudre toutes les erreurs avant de pouvoir continuer.

    Une fois toutes les vérifications de préparation passées, choisissez Créer.

  2. Le processus de création d’une collection de projets démarre.

    Capture d’écran de la boîte de dialogue Créer une collection de projets d’équipe montrant que le processus de création a Réussi.

    Une fois l’Assistant terminé, choisissez Fermer.

Détacher ou supprimer une collection de projets

Vous détachez une collection de projets lorsque vous souhaitez effectuer une opération de maintenance, telle que le déplacement ou le fractionnement d’une collection. Teams ne peut pas accéder aux projets ou au code source lorsque vous détachez la collection.

Vous supprimez une collection lorsque vous n’avez plus besoin des données stockées dans les projets définis dans la collection. Les trois étapes pour supprimer une collection sont (1) détacher la collection et (2) supprimer la base de données de collection.

Détacher la collection

  1. Dans la console d’administration, mettez en surbrillance le nom de la collection à supprimer, puis choisissez Détacher la collection.

    Capture d’écran de l’option Détacher la collection, Azure DevOps Server 2022.

    Capture d’écran de l’option Détacher la collection, Azure DevOps Server 2019-2020.

  2. Suivez les instructions fournies par l’Assistant Détacher la collection de projets d’équipe.

    (Facultatif) Dans la page Fournir un message de maintenance pour la collection de projets , dans Message de maintenance, spécifiez un message pour les utilisateurs qui peuvent essayer de se connecter aux projets de cette collection.

  3. Une fois toutes les vérifications de préparation terminées, choisissez Détacher.

    Dans la page Surveiller la progression du détachement de la collection de projets , une fois tous les processus terminés, choisissez Suivant.

  4. (Facultatif) Dans la page Vérifier les informations supplémentaires pour cette collection de projets , notez l’emplacement du fichier journal.

Supprimer la base de données de collection

  1. Ouvrez SQL Server Management Studio, connectez-vous au instance du moteur de base de données SQL Server qui héberge la base de données de collection, puis développez le instance.

    Mettez en surbrillance le nom de la base de données de collection (par défaut, TFS_CollectionName), puis supprimez la base de données.

    Pour plus d’informations, consultez Supprimer une base de données.

La collection de projets n’apparaît plus dans la liste des collections dans la console d’administration.

Questions et réponses

Q: Existe-t-il un outil en ligne de commande pour la gestion des collections ?

Un: Vous pouvez utiliser la commande TFSConfig Collection pour attacher, détacher, supprimer ou cloner une collection de projet.

Q : Quels sont les avantages et les inconvénients de la création de plusieurs collections de projets ?

Si vos efforts de développement bénéficient de la possibilité de brancher et de fusionner du code ou si vous devez interroger les status d’éléments de travail liés au même code, vous devez consolider vos projets dans la même collection de projets.

R : Avantages de la création de plusieurs collections

Vous pouvez mieux séparer les besoins opérationnels pour une base de code ou un regroupement de projets, des besoins opérationnels pour un autre regroupement. Dans la mesure où les données de chaque collection sont stockées dans leur propre base de données, vous pouvez gérer indépendamment et séparément de nombreux aspects de chaque collection des autres collections dans votre déploiement. Par exemple, vous pouvez arrêter et démarrer chaque collection individuellement. Par conséquent, vous pouvez planifier des opérations de maintenance pour chaque collection à des moments différents.

Le regroupement de projets en plusieurs collections offre les avantages suivants :

  • Plus grande flexibilité et scalabilité dans la gestion et la distribution des bases de données et des ressources. Un groupe de projets associés partage des rapports, des éléments de travail et des conseils de processus, ainsi qu’une base de code.

    En créant une base de données pour chaque collection, les équipes et les administrateurs peuvent effectuer les tâches suivantes :

    • Créer, ramifier, fusionner et itérer une base de code autonome en fonction des besoins des projets de la collection. Les dépendances de code extérieures à la collection peuvent être gérées de manière formelle.
    • Sauvegarder et restaurer les données de chaque collection indépendamment des autres collections.
    • Stocker tous les bases de données de la collection sur une seule instance SQL Server, ou distribuer les bases de données sur une ou plusieurs instances.
    • Détachez une collection, sauvegardez-la, puis restaurez-la dans un autre déploiement Azure DevOps.
    • Réaffecter des ressources pour mieux répondre aux demandes des projets à mesure que leur taille augmente.
  • Sécurité opérationnelle accrue. Chaque collection ayant son propre ensemble d'utilisateurs et d'autorisations, les différentes bases de code peuvent être isolées dans des collections différentes. Les administrateurs peuvent ajouter des utilisateurs uniquement à la collection contenant le ou les projets se rapportant à une base de code particulière.

  • Capacité accrue de prendre en charge les processus de flux de travail personnalisés. Chaque collection gère des modèles de processus, des types d'éléments de travail, des types de liens, des listes globales et des champs d'élément de travail séparés des autres collections. En séparant les projets qui ont des processus de flux de travail différents en différentes collections, vous exposez uniquement les personnalisations nécessaires à ces projets au sein d’une collection.

R : Inconvénients de la création de plusieurs collections

L’inconvénient main de la création de plusieurs collections de projets est que vous augmentez la complexité de votre déploiement Azure DevOps.

  • Vous devez sauvegarder et restaurer la base de données pour chaque collection, et les autres tâches de gestion et de maintenance augmentent également en fonction du nombre de collections. Par exemple, vous devez gérer individuellement l’ensemble d’utilisateurs et d’autorisations pour chaque collection de projets.
  • Les équipes ne peuvent pas lier des éléments de travail de plusieurs collections.
  • Les équipes ne peuvent pas ramifier ou fusionner du code de plusieurs collections.
  • Les équipes ne peuvent pas créer de requêtes portant sur plusieurs collections.

Q : Quelles ressources sont gérées au niveau de la collection ?

Un: Chaque projet appartient à une collection. Pour en savoir plus sur la gestion d’une collection, consultez Prise en main de la gestion de votre collection de organization ou de projet.

Q : Comment les données stockées pour les différentes collections d’équipes prennent-elles en charge la création de rapports ?

Un: Un entrepôt de données relationnelles unique contient toutes les données reportables de tous les projets définis dans toutes les collections de projets pour un déploiement Azure DevOps. Les données de cet entrepôt sont ensuite traitées et écrites vers le cube OLAP. Étant donné que les données sont collectées dans un seul entrepôt de données, vous pouvez créer des rapports sur plusieurs collections de projets.

Pour créer ou personnaliser des rapports, vous devez ajouter des comptes d’utilisateur au rôle TfsWarehouseDataReader. Les auteurs de rapports ont besoin d'un accès en lecture à l'entrepôt de données relationnelles et au cube Analysis Services. Ces comptes peuvent afficher les données de tous les projets d’équipe hébergés dans tous les regroupements de projets dans le déploiement Azure DevOps. Il n’existe aucun moyen de limiter l’accès à un projet ou à une collection.

Q: Comment mettre à l'échelle mon déploiement avec des collections ?

Un: Consultez Déplacer une collection de projets ou Fractionner une collection de projets.