Déplacer une collection de projets

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

Vous pouvez déplacer une collection de projets d’un déploiement de Azure DevOps Server à un autre. Par exemple :

  • Vous avez plusieurs déploiements de Azure DevOps Server dans votre organization et vous souhaitez déplacer une collection vers un autre déploiement pour mieux s’aligner sur vos besoins métier.
  • Vous souhaitez déplacer la collection vers un bureau distant qui a son propre déploiement de Azure DevOps Server.
  • Vous souhaitez étendre votre déploiement de Azure DevOps Server en y ajoutant un autre instance de SQL Server, et vous souhaitez distribuer des collections existantes entre les instances.
  • Vous devez mettre à niveau de manière incrémentielle votre déploiement en détachant une collection de projets individuelle d’un déploiement de Azure DevOps Server exécutant une version antérieure, puis le déplacer vers un serveur exécutant la version actuelle de Azure DevOps Server. (L’une des raisons courantes est que certaines équipes peuvent avoir besoin de migrer vers une version plus récente de Azure DevOps Server, tandis que d’autres doivent rester sur une version antérieure pour des raisons d’outils ou de projets.) Dans ce scénario, vous devez également mettre à niveau chaque projet au sein de la collection à l’aide de l’Assistant Configurer les fonctionnalités. Pour plus d’informations, consultez Configurer les fonctionnalités après une mise à niveau Azure DevOps Server. L’Assistant Configurer les fonctionnalités a été déconseillé pour Azure DevOps Server 2019. Vous pouvez uniquement exécuter l’Assistant sur TFS 2018 et versions antérieures. Les projets définis sur Azure DevOps Services se mettent à jour automatiquement à chaque mise à niveau du service.

Les étapes à suivre pour déplacer une collection dépendront de la configuration particulière du déploiement hébergeant la collection et du déploiement vers lequel vous la déplacez. Par exemple, si vous déplacez une collection vers un nouveau domaine, vous devez ajouter les utilisateurs de ce domaine aux groupes appropriés au niveau de la collection et au niveau du projet.

Voici comment déplacer une collection de projets entière. Pour déplacer une partie d’une collection, consultez Fractionner une collection de projets.

Prérequis

Avant de commencer votre déplacement, assurez-vous que vous êtes un administrateur sur les serveurs et dans les logiciels utilisés à la fois par le déploiement d'origine et le déploiement de destination. Si vous n’êtes pas administrateur, ajoutez-le en tant qu’administrateur.

1. Détacher la collection

Avant de déplacer une collection, commencez par la détacher du déploiement de Azure DevOps Server sur laquelle elle s’exécute. Il est très important de ne pas ignorer cette étape. Lorsque vous détachez une collection, tous les travaux et services sont arrêtés, puis la base de données de collection est arrêtée. En outre, le processus de détachement copie les données spécifiques à la collection de la base de données de configuration et les enregistre dans le cadre de la base de données de collection de projets. Ces données de configuration permettent d’attacher la base de données de collection à un autre déploiement de Azure DevOps Server. Si ces données ne sont pas présentes, vous ne pouvez pas attacher la collection à un déploiement de Azure DevOps Server à l’exception de celui dont elle provient.

Notes

Détacher une collection empêche les utilisateurs d'accéder aux projets de cette collection.

  1. Ouvrez la console d’administration d’Azure DevOps sur le serveur qui héberge la collection à déplacer, puis, dans Collections de projets, mettez en évidence cette collection.

  2. Sous l’onglet Général , sélectionnez Détacher la collection.

    Détacher les collections de projets

    L’Assistant Détacher la collection de projets s’ouvre.

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

  4. Sélectionnez Suivant.

  5. Dans la page Vérifier les paramètres qui seront utilisés pour détacher la collection de projets , passez en revue les détails.

  6. Pour modifier les paramètres, sélectionnez Précédent. S’ils semblent corrects, sélectionnez Vérifier.

  7. Une fois toutes les vérifications de préparation terminées, sélectionnez Détacher.

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

    L'Assistant affiche votre progression

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

  10. Sélectionnez Fermer.

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

    La console d'administration de TFS ne s'affiche pas quand elle est détachée

2. Sauvegarder la base de données de collection

Une fois que vous avez détaché la collection, sauvegardez sa base de données pour la déplacer vers l’autre serveur. Pour effectuer cette tâche, utilisez les outils fournis avec SQL Server.

Capture d’écran du volet Se connecter montrant les éléments suivants : FABRIKAM2014 > Tfs_TestProjects > Tâches > Sauvegarder.

Important

Vous pouvez uniquement restaurer une base de données vers la même version de SQL Server ou une version plus récente. Vous ne pouvez pas restaurer une base de données SQL Server vers une version antérieure du produit
Si votre déploiement d’origine utilisait les éditions Enterprise ou Datacenter de SQL Server et que vous souhaitez restaurer des bases de données sur un serveur exécutant l’édition Standard, vous devez utiliser un jeu de sauvegarde qui a été effectué avec SQL Server compression désactivée. Sauf si vous désactivez la compression des données, vous ne pourrez pas restaurer les bases de données Enterprise ou Datacenter edition sur un serveur exécutant l’édition Standard. Pour désactiver la compression, suivez les étapes décrites dans Désactiver SQL Server compression des données dans les bases de données Azure DevOps.

3. Déplacer la base de données de collection

Dans le cadre du déplacement de la collection, vous devez restaurer, copier ou déplacer la base de données de la collection vers un instance de SQL Server configuré pour prendre en charge le déploiement de Azure DevOps Server vers lequel vous déplacez la collection. Vous pouvez sélectionner la méthode que vous préférez pour déplacer la base de données.

Capture d’écran de la page d’accueil de l’Assistant Copie de base de données.

Pour plus d'informations sur le déplacement d'une base de données vers une autre instance de SQL Server, voir :

4. Attacher la collection

Après avoir restauré la base de données de collection, vous pouvez attacher la collection au déploiement préféré de Azure DevOps Server. Si le déploiement vers lequel vous vous déplacez utilise la création de rapports, un dossier de création de rapports et des rapports par défaut sont créés pour la collection que vous attachez dans le cadre du processus.

  1. Ouvrez la console d’administration pour Azure DevOps sur le serveur qui héberge la couche Application pour le déploiement vers lequel vous déplacez la collection.

  2. Sélectionnez Collections de projets, puis Attacher une collection.

    console d’administration Azure DevOps Server, Collections de projets d’équipe

    L’Assistant Attacher une collection de projets s’ouvre.

  3. Dans la page Sélectionner la base de données de collection de projets à attacher, dans SQL Server Instance, indiquez le nom du serveur et le instance qui héberge la base de données de collection, si elle n’est pas déjà répertoriée.

    Assurez-vous que l'instance de SQL Server est correcte

  4. Dans la liste Bases de données , sélectionnez la base de données de collection à attacher, puis sélectionnez Suivant.

  5. Dans la page Entrer les informations sur la collection de projets, indiquez un nom pour la collection dans Nom si elle n’en est pas déjà présente.

  6. (Facultatif) Dans Description, fournissez une description de la collection.

  7. Sélectionnez Suivant.

  8. Dans la page Vérifier les paramètres qui seront utilisés pour joindre la collection de projets , passez en revue les informations.

  9. Pour modifier les paramètres, sélectionnez Précédent. Si tous les paramètres sont corrects, sélectionnez Vérifier.

  10. Une fois toutes les vérifications de préparation effectuées, sélectionnez Attacher.

  11. Dans la page Surveiller la progression de l’attachement à la collection de projets , une fois tous les processus terminés, sélectionnez Suivant.

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

  13. Sélectionnez Fermer.

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

    Arrêter la collection si la configuration n'est pas terminée

5. Configurer la collection de projets déplacée

Vous pouvez ignorer cette procédure si vous avez déplacé la collection dans le même domaine et que vous avez l’intention d’utiliser la même application web qui prenait en charge la collection, et si vous souhaitez autoriser l’accès des administrateurs de cette collection à ce déploiement de Azure DevOps Server.

Une fois que vous avez déplacé une collection, mettez à jour l’application web et les groupes d’autorisations pour cette collection avec les paramètres appropriés.

Configurer la collection déplacée

  • Ouvrez chaque onglet de la collection de projets et, si nécessaire, modifiez les paramètres pour qu’ils reflètent les services et les emplacements pour qu’ils correspondent aux emplacements des ressources sur le Azure DevOps Server actuel. Cela est particulièrement important pour les ressources de création de rapports. Si vous voyez des erreurs, vérifiez que votre compte dispose des autorisations requises pour les administrateurs de collections de projets et que tous les autres administrateurs de collection de projets ont été ajoutés en fonction des besoins.

    Pour plus d’informations sur cette tâche, consultez Modifier une collection de projets et Définir les autorisations d’administrateur pour les collections de projets.

6. Configurer des projets

Vous pouvez ignorer cette procédure si vous avez déplacé la collection dans le même domaine et que vous souhaitez autoriser l’accès des utilisateurs de projets de cette collection à ce déploiement de Azure DevOps Server.

Après avoir configuré les administrateurs de la collection déplacée, vous ou les administrateurs devez ajouter des utilisateurs et des groupes aux projets de cette collection. En fonction de votre déploiement, vous devrez peut-être également configurer des autorisations pour ces utilisateurs dans Reporting Services.

Ajouter des utilisateurs à des projets

Ajouter des ressources à des projets déplacés

Questions et réponses

Q : Mon déploiement Azure DevOps Server utilise la création de rapports. Comment déplacer ces rapports lors du déplacement d'une collection ?

Un: Tout d’abord, vous devez enregistrer ou exporter tous les rapports que vous souhaitez déplacer à partir du serveur de rapports qui a pris en charge la collection dans son déploiement d’origine. Vous devez ensuite télécharger manuellement chaque rapport vers le serveur de rapports qui prendra en charge la collection déplacée, ce qui peut prendre du temps. Déterminez si vous devez télécharger tous les rapports ou si vous pouvez vous limiter à un sous-ensemble des rapports. Vous n'êtes pas obligé de télécharger tous les rapports (vous pouvez même n'en télécharger aucun), mais les rapports que vous téléchargez doivent être disponibles une fois le processus de déplacement terminé.

Vous devez également reconstruire le cube d’entrepôt et de services d’analyse sur le déploiement d’origine après avoir déplacé la collection, afin que le déploiement d’origine ne continue pas à essayer de générer des rapports pour une collection qui n’y est plus.

Déplacer des rapports

  1. Exportez ou enregistrez les rapports à déplacer du serveur de rapports prenant en charge la collection dans son déploiement d'origine. Pour plus d’informations, consultez Exporter des rapports et Enregistrer des rapports.

  2. Téléchargez chaque rapport à déplacer vers le dossier approprié sur le serveur de rapports prenant en charge la collection dans son nouvel environnement dans le Gestionnaire de rapports.

    Pour plus d’informations, consultez Charger des fichiers dans un dossier.

  3. Dans le Gestionnaire de rapports, modifiez chaque rapport pour spécifier le nouveau serveur de rapport comme source de données.

Régénérer l'entrepôt de données et Analysis Services

  1. Ouvrez la console d’administration pour Azure DevOps.

  2. Dans la barre de navigation, sélectionnez Création de rapports.

  3. Dans Création de rapports, sélectionnez Démarrer la reconstruction.

  4. Dans la boîte de dialogue Reconstruire les bases de données d’entrepôt et d’Analysis Services , sélectionnez OK.

    Notes

    La régénération des entrepôts et le remplissage des données se poursuivent au terme de l'action Démarrer la régénération. Selon la taille de votre déploiement et la quantité de données, l’ensemble du processus peut prendre plusieurs heures.

Q : Comment faire déplacer une collection de projets d’équipe qui comprend des pools de déploiement et/ou des groupes de déploiement ?

Un: Lorsque vous déplacez la collection vers un autre déploiement, pour chaque pool de déploiement dans la source ayant un groupe de déploiement dans la collection détachée, un nouveau pool de déploiement est automatiquement provisionné dans le instance cible. En cas de Azure DevOps Server 2019 ou version ultérieure, le nom du pool de déploiement provisionné automatiquement est le même que dans le instance source. Dans les versions antérieures, le nom du pool de déploiement est au format <project name-deployment-group name>. En cas de conflit, un GUID aléatoire est ajouté au nom du pool de déploiement.

Une fois le déplacement terminé :

  • Il est possible que plusieurs pools de déploiement soient créés. Vous pouvez fusionner les pools en double à l’aide de la commande TfsConfig. Par exemple : TfsConfig.exe deploymentpool /migrateDeploymentGroups /fromPool:<Source Pool Name> /toPool:<Target Pool Name>
  • Vous devez reconfigurer les agents avec le nouveau pool de déploiement. Voici un exemple de script de reconfiguration de l’agent de déploiement pour votre référence.

Supprimer les ressources Lab Management avant de déplacer la collection

  • Pour plus d’informations sur la suppression de tous les hôtes de groupe, partages de bibliothèque et environnements d’une collection de projets spécifiée, consultez Commande TFSConfig Lab /Delete avec l’option /External .

Configurer les ressources Lab Management après le déplacement de la collection

  1. Configurez la couche Application pour Azure DevOps.

    Pour plus d’informations, consultez Configurer Lab Management pour les environnements SCVMM.

  2. Recréez le golden master machines virtuelles et les modèles dans le nouveau SCVMM et importez des machines virtuelles et des modèles dans la collection de projets.

    Pour plus d’informations, consultez Créer et stocker des machines virtuelles et des modèles prêts pour La gestion des laboratoires.

  3. Recréez les environnements pour chaque projet.

    Pour plus d’informations, consultez Créer un environnement SCVMM à l’aide de modèles et de machines virtuelles stockées.

Q : Comment faire restreindre l’accès à certaines fonctions dans un projet ?

Un: Les utilisateurs qui ont les autorisations d’accéder à un projet au sein d’une collection peuvent afficher d’autres projets au sein de cette collection, même s’ils ne disposent pas des autorisations nécessaires pour modifier des éléments de travail ou effectuer d’autres actions dans ce projet. Vous pouvez accorder ou restreindre l’accès à certaines fonctionnalités et fonctions pour la création ou la modification de certains artefacts, ainsi que les empêcher de voir des projets, en créant spécifiquement des groupes et en configurant des restrictions sur ces groupes.