Gérer les collections de projets dans Azure DevOps Server

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

Lorsque votre serveur Azure DevOps 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 avec ses propres groupes d’utilisateurs, ressources serveur et planification de 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 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 des 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 des 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 de serveur Azure DevOps, ajoutez-le maintenant.

    Vous devez être membre du groupe Administrateurs local sur le serveur sur lequel vous souhaitez ouvrir la console, et un membre du groupe Azure DevOps Server ou Team Foundation Administrators, ou votre autorisation Modifier les informations au niveau du serveur 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 du nœud Regroupements de projets d’équipe, Azure DevOps Server 2022.

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

  3. Mettez en surbrillance le nom d’une collection et passez en revue les informations fournies à partir des 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éral
    • Démarrer la collection ou arrêter la collection : Démarrer ou arrêter une collection. Les projets deviennent indisponibles lorsque vous arrêtez une collection. Vous arrêtez généralement un regroupement pour prendre en charge les opérations de maintenance, telles que le déplacement ou le fractionnement d’un regroupement.
    • Si la collection est démarrée, seul Stop Collection s’affiche. Si la collection est arrêtée, seule la collection Start s’affiche. Le démarrage ou l’arrêt d’une collection peut prendre plusieurs 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 au 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érer les autorisations d’un groupe de regroupements. Pour en savoir plus, consultez les informations de référence sur les autorisations et les groupes.
    État
    • Affichez un journal d’activité ou réexécutez un travail.
    Projets

Configurer la création de 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 :

  • Configurez le serveur de rapports à utiliser par la collection.
  • Lorsque vous modifiez l’emplacement du dossier par défaut, l’opération échoue si vous tapez le chemin d’accès d’un dossier qui n’existe pas sur le serveur et que vous n’êtes pas autorisé à créer un dossier sur ce serveur. Vous devez spécifier un dossier existant si vous n’avez pas les autorisations nécessaires 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, passez en revue les avantages et 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 un membre du groupe Administrateurs Team Foundation ou l’autorisation Modifier les informations au niveau du serveur doit être définie sur Autoriser.

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

    Capture d’écran de la console Administration, nœud Regroupements de projets d’équipe, Création d’une collection, Azure DevOps Server 2022.

    Capture d’écran de la console d’administration du serveur Azure DevOps avec l’option Créer une collection mise en surbrillance.

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

    Pour le nom, spécifiez un nom unique sans plus de 64 caractères (plus court est le meilleur) et ne spécifiez pas de barres obliques ou d’autres caractères spéciaux répertoriés dans les restrictions d’affectation de noms.

    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 Analytics 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.

    Remarque

    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 ne peuvent être configurées que si le serveur de la couche Application qui héberge la collection a été précédemment configuré pour prendre en charge l’application correspondante.

Instance data Tier ou SQL Server

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

    Nom d’instance ServerName \

  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 Visual Studio Team Foundation dispose des autorisations nécessaires pour créer une base de données sur l’instance de SQL Server.

    Vous pouvez également choisir Utiliser cette base de données existante si vous souhaitez utiliser une base de données qui existe déjà et spécifier le nom de la base de données. Cette option nécessite qu’une base de données vide existe sur l’instance SQL Server nommée et que vous disposez d’autorisations d’écriture.

SQL Server Reporting Services

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

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

    Sauf si des restrictions de sécurité dans votre infrastructure métier 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 que l’administrateur a créé pour vous sur le serveur exécutant Reporting Services, développez la configuration avancée, choisissez Spécifier un chemin d’accès à un dossier existant et spécifiez le chemin relatif du dossier qui a été créé pour vous.

    Choisissez Vérifier le chemin et, si le chemin d’accès est correct, choisissez Suivant.

Processus de vérification

  1. Dans Readiness Checks, passez en revue l’état des vérifications.

    Un indicateur d’erreur souligné bleu apparaît en regard de toute configuration qui contient une erreur. Vous pouvez choisir l’indicateur d’un message détaillé sur le 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’un regroupement. 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 de suppression d’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 la sélection de la collection Détacher, Azure DevOps Server 2022.

    Capture d’écran de la collection Detach, Azure DevOps Server 2019-2020.

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

    (Facultatif) Dans la page Fournir un message de maintenance pour la page collection de projets, dans Message de maintenance, spécifiez un message pour les utilisateurs susceptibles de tenter de se connecter à des projets dans cette collection.

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

    Dans la page Surveiller la progression de la collection de projets, lorsque tous les processus sont terminés, choisissez Suivant.

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

Supprimer la base de données de collecte

  1. Ouvrez SQL Server Management Studio, connectez-vous à l’instance de SQL Server Moteur de base de données qui héberge la base de données de collecte et développez l’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 regroupements dans la console d’administration.

Questions & réponses

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

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

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

Si vos efforts de développement bénéficieront de la possibilité de brancher et de fusionner du code, ou si vous devez interroger l’état des é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 d’une base de code ou d’un autre regroupement de projets des besoins opérationnels d’un autre regroupement. Étant donné que les données de chaque collection sont stockées dans sa propre base de données, vous pouvez gérer indépendamment de nombreux aspects de chaque collection séparément des autres collections de 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 à différents moments.

Le regroupement de projets dans 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 connexes partage des rapports, des éléments de travail et des instructions 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 :

    • Générez, branchez, fusionnez et itérer une base de code autonome en fonction des besoins des projets au sein de la collection. Les dépendances de code en dehors de la collection peuvent être gérées formellement.
    • Sauvegardez et restaurez les données pour chaque collection indépendamment d’autres collections.
    • Stockez toutes les bases de données de collection sur une seule instance de SQL Server ou distribuez 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 les ressources pour mieux répondre aux demandes des projets au fur et à mesure qu’elles augmentent au fil du temps.
  • Sécurité opérationnelle accrue. Étant donné que chaque collection a son propre ensemble d’utilisateurs et d’autorisations, l’isolation des bases de code différentes peut être isolée sous différentes collections. Les administrateurs peuvent ajouter des utilisateurs uniquement à la collection qui contient le projet ou les projets qui se rapportent à cette base de code particulière.

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

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

L’inconvénient principal 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 d’autres tâches de gestion et de maintenance augmentent également en proportion du nombre de regroupements dont vous disposez. Par exemple, vous devez gérer l’ensemble d’utilisateurs et d’autorisations pour chaque collection de projets individuellement.
  • Teams ne peut pas lier des éléments de travail entre les collections.
  • Teams ne peut pas brancher ou fusionner du code entre les collections.
  • Teams ne peut pas créer de requêtes entre collections.

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

R : Chaque projet appartient à une collection. Pour en savoir plus sur la gestion d’un regroupement, consultez Prise en main de la gestion de votre organisation ou de la collection de projets.

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

R : un entrepôt de données relationnelle 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 dans le cube OLAP. Étant donné que les données sont collectées dans un seul entrepôt de données, vous pouvez signaler 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 à la fois à l’entrepôt de données relationnelle et au cube Analysis Services. Ces comptes peuvent afficher les données de tous les projets d’équipe hébergés dans toutes les collections 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 faire mettre à l’échelle mon déploiement avec des regroupements ?

R : Voir Déplacer une collection de projets ou Fractionner une collection de projets.