Création d’une application Python avec le kit de développement logiciel (SDK) Azure pour Python
Ce document vous présente des exemples d’utilisation du kit de développement logiciel (SDK) Azure pour Python dans le but d’accéder à vos données dans Azure App Configuration.
Conseil
App Configuration propose une bibliothèque de fournisseur Python qui s’appuie sur le kit SDK Python. Elle est conçue pour être plus facile à prendre en main et plus riche en fonctionnalités. Elle permet d’utiliser les paramètres de configuration comme un dictionnaire et offre des fonctionnalités telles que la composition de configuration à partir de plusieurs étiquettes, le découpage des noms de clé et la résolution automatique des références Key Vault. Accédez au démarrage rapide Python pour en savoir plus.
Prérequis
- Abonnement Azure : créez-en un gratuitement
- Python 3.8 ou version ultérieure : pour plus d’informations sur la configuration de Python sur Windows, consultez la documentation de Python sur Windows
- Un magasin App Configuration. Créez un magasin.
Création d’une clé-valeur
Ajoutez la clé-valeur suivante au magasin App Configuration et laissez les valeurs par défaut pour Étiquette et Type de contenu. Pour plus d’informations sur l’ajout de clés-valeurs à un magasin avec le Portail Azure ou la CLI, consultez Créer une clé-valeur.
Clé | Valeur |
---|---|
TestApp:Settings:Message | Data from Azure App Configuration |
Configurer l’application Python
Créez un répertoire nommé app-configuration-example pour le projet.
mkdir app-configuration-example
Basculez vers le répertoire app-configuration-example que vous venez de créer.
cd app-configuration-example
Installez la bibliothèque de client Azure App Configuration à l’aide de la commande
pip install
.pip install azure-appconfiguration
Créez un fichier appelé app-configuration-example.py dans le répertoire app-configuration-example, puis ajoutez le code suivant :
import os from azure.appconfiguration import AzureAppConfigurationClient, ConfigurationSetting try: print("Azure App Configuration - Python example") # Example code goes here except Exception as ex: print('Exception:') print(ex)
Notes
Les extraits de code de cet exemple vous aideront à utiliser la bibliothèque de client App Configuration pour Python. Pour votre application, vous devez également envisager de gérer les exceptions en fonction de vos besoins. Pour en savoir plus sur la gestion des exceptions, consultez notre documentation sur le SDK Python.
Configurer votre chaîne de connexion App Configuration
Définissez une variable d’environnement nommée AZURE_APPCONFIG_CONNECTION_STRING et affectez-lui la valeur de la chaîne de connexion à votre magasin App Configuration. Sur la ligne de commande, exécutez la commande suivante :
Pour exécuter l’application localement en tirant parti de l’invite de commandes Windows, exécutez la commande suivante et remplacez
<app-configuration-store-connection-string>
par la chaîne de connexion de votre magasin de configurations des applications :setx AZURE_APPCONFIG_CONNECTION_STRING "connection-string-of-your-app-configuration-store"
Imprimez la valeur de la variable d’environnement pour confirmer qu’elle est correctement définie à l’aide de la commande ci-dessous.
Si vous utilisez l’invite de commandes Windows, redémarrez l’invite pour que la modification soit prise en compte et exécutez la commande suivante :
echo %AZURE_APPCONFIG_CONNECTION_STRING%
Exemples de code
Les exemples d’extraits de code de cette section vous montrent comment effectuer des opérations courantes avec la bibliothèque de client App Configuration pour Python. Ajoutez ces extraits de code au bloc try
dans le fichier app-configuration-example.py que vous avez créé.
Notes
La bibliothèque de client App Configuration fait référence à un objet clé/valeur sous la forme ConfigurationSetting
. Ainsi, dans cet article, les paires clé/valeur dans le magasin App Configuration sont appelées paramètres de configuration.
Découvrez ci-dessous comment :
- Se connecter à un magasin App Configuration
- Obtenir un paramètre de configuration
- Ajouter un paramètre de configuration
- Obtenir la liste des paramètres de configuration
- Verrouiller un paramètre de configuration
- Déverrouiller un paramètre de configuration
- Mettre à jour un paramètre de configuration
- Supprimer un paramètre de configuration
Se connecter à un magasin App Configuration
L’extrait de code suivant crée une instance d’AzureAppConfigurationClient à l’aide de la chaîne de connexion stockée dans vos variables d’environnement.
connection_string = os.getenv('AZURE_APPCONFIG_CONNECTION_STRING')
app_config_client = AzureAppConfigurationClient.from_connection_string(connection_string)
Obtenir un paramètre de configuration
L’extrait de code suivant récupère un paramètre de configuration par nom de clé (key
).
retrieved_config_setting = app_config_client.get_configuration_setting(key='TestApp:Settings:Message')
print("\nRetrieved configuration setting:")
print("Key: " + retrieved_config_setting.key + ", Value: " + retrieved_config_setting.value)
Ajouter un paramètre de configuration
L’extrait de code suivant crée un objet ConfigurationSetting
avec les champs key
et value
et appelle la méthode add_configuration_setting
.
Cette méthode lève une exception si vous essayez d’ajouter un paramètre de configuration qui existe déjà dans votre magasin. Pour éviter cette exception, vous pouvez utiliser la méthode set_configuration_setting à la place.
config_setting = ConfigurationSetting(
key='TestApp:Settings:NewSetting',
value='New setting value'
)
added_config_setting = app_config_client.add_configuration_setting(config_setting)
print("\nAdded configuration setting:")
print("Key: " + added_config_setting.key + ", Value: " + added_config_setting.value)
Obtenir la liste des paramètres de configuration
L’extrait de code suivant récupère la liste des paramètres de configuration. Vous pouvez fournir les arguments key_filter
et label_filter
pour filtrer les paires clé/valeur en fonction de key
et label
respectivement. Pour plus d’informations sur le filtrage, découvrez comment interroger les paramètres de configuration.
filtered_settings_list = app_config_client.list_configuration_settings(key_filter="TestApp*")
print("\nRetrieved list of configuration settings:")
for item in filtered_settings_list:
print("Key: " + item.key + ", Value: " + item.value)
Verrouiller un paramètre de configuration
L’état de verrouillage d’une paire clé/valeur dans App Configuration est indiqué par l’attribut read_only
de l’objet ConfigurationSetting
. Si read_only
a pour valeur True
, le paramètre est verrouillé. La méthode set_read_only
peut être appelée avec l’argument read_only=True
pour verrouiller le paramètre de configuration.
locked_config_setting = app_config_client.set_read_only(added_config_setting, read_only=True)
print("\nRead-only status for " + locked_config_setting.key + ": " + str(locked_config_setting.read_only))
Déverrouiller un paramètre de configuration
Si l’attribut read_only
d’un objet ConfigurationSetting
a pour valeur False
, le paramètre est déverrouillé. La méthode set_read_only
peut être appelée avec l’argument read_only=False
pour déverrouiller le paramètre de configuration.
unlocked_config_setting = app_config_client.set_read_only(locked_config_setting, read_only=False)
print("\nRead-only status for " + unlocked_config_setting.key + ": " + str(unlocked_config_setting.read_only))
Mettre à jour un paramètre de configuration
La méthode set_configuration_setting
peut être utilisée pour mettre à jour un paramètre existant ou créer un paramètre. L’extrait de code suivant change la valeur d’un paramètre de configuration existant.
added_config_setting.value = "Value has been updated!"
updated_config_setting = app_config_client.set_configuration_setting(added_config_setting)
print("\nUpdated configuration setting:")
print("Key: " + updated_config_setting.key + ", Value: " + updated_config_setting.value)
Supprimer un paramètre de configuration
L’extrait de code suivant supprime un paramètre de configuration par nom de clé (key
).
deleted_config_setting = app_config_client.delete_configuration_setting(key="TestApp:Settings:NewSetting")
print("\nDeleted configuration setting:")
print("Key: " + deleted_config_setting.key + ", Value: " + deleted_config_setting.value)
Exécuter l’application
Dans cet exemple, vous avez créé une application Python qui utilise la bibliothèque de client Azure App Configuration pour récupérer un paramètre de configuration créé sur le Portail Azure, ajouter un nouveau paramètre, récupérer la liste des paramètres existants, et enfin verrouiller et déverrouiller, mettre à jour et supprimer des paramètres.
À ce stade, votre fichier app-configuration-example.py doit contenir le code suivant :
import os
from azure.appconfiguration import AzureAppConfigurationClient, ConfigurationSetting
try:
print("Azure App Configuration - Python example")
# Example code goes here
connection_string = os.getenv('AZURE_APPCONFIG_CONNECTION_STRING')
app_config_client = AzureAppConfigurationClient.from_connection_string(connection_string)
retrieved_config_setting = app_config_client.get_configuration_setting(key='TestApp:Settings:Message')
print("\nRetrieved configuration setting:")
print("Key: " + retrieved_config_setting.key + ", Value: " + retrieved_config_setting.value)
config_setting = ConfigurationSetting(
key='TestApp:Settings:NewSetting',
value='New setting value'
)
added_config_setting = app_config_client.add_configuration_setting(config_setting)
print("\nAdded configuration setting:")
print("Key: " + added_config_setting.key + ", Value: " + added_config_setting.value)
filtered_settings_list = app_config_client.list_configuration_settings(key_filter="TestApp*")
print("\nRetrieved list of configuration settings:")
for item in filtered_settings_list:
print("Key: " + item.key + ", Value: " + item.value)
locked_config_setting = app_config_client.set_read_only(added_config_setting, read_only=True)
print("\nRead-only status for " + locked_config_setting.key + ": " + str(locked_config_setting.read_only))
unlocked_config_setting = app_config_client.set_read_only(locked_config_setting, read_only=False)
print("\nRead-only status for " + unlocked_config_setting.key + ": " + str(unlocked_config_setting.read_only))
added_config_setting.value = "Value has been updated!"
updated_config_setting = app_config_client.set_configuration_setting(added_config_setting)
print("\nUpdated configuration setting:")
print("Key: " + updated_config_setting.key + ", Value: " + updated_config_setting.value)
deleted_config_setting = app_config_client.delete_configuration_setting(key="TestApp:Settings:NewSetting")
print("\nDeleted configuration setting:")
print("Key: " + deleted_config_setting.key + ", Value: " + deleted_config_setting.value)
except Exception as ex:
print('Exception:')
print(ex)
Dans la fenêtre de votre console, accédez au répertoire contenant le fichier app-configuration-example.py et exécutez la commande Python suivante pour exécuter l’application :
python app-configuration-example.py
Vous devez normalement voir la sortie suivante.
Azure App Configuration - Python example
Retrieved configuration setting:
Key: TestApp:Settings:Message, Value: Data from Azure App Configuration
Added configuration setting:
Key: TestApp:Settings:NewSetting, Value: New setting value
Retrieved list of configuration settings:
Key: TestApp:Settings:Message, Value: Data from Azure App Configuration
Key: TestApp:Settings:NewSetting, Value: New setting value
Read-only status for TestApp:Settings:NewSetting: True
Read-only status for TestApp:Settings:NewSetting: False
Updated configuration setting:
Key: TestApp:Settings:NewSetting, Value: Value has been updated!
Deleted configuration setting:
Key: TestApp:Settings:NewSetting, Value: Value has been updated!
Nettoyer les ressources
Si vous ne souhaitez plus utiliser les ressources créées dans cet article, supprimez le groupe de ressources que vous avez créé ici afin d’éviter des frais.
Important
La suppression d’un groupe de ressources est irréversible. Le groupe de ressources et toutes les ressources qu’il contient sont supprimés définitivement. Veillez à ne pas supprimer accidentellement les mauvaises ressources ou le mauvais groupe de ressources. Si vous avez créé les ressources pour cet article dans un groupe de ressources contenant d’autres ressources que vous souhaitez conserver, supprimez chaque ressource individuellement à partir de son volet, au lieu de supprimer l’intégralité du groupe de ressources.
- Connectez-vous au portail Azure, puis sélectionnez Groupes de ressources.
- Dans la zone Filtrer par nom, entrez le nom de votre groupe de ressources.
- Dans la liste de résultats, sélectionnez le nom du groupe de ressources pour afficher une vue d’ensemble.
- Sélectionnez Supprimer le groupe de ressources.
- Vous êtes invité à confirmer la suppression du groupe de ressources. Entrez le nom de votre groupe de ressources à confirmer, puis sélectionnez Supprimer.
Après quelques instants, le groupe de ressources et toutes ses ressources sont supprimés.
Étapes suivantes
Ce guide vous a montré comment utiliser le kit SDK Azure pour Python afin d’accéder à vos données dans Azure App Configuration.
Pour obtenir des exemples de code supplémentaires, visitez :
Pour savoir comment utiliser Azure App Configuration avec des applications Python, cliquez sur le lien suivant :