Créer une fonction qui est déclenchée par un webhook

Effectué

Vous avez choisi d’utiliser Azure Functions pour superviser les modifications apportées au wiki GitHub de la société. Chaque fois que le wiki est mis à jour, vous voulez être en mesure de déclencher une fonction pouvant traiter les détails de la mise à jour, comme la date de la mise à jour, le nom du contributeur, etc. La première étape est de créer une application de fonction Azure contenant une fonction déclenchée par un webhook.

Dans cette unité, vous allez découvrir les avantages que présente l’utilisation des webhooks, et vous verrez comment déclencher une fonction Azure à l’aide de webhooks.

Qu’est-ce qu’un webhook ?

Les webhooks sont des rappels HTTP définis par l’utilisateur. Ils sont déclenchés par certains événements, comme l’envoi (push) de code vers un dépôt ou la mise à jour d’une page Wiki. Lorsque l’événement se produit, le site source envoie une requête HTTP à l’URL configurée pour le webhook. Avec Azure Functions, nous pouvons définir une logique dans une fonction qui peut être exécutée lors de la réception d’un message de webhook.

Dans un environnement DevOps, il est courant d’utiliser des webhooks pour informer une fonction Azure que le code ou la configuration d’une application a changé dans GitHub. La charge utile du message envoyé par le biais du webhook contient les détails de l’événement. Vous pouvez utiliser le webhook avec une fonction pour effectuer une tâche, comme le déploiement de l’application mise à jour.

Qu’est-ce qu’Azure Functions ?

Azure Functions est un service de calcul serverless. Il vous permet d’exécuter du code sans explicitement provisionner ou gérer l’infrastructure. Vous pouvez utiliser Azure Functions pour exécuter un script ou du code en réponse à différents événements.

Un déclencheur provoque l’exécution d’une fonction. Un déclencheur définit la façon dont une fonction est appelée. Une fonction ne doit avoir qu’un seul déclencheur. Les déclencheurs sont associés à des données, qui sont généralement fournies comme charge utile de la fonction.

Une liaison permet de connecter une ressource à une fonction. Vous pouvez définir des liaisons de sortie et des liaisons d’entrée. Les données d’une liaison sont fournies à la fonction en tant que paramètres. Par exemple, vous pouvez connecter une base de données à votre code Azure Functions à l’aide d’une liaison. Ainsi, vous n’avez pas besoin d’associer la base de données à la fonction avec n’importe quel code de connexion. Les liaisons sont facultatives, et une même fonction peut avoir plusieurs liaisons d’entrée ou de sortie.