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 :

how-it-is-made

L’application est ensuite déployée sur Azure :

running-on-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 :

go-to-kudu

Ensuite, localise le fichier « web.config » et modifie-le :

kudu-webconfig

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.

change-via-portal

De ce fait, en assignant la valeur « green » à cette clé de configuration, on obtient le résultat suivant :

change-result

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 :

change-via-az-cli

Ce qui donne le résultat suivant :

az-cli-change-result

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 !

Comments are closed.