Share via


Ajouter et configurer un catalogue à partir de GitHub ou d’Azure Repos

Ce guide explique comment ajouter et configurer un catalogue dans votre centre de développement du service Environnements de déploiement Azure. Un catalogue est un référentiel hébergé sur GitHub ou Azure DevOps.

Vous pouvez utiliser un catalogue pour fournir à vos équipes de développement un ensemble organisé de modèles IaC (infrastructure as code) appelés définitions d’environnement.

Les environnements de déploiement prennent en charge les catalogues hébergés dans Azure Repos (le service de référentiel dans Azure, communément appelé Azure DevOps) ainsi que les catalogues hébergés dans GitHub. Azure Repos prend en charge l’authentification en affectant des autorisations à une identité managée. Azure Repos et GitHub prennent tous deux en charge l’utilisation d’un jeton d’accès personnel (Personal Access Token/PAT) pour l’authentification. Pour sécuriser davantage vos modèles, le catalogue est chiffré. Le service Environnements de déploiement Azure prend en charge le chiffrement au repos avec des clés de chiffrement gérées par la plateforme, qui sont gérées par Microsoft pour les services Azure.

  • Pour savoir comment héberger un référentiel dans GitHub, consultez Démarrage avec GitHub.
  • Pour savoir comment héberger un référentiel Git dans un projet Azure Repos, consultez Azure Repos.

Microsoft propose un catalogue de démarrage rapide que vous pouvez ajouter au centre de développement ainsi qu’un exemple de catalogue que vous pouvez utiliser en tant que référentiel. Vous pouvez également utiliser votre propre référentiel privé, ou vous pouvez dupliquer (fork) et personnaliser les définitions d’environnement dans l’exemple de catalogue.

Configurez une identité managée pour le centre de développement

Après avoir créé un centre de développement, avant de pouvoir attacher un catalogue, vous devez configurer une identité managée, également appelée MSI (Managed Service Identity), pour le centre de développement. Vous pouvez attacher une identité managée affectée par le système (identité MSI affectée par le système) ou une identité managée affectée par l’utilisateur (identité MSI affectée par l’utilisateur). Vous attribuez ensuite des rôles à l’identité managée pour permettre au centre de développement de créer des types d’environnements dans votre abonnement, et de lire le projet Azure Repos qui contient le référentiel de catalogue.

Si aucune identité MSI n’est attachée à votre centre de développement, suivez les étapes décrites dans Configurer une identité managée pour en créer une et attribuer des rôles pour l’identité managée du centre de développement.

Pour en savoir plus sur les identités managées, consultez Que sont les identités managées pour les ressources Azure ?

Ajouter un catalogue

Vous pouvez ajouter un catalogue depuis un référentiel Azure Repos ou un référentiel GitHub. Vous pouvez choisir d’effectuer l’authentification en affectant des autorisations à une identité MSI, ou en utilisant un jeton PAT, que vous stockez dans un coffre de clés.

Sélectionnez l’onglet correspondant au type de référentiel et d’authentification à utiliser.

Pour ajouter un catalogue, effectuez les tâches suivantes :

  • Attribuez des autorisations dans Azure Repos pour l’identité managée du centre de développement.
  • Ajouter votre dépôt en tant que catalogue

Attribuez des autorisations dans Azure Repos pour l’identité managée du centre de développement

Vous devez accorder les autorisations d’identité managée du centre de développement au référentiel dans Azure Repos.

  1. Connectez-vous à votre organisation Azure DevOps.

    Remarque

    Votre organisation Azure DevOps doit se trouver dans le même annuaire que l’abonnement Azure qui contient votre centre de développement.

  2. Sélectionnez Paramètres de l’organisation.

    Capture d’écran montrant la page Organisation Azure DevOps, avec Paramètres de l’organisation mis en surbrillance.

  3. Dans la page Vue d’ensemble, sélectionnez Utilisateurs.

    Capture d’écran montrant la page Vue d’ensemble de l’organisation, avec Utilisateurs mis en surbrillance.

  4. Dans la page Utilisateurs, sélectionnez Ajouter des utilisateurs.

    Capture d’écran montrant la page Utilisateurs, avec l’option Ajouter un utilisateur mis en surbrillance.

  5. Terminez Ajouter de nouveaux utilisateurs en entrant ou en sélectionnant les informations suivantes, puis sélectionnez Ajouter :

    Nom Valeur
    Utilisateurs ou principaux de service Entrez le nom de votre centre de développement.
    Quand vous utilisez une identité MSI affectée par le système, spécifiez le nom du centre de développement, et non l’ID d’objet du compte managé. Quand vous utilisez une identité MSI affectée par l’utilisateur, utilisez le nom du compte managé.
    Niveau d’accès Sélectionnez De base.
    Ajouter aux projets Sélectionnez le projet qui contient votre référentiel.
    Groupes Azure DevOps Sélectionnez Lecteurs de projet.
    Envoyer des invitations par e-mail (aux utilisateurs uniquement) Désactivez la case à cocher.

    Capture d’écran montrant Ajouter des utilisateurs, avec des exemples d’entrées et Ajouter mis en surbrillance.

Ajouter votre dépôt en tant que catalogue

Les Environnements de déploiement Azure prennent en charge l’attachement de référentiels Azure Repos et de référentiels GitHub. Vous pouvez stocker un ensemble de modèles IaC organisés dans un référentiel. L’attachement du référentiel à un centre de développement en tant que catalogue permet à vos équipes de développement d’accéder aux modèles et leur permet de créer rapidement des environnements cohérents.

Les étapes suivantes vous permettent d’attacher un référentiel Azure Repos.

  1. Dans le portail Azure, accédez à votre centre de développement.

  2. Dans le menu de gauche, sous Configuration de l’environnement, sélectionnez Catalogues, puis sélectionnez Ajouter.

    Capture d’écran montrant le volet de la Configuration

  3. Dans Ajouter un catalogue, entrez les informations suivantes, puis sélectionnez Ajouter :

    Champ Valeur
    Nom Entrez un nom pour le catalogue.
    Emplacement du catalogue Sélectionner Azure DevOps.
    Type d’authentification Sélectionnez Identité managée.
    Organisation Sélectionnez votre organisation Azure DevOps.
    Projet Dans la liste des projets, sélectionnez le projet qui stocke le référentiel.
    Référentiel Dans la liste des référentiels, sélectionnez le référentiel que vous souhaitez ajouter.
    Branche Sélectionnez la branche.
    Chemin d’accès du dossier Dev Box récupère une liste de dossiers dans votre branche. Sélectionnez le dossier qui stocke vos modèles IaC.

    Capture d’écran montrant le volet Ajouter un catalogue avec des exemples d’entrées et Ajouter mis en surbrillance.

  4. Dans Catalogues pour le centre de développement, vérifiez que votre catalogue est visible. Une fois la connexion établie, l’État affiche Synchronisation réussie. La connexion à un catalogue peut prendre quelques minutes la première fois.

Mettre à jour un catalogue

Si vous mettez à jour la définition ou le contenu du modèle dans le référentiel attaché, vous pouvez fournir l’ensemble de définitions d’environnement le plus récent à vos équipes de développement en synchronisant le catalogue.

Pour synchroniser un catalogue mis à jour dans Environnements de déploiement Azure :

  1. Dans le menu de gauche de votre centre de développement, sous Configuration de l’environnement, sélectionnez Catalogues.

  2. Sélectionnez le catalogue spécifique, puis sélectionnez Synchroniser. Le service analyse le référentiel, puis met à disposition de tous les projets associés dans le centre de développement la liste la plus récente des définitions d’environnement.

Supprimer un catalogue

Vous pouvez supprimer un catalogue pour le retirer du centre de développement du service Environnements de déploiement Azure. Les modèles d’un catalogue supprimé ne sont pas disponibles aux équipes de développement lors du déploiement de nouveaux environnements. Mettez à jour la référence des définitions d’environnement de tous les environnements existants créés à l’aide des définitions d’environnement du catalogue supprimé. Si la référence n’est pas mise à jour et que l’environnement est redéployé, le déploiement échoue.

Pour supprimer un catalogue :

  1. Dans le menu de gauche de votre centre de développement, sous Configuration de l’environnement, sélectionnez Catalogues.

  2. Sélectionnez le catalogue en question, puis sélectionnez Supprimer.

  3. Dans la boîte de dialogue Supprimer le catalogue, sélectionnez Continuer pour supprimer le catalogue.

Erreurs de synchronisation de catalogue

Lorsque vous ajoutez ou synchronisez un catalogue, vous pouvez rencontrer une erreur de synchronisation. Une erreur de synchronisation indique qu’une partie ou que l’ensemble des définitions d’environnement contient des erreurs. Utilisez Azure CLI ou l’API REST pour obtenir (GET) le catalogue. La réponse de GET vous montre le type d’erreur :

  • Définitions d’environnement ignorées, qui ont été détectées en tant que doublons.
  • Définitions d’environnement non valides ayant échoué en raison d’erreurs de schéma, de référence ou de validation.

Résoudre les erreurs de définitions d’environnement ignorées

Une erreur de définition d’environnement ignorée se produit si vous ajoutez au moins deux définitions d’environnement ayant le même nom. Vous pouvez résoudre ce problème en renommant les définitions d’environnement pour que chaque définition d’environnement ait un nom unique dans le catalogue.

Résoudre les erreurs de définition d’environnement non valides

Une erreur de définition d’environnement non valide peut se produire pour diverses raisons :

  • Erreurs de schéma de manifeste. Vérifiez que votre fichier d’environnement de définition d’environnement correspond au schéma exigé.

  • Erreurs de validation. Vérifiez les éléments suivants pour résoudre les erreurs de validation :

    • Vérifiez que le type de moteur du fichier d’environnement est configuré correctement.
    • Vérifiez que le nom de la définition d’environnement comprend entre 3 et 63 caractères.
    • Vérifiez que le nom de la définition d’environnement comprend uniquement des caractères valides pour une URL, à savoir des caractères alphanumériques et les symboles suivants : ~!,.';:=-_+()*&$@
  • Erreurs de référence. Vérifiez que le chemin du modèle référencé par le fichier d’environnement est un chemin relatif valide pointant vers un fichier du référentiel.