Azure App Service – Changer une valeur de configuration
Récemment, j’ai été surpris de voir un ami redéployer son application web sur Azure App Service simplement pour changer la valeur d’une clé de configuration.
Ce qui est d’autant plus surprenant c’est que l’idée même des fichiers de configuration est de ne pas devoir redéployer l’application si l’on souhaite changer les paramètres de configuration.
Voyons ensemble ce qu’Azure App Service nous propose pour éviter cela.
Prenons un exemple simple…
Nous allons créer une application ASP.NET MVC et utiliser un appSetting pour y stocker la valeur de la couleur d’arrière-plan du bandeau de page.
Nous allons la déployer sur Azure App Service et voir comment on peut modifier ce paramètre sans avoir à redéployer l’application.
Le code est ramené à sa forme la plus simple possible dans le but d’illustrer le point de cet article. Concrètement, ça se résume à ça :
L’application est ensuite déployée sur Azure :
Le code source se trouve sur GitHub, à l’adresse : https://github.com/BelRarr/AzureAppServiceAppSettings
Changer la valeur de la clé de configuration via la console Kudu
La première option consiste à passer par la console Kudu pour faire ce changement :
Ensuite, localise le fichier « web.config » et modifie-le :
Tu peux ainsi soit visiter l’application de nouveau ou rafraichir ta page si tu es déjà dessus, pour voir le résultat.
Changer la valeur de la clé de configuration via le portail d’Azure
Par le passé, nous devions utiliser la classe « CloudConfigurationManager » pour lire les clés de configurations définies au niveau du App Service. Heureusement, de nos jours, ceci n’est plus utile.
L’astuce consiste simplement à créer une clé de configuration au niveau du AppService avec le même nom que celle se trouvant dans le web.config (ici « backgroundColor »). Azure privilégiera la configuration du AppService avant celle du web.config.
De ce fait, en assignant la valeur « green » à cette clé de configuration, on obtient le résultat suivant :
Ici, on change un appSetting mais comme tu le vois, tu peux aussi changer ta connectionString.
Changer la valeur de la clé de configuration via Azure CLI
L’option Azure CLI est la plus intéressante selon moi car elle peut être exécutée depuis Azure Cloud Shell soit via le portail d’Azure, le portail shell.azure.com, l’application mobile Azure ou encore depuis VS Code !
Le format de la commande pour ce type d’opération est le suivant :
az webapp config appsettings set -g <NomRessourceGroup> -n <NomApplication> --settings <NomClé>=<ValeurClé>
Dans notre cas, il suffit pour cela te taper la commande suivante :
Ce qui donne le résultat suivant :
En conclusion…
Azure App Service est très puissant et flexible. Au fur et à mesure des articles, nous allons explorer ces différentes fonctionnalités.
À la prochaine !