Ajouter et configurer un catalogue à partir de GitHub ou d’Azure Repos
Cet article explique comment ajouter et configurer un catalogue dans votre projet ou centre de développement Environnements de déploiement Azure.
Les catalogues vous aident à fournir un ensemble de modèles d’infrastructure en tant que code (IaC) organisés, appelés définitions d’environnement, que vos équipes de développement peuvent utiliser pour créer des environnements. Vous pouvez attacher votre propre référentiel de contrôle de code source à partir de GitHub ou d’Azure DevOps en tant que catalogue et spécifier le dossier avec vos définitions d’environnement. Environnements de déploiement analyse le dossier à la recherche de définitions d’environnement et les rend disponibles pour les équipes de développement afin de créer des environnements.
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 projet ou 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.
Dans cet article, vous apprendrez comment :
- Configurer des catalogues au niveau du projet
- Configurer une identité managée
- Ajouter un catalogue à partir d’Azure Repos ou de GitHub
- Mettre à jour un catalogue
- Supprimer un catalogue
- Résoudre les erreurs de synchronisation des catalogues
Configurer des catalogues au niveau du projet
L’attachement de catalogues au niveau du projet permet aux ingénieurs de plateforme de fournir des définitions d’environnement organisées spécifiques aux équipes de développement. En outre, cela permet aux responsables de l’équipe de développement affectés en tant qu’administrateurs de projet de gérer les définitions d’environnement mises à la disposition de leurs équipes.
Les ingénieurs de plateforme ont un contrôle total sur l’utilisation des catalogues au niveau du projet. L’utilisation des catalogues au niveau du projet doit être activée au niveau du centre de développement avant qu’un catalogue puisse être ajouté à un projet. Les ingénieurs de plateforme peuvent également configurer quels types d’éléments de catalogue, tels que les définitions d’environnement, peuvent être consommés au niveau du projet.
Par défaut, l’utilisation de catalogues au niveau du projet est désactivée et aucun des types d’éléments de catalogue n’est activé. Les définitions d’environnement d’un catalogue de niveau projet sont synchronisées et utilisables sous deux conditions. Tout d’abord, vous devez activer les catalogues basés sur des projets au niveau du centre de développement correspondant. Ensuite, vous devez activer l’utilisation des définitions d’environnement pour le projet.
Ajouter un catalogue à un projet
Vous devez activer les catalogues de niveau projet au niveau du centre de développement avant de pouvoir ajouter un catalogue à un projet. Vous devez également activer l’utilisation des définitions d’environnement au niveau du projet.
Pour activer l’utilisation de catalogues de niveau projet au niveau du centre de développement :
Dans le portail Azure, accédez à votre centre de développement.
Dans le menu de gauche, sous Paramètres, sélectionnez Configuration.
Dans le volet Catalogues de niveau projet, sélectionnez Activer les catalogues par projet, puis Appliquer.
Pour activer l’utilisation des définitions d’environnement dans le projet :
Dans le portail Azure, accédez à votre projet.
Dans le menu de gauche, sous Paramètres, sélectionnez Catalogues.
Dans la page Catalogues, sélectionnez Autorisations des éléments de catalogue.
Dans le volet Paramètres des éléments de catalogue, sélectionnez Définitions de l’environnement de déploiement Azure pour activer l’utilisation des définitions d’environnement au niveau du projet.
À présent, vous pouvez ajouter un catalogue au projet.
Pour les catalogues qui utilisent une identité managée ou un jeton d’accès personnel (PAT) pour l’authentification, vous devez attribuer une identité managée pour le projet. Pour les catalogues qui utilisent un jeton PAT, vous devez stocker le jeton PAT dans un coffre de clés et accorder à l’identité managée l’accès au secret du coffre de clés.
Configurer une identité managée
Avant de pouvoir attacher un catalogue à un projet ou centre de développement, vous devez configurer une identité managée, également appelée MSI (Managed Service Identity). 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 projet ou 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 projet ou 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.
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.
- Référentiel Azure Repos avec MSI
- Référentiel Azure Repos avec PAT
- Référentiel GitHub de l’application DevCenter
- Référentiel GitHub avec jeton PAT
Pour ajouter un catalogue, effectuez les tâches suivantes :
- Attribuez des autorisations dans Azure Repos pour l’identité managée.
- Ajouter votre dépôt en tant que catalogue
Attribuer des autorisations dans Azure Repos pour l’identité managée
Vous devez accorder à l’identité managée des autorisations sur le référentiel dans Azure Repos.
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 projet ou centre de développement.
Sélectionnez Paramètres de l’organisation.
Dans la page Vue d’ensemble, sélectionnez Utilisateurs.
Dans la page Utilisateurs, sélectionnez Ajouter des utilisateurs.
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 projet ou centre de développement.
Quand vous utilisez une MSI affectée par le système, spécifiez le nom du projet ou 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.
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 projet ou 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.
Sur le Portail Azure, accédez à votre projet ou centre de développement.
Dans le menu de gauche, sous Configuration de l’environnement, sélectionnez Catalogues, puis sélectionnez Ajouter.
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. Dans Catalogues pour le projet ou 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.
Afficher les éléments de catalogue synchronisés
Quel que soit le type de référentiel que vous utilisez, vous pouvez afficher les éléments de catalogue synchronisés à partir du catalogue.
Dans le menu de gauche de votre projet ou centre de développement, sous Configuration de l’environnement, sélectionnez Catalogues.
Dans le volet Catalogues, sélectionnez le nom du catalogue.
Vous voyez une liste d’éléments de catalogue synchronisés avec succès.
Mettre à jour un catalogue
Si vous mettez à jour la définition ou les contenus du modèle dans le référentiel attaché, vous pouvez fournir le dernier ensemble de définitions d’environnement à vos équipes de développement en synchronisant le catalogue. Vous pouvez synchroniser un catalogue manuellement ou automatiquement.
Synchroniser manuellement un catalogue
Lorsque vous synchronisez manuellement un catalogue, Environnements de déploiement 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.
Dans le menu de gauche de votre centre de développement, sous Configuration de l’environnement, sélectionnez Catalogues.
Sélectionnez le catalogue spécifique, puis sélectionnez Synchroniser sur la barre de commandes.
Synchroniser automatiquement un catalogue
Lorsque vous configurez un catalogue pour la synchronisation automatique, Environnements de déploiement analyse le référentiel toutes les 30 minutes, 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.
Dans le menu de gauche de votre projet ou centre de développement, sous Configuration de l’environnement, sélectionnez Catalogues.
Sélectionnez le catalogue spécifique, puis sélectionnez modifier.
Dans le volet Modifier le catalogue, sélectionnez Synchroniser automatiquement ce catalogue, puis Enregistrer.
Supprimer un catalogue
Vous pouvez supprimer un catalogue pour le retirer du projet ou centre de développement 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 :
Dans le menu de gauche de votre projet ou centre de développement, sous Configuration de l’environnement, sélectionnez Catalogues.
Sélectionnez le catalogue en question, puis sélectionnez Supprimer.
Dans la boîte de dialogue Supprimer le catalogue, sélectionnez Continuer pour supprimer le catalogue.
Résoudre les erreurs de synchronisation des catalogues
Lorsque vous ajoutez ou synchronisez un catalogue, vous pouvez rencontrer un avertissement ou une erreur de synchronisation. Une erreur de synchronisation indique qu’un catalogue n’a pas réussi à se synchroniser. Un avertissement de synchronisation indique que certains ou tous les éléments du catalogue ont des erreurs. Vous pouvez afficher l’état de synchronisation et les erreurs sur le Portail Azure, ou utiliser Azure CLI et l’API REST pour dépanner et résoudre les erreurs.
Afficher l’état de synchronisation du catalogue
Sur le Portail Azure, vous pouvez obtenir plus d’informations sur l’état de synchronisation du catalogue et les avertissements ou erreurs en sélectionnant le lien d’état. Le lien d’état ouvre un volet qui affiche l’état de synchronisation, le nombre de définitions d’environnement ajoutées et le nombre de définitions d’environnement ignorées ou ayant échoué.
Afficher les défaillances de synchronisation du catalogue
Dans le menu de gauche de votre projet ou centre de développement, sous Configuration de l’environnement, sélectionnez Catalogues.
Dans la colonne État, sélectionnez le lien d’état du catalogue qui n’a pas pu être synchronisé.
Vous voyez un volet d’informations qui affiche les modifications apportées à la dernière synchronisation, le nombre d’erreurs de synchronisation et le type d’erreurs.
Afficher les avertissements de synchronisation du catalogue
Dans le menu de gauche de votre projet ou centre de développement, sous Configuration de l’environnement, sélectionnez Catalogues.
Dans la colonne État, sélectionnez le lien d’état du catalogue qui a pu être synchronisé, mais qui signale un avertissement.
Vous voyez un volet d’informations qui affiche les modifications apportées à la dernière synchronisation, le nombre d’erreurs d’éléments, ainsi que le type et la source de chaque erreur.
Vous pouvez afficher les éléments qui ont été synchronisés avec succès à partir d’un catalogue qui signale également des erreurs de synchronisation. Dans le volet Catalogues, sélectionnez le nom du catalogue.
Vous voyez une liste d’éléments de catalogue synchronisés avec succès.
Résoudre les erreurs de synchronisation de catalogue à l’aide d’Azure CLI
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.