Criar uma função disparada por um webhook
Você decidiu por utilizar o Azure Functions para monitorar as atualizações do wiki do GitHub da empresa. Sempre que o wiki é atualizado, que você quer conseguir disparar uma função possa processar os detalhes sobre a atualização, como data da atualização, nome do colaborador etc. A primeira etapa é criar um aplicativo de funções do Azure que contém uma função disparada por um webhook.
Nesta unidade, você aprenderá sobre os benefícios de usar webhooks e como você pode disparar uma função do Azure usando webhooks.
O que é um webhook?
Webhooks são retornos de chamada HTTP definidos pelo usuário. São disparados por algum evento, como efetuar push de código para um repositório ou atualizar uma página do wiki. Quando o evento ocorre, o site de origem faz uma solicitação HTTP para a URL configurada para o webhook. Com o Azure Functions, podemos definir a logica em uma função executada quando uma mensagem de webhook é recebida.
Um uso comum de webhooks em um ambiente de DevOps é notificar uma função do Azure de que o código ou a configuração de um aplicativo mudou no GitHub. O conteúdo da mensagem enviada pelo webhook contém os detalhes do evento. Você pode usar o webhook com uma função para executar uma tarefa como implantar a versão atualizada do aplicativo.
O que é o Azure Functions?
O Azure Functions é um serviço de computação sem servidor. Ele permite que você execute o código sem precisar explicitamente provisionar nem gerenciar nenhuma infraestrutura. É possível usar o Azure Functions para executar um script ou código em resposta a uma variedade de eventos.
Um Gatilho faz com que uma função seja executada. Um gatilho define como uma função é invocada. Uma função precisa ter exatamente um gatilho. Gatilhos têm dados associados, que geralmente são fornecidos como o conteúdo da função.
Uma Associação é usada para conectar um recurso a uma função. Você pode definir as associações de entrada e as associações de saída. Dados de uma associação são fornecidos para a função como parâmetros. Por exemplo, você pode conectar um banco de dados a seu código de Azure Functions usando uma associação. Em seguida, você não precisa conectar o banco de dados à função com nenhum código de conexão. Associações são opcionais e uma função pode ter uma ou várias associações de entrada e/ou saída.