Extraire des paramètres depuis App Configuration à l’aide d’Azure Pipelines

La tâche Azure App Configuration extrait des paires clé-valeur de votre magasin App Configuration et les définit en tant que variables de pipeline Azure, lesquelles peuvent être consommées par les tâches à venir. Cette tâche complète la tâche Azure App Configuration Push (Push Azure App Configuration), qui envoie les paires clé-valeur d’un fichier config vers votre magasin App Configuration. Pour plus d’informations, consultez Envoyer des paramètres vers App Configuration avec Azure Pipelines.

Prérequis

Créer une connexion de service

Une connexion de service vous permet d’accéder aux ressources de votre abonnement Azure à partir de votre projet Azure DevOps.

  1. Dans Azure DevOps, accédez au projet qui contient votre pipeline cible. Dans l’angle inférieur gauche, sélectionnez Paramètres du projet.

  2. Sous Pipelines, sélectionnez Connexions de service. Dans l’angle supérieur droit, sélectionnez Nouvelle connexion de service.

  3. Dans Nouvelle connexion de service, sélectionnez Azure Resource Manager.

    Screenshot shows selecting Azure Resource Manager from the New service connection dropdown list.

  4. Dans la boîte de dialogue Méthode d’authentification, sélectionnez Principal du service (automatique) pour créer un principal du service ou sélectionnez Principal du service (manuel) pour utiliser un principal de service existant.

  5. Entrez votre abonnement, votre ressource et un nom pour votre connexion de service.

Si vous avez créé un principal de service, recherchez le nom du principal de service affecté à la connexion de service. Vous ajouterez une nouvelle attribution de rôle à ce principal de service à l’étape suivante.

  1. Accédez à Paramètres du projet>Connexions de service.

  2. Sélectionnez la nouvelle connexion de service.

  3. Sélectionnez Gérer le principal du service.

  4. Notez la valeur dans Nom d’affichage.

    Screenshot shows the service principal display name.

Ajouter une attribution de rôle

Affectez les attributions de rôle App Configuration appropriées aux informations d’identification utilisées dans la tâche, afin que la tâche puisse accéder au magasin App Configuration.

  1. Accédez à votre magasin App Configuration cible.

  2. Dans le menu de gauche, sélectionnez Contrôle d’accès (IAM) .

  3. Dans le volet droit, sélectionnez Ajouter des attributions de rôles.

    Screenshot shows the Add role assignments button.

  4. Pour Rôle, sélectionnez Lecteur de données de l’App Configuration. Ce rôle permet à la tâche de lire le contenu du magasin App Configuration.

  5. Sélectionnez le principal de service associé à la connexion de service que vous avez créée dans la section précédente.

    Screenshot shows the Add role assignment dialog.

  6. Sélectionnez Vérifier + attribuer.

  7. Si le magasin contient des références Key Vault, accédez au coffre de clés correspondant et attribuez le rôle Utilisateur secret Key Vault au principal de service créé à l’étape précédente. Dans le menu Key Vault, sélectionnez Stratégies d’accès et vérifiez que le contrôle d’accès en fonction du rôle Azure est sélectionné comme modèle d’autorisation.

Utiliser dans les builds

Cette section explique comment utiliser la tâche Azure App Configuration dans un pipeline de build Azure DevOps.

  1. Accédez à la page de pipeline de build en cliquant sur Pipelines>Pipelines. Pour accéder à la documentation sur les pipelines de build, consultez Créer votre premier pipeline.
    • Si vous créez un pipeline de build, à la dernière étape du processus, sous l’onglet Révision, sélectionnez Afficher l’Assistant sur le côté droit du pipeline. Screenshot shows the Show assistant button for a new pipeline.
    • Si vous utilisez un pipeline de build existant, cliquez sur le bouton Modifier en haut à droite. Screenshot shows the Edit button for an existing pipeline.
  2. Recherchez la tâche Azure App Configuration. Screenshot shows the Add Task dialog with Azure App Configuration in the search box.
  3. Configurez les paramètres nécessaires à la tâche pour extraire les paires clé-valeur du magasin App Configuration. Vous trouverez les descriptions des paramètres dans la section Paramètres ci-dessous ainsi que dans les info-bulles en regard de chaque paramètre.
    • Affectez au paramètre Abonnement Azure le nom de la connexion de service que vous avez créée à une étape précédente.
    • Définissez le point de terminaison App Configuration sur le point de terminaison de votre magasin App Configuration.
    • Acceptez les valeurs par défaut des paramètres restants. Screenshot shows the app configuration task parameters.
  4. Enregistrez et mettez en file d’attente une build. Le journal de génération affiche les erreurs qui se sont produites pendant l’exécution de la tâche.

Utiliser dans les mises en production

Cette section explique comment utiliser la tâche Azure App Configuration dans un pipeline de mise en production Azure DevOps.

  1. Accédez à la page de pipeline de mise en production en sélectionnant Pipelines>Mises en production. Pour accéder à la documentation sur les pipelines de mise en production, consultez Pipelines de mise en production.
  2. Choisissez un pipeline de mise en production existant. Si vous n’en avez pas, cliquez sur Nouveau pipeline pour en créer un.
  3. Sélectionnez le bouton Modifier dans le coin supérieur droit pour modifier le pipeline de mise en production.
  4. Dans la liste déroulante Tâches, choisissez l’Étape à laquelle vous souhaitez ajouter la tâche. Vous trouverez des informations supplémentaires sur les phases ici. Screenshot shows the selected stage in the Tasks dropdown.
  5. Cliquez sur + en regard du travail auquel vous souhaitez ajouter une nouvelle tâche. Screenshot shows the plus button next to the job.
  6. Recherchez la tâche Azure App Configuration. Screenshot shows the Add Task dialog with Azure App Configuration in the search box.
  7. Configurez les paramètres nécessaires dans la tâche pour extraire vos paires clé-valeur du magasin App Configuration. Vous trouverez les descriptions des paramètres dans la section Paramètres ci-dessous ainsi que dans les info-bulles en regard de chaque paramètre.
    • Affectez au paramètre Abonnement Azure le nom de la connexion de service que vous avez créée à une étape précédente.
    • Définissez le point de terminaison App Configuration sur le point de terminaison de votre magasin App Configuration.
    • Acceptez les valeurs par défaut des paramètres restants.
  8. Enregistrez et mettez en file d’attente une mise en production. Le journal de mise en production affiche les erreurs rencontrées pendant l’exécution de la tâche.

Paramètres

Les paramètres suivants sont utilisés par la tâche Azure App Configuration :

  • Azure subscription : liste déroulante contenant vos connexions de service Azure disponibles. Pour mettre à jour et actualiser votre liste de connexions de service Azure disponibles, appuyez sur le bouton Refresh Azure subscription (Actualiser l’abonnement Azure) à droite de la zone de texte.
  • Point de terminaison App Configuration : liste déroulante qui charge vos points de terminaison disponibles des magasins de configuration sous l’abonnement sélectionné. Pour mettre à jour et actualiser votre liste de points de terminaison disponibles des magasins de configuration, appuyez sur le bouton Actualiser le point de terminaison App Configuration situé à droite de la zone de texte.
  • Mode de sélection : spécifie la façon dont les paires clé-valeur lues à partir d’un magasin de configuration sont sélectionnées. Le mode de sélection « Par défaut » permet d’utiliser des filtres de clé et d’étiquette. Le mode de sélection « Instantané » permet de sélectionner des paires clé-valeur à partir d’un instantané. La valeur par défaut est Par défaut.
  • Filtre de clé : Le filtre permet de sélectionner les paires clé-valeur demandées à partir d’Azure App Configuration. La valeur * permet de sélectionner toutes les paires clé-valeur. Pour plus d’informations, consultez Interroger des paires clé-valeur.
  • Étiquette : Spécifie l’étiquette à utiliser au moment de la sélection des paires clé-valeur dans le magasin App Configuration. Si aucune étiquette n’est fournie, les paires clé-valeur sans étiquette sont récupérées. Les caractères suivants ne sont pas autorisés : « , » « * ».
  • Nom de l’instantané : spécifie l’instantané à partir duquel les paires clé-valeur doivent être récupérées dans Azure App Configuration.
  • Préfixes de clés à découper : Spécifie un ou plusieurs préfixes de clés App Configuration à découper avant de définir ces clés en tant que variables. Vous pouvez séparer plusieurs préfixes par un caractère de nouvelle ligne.
  • Supprimer l’avertissement pour les clés remplacées : la valeur par défaut est décochée. Spécifie s’il faut afficher des avertissements lorsque des clés existantes sont remplacées. Activez cette option lorsqu’un chevauchement de clés est escompté entre les clés provenant des clés-valeurs téléchargées à partir d’App Configuration et les clés existant dans les variables de pipeline.

Utiliser des paires clé-valeur dans les tâches à venir

Les paires clé-valeur extraites d’App Configuration sont définies en tant que variables de pipeline, lesquelles sont accessibles en tant que variables d’environnement. La clé de la variable d’environnement est la clé de la paire clé-valeur récupérée à partir d’App Configuration après le découpage du préfixe, le cas échéant.

Par exemple, si une tâche à venir exécute un script PowerShell, elle peut consommer une paire clé-valeur avec la clé « myBuildSetting », comme ceci :

echo "$env:myBuildSetting"

La valeur s’affiche ensuite sur la console.

Notes

Les références à Azure Key Vault dans App Configuration seront résolues et définies comme des variables secrètes. Dans les pipelines Azure, les variables secrètes sont masquées dans le journal. Elles ne sont pas transmises aux tâches en tant que variables d’environnement et doivent plutôt être transmises en tant qu’entrées.

Dépannage

Si une erreur inattendue se produit, les journaux de débogage peuvent être activés en affectant la valeur true à la variable de pipeline system.debug.

Questions fréquentes (FAQ)

Comment composer ma configuration à partir de plusieurs clés et étiquettes ?

Il arrive que la configuration soit impérativement composée à partir de plusieurs étiquettes, par exemple default et dev. Vous pouvez utiliser plusieurs tâches App Configuration dans un pipeline pour implémenter ce scénario. Les paires clé-valeur extraites par une tâche au cours d’une étape à venir remplacent toutes les valeurs des étapes précédentes. Dans l’exemple ci-dessus, une tâche permet de sélectionner des paires clé-valeur avec l’étiquette default, et une deuxième tâche permet de sélectionner des paires clé-valeur avec l’étiquette dev. Les clés avec l’étiquette dev remplacent les mêmes clés avec l’étiquette default.