Creación de una función desencadenada por un webhook
Se ha decidido usar Azure Functions para supervisar las actualizaciones de la wiki de GitHub de la empresa. Lo que quiere es que, cada vez que se actualice el sitio wiki, pueda desencadenar una función que sea capaz de procesar los detalles acerca de la actualización, como la fecha de actualización, el nombre del colaborador, etc. El primer paso consiste en crear una aplicación de funciones de Azure que contenga una función desencadenada por un webhook.
En esta unidad, aprenderá las ventajas del uso de webhooks y cómo puede desencadenar una función de Azure mediante webhooks.
¿Qué es un webhook?
Los webhooks son devoluciones de llamada HTTP definidas por el usuario. Se desencadenan por algún evento, como la inserción de código en un repositorio o la actualización de una página wiki. Cuando se produce el evento, en el sitio de origen se realiza una solicitud HTTP a la dirección URL configurada para el webhook. Con Azure Functions, podemos definir la lógica en una función que se puede ejecutar cuando se recibe un mensaje de webhook.
Un uso habitual de webhooks en un entorno de DevOps consiste en notificar a una función de Azure que ha cambiado la configuración o el código de una aplicación en GitHub. La carga del mensaje enviado a través del webhook contiene los detalles del evento. Puede utilizar el webhook con una función para realizar una tarea como la implementación de la versión actualizada de la aplicación.
¿Qué es Azure Functions?
Azure Functions es un servicio de proceso sin servidor. Permite ejecutar código sin tener que aprovisionar o administrar explícitamente la infraestructura. Puede usar Azure Functions para ejecutar un script o código en respuesta a diversos eventos.
Un desencadenador hace que la función se ejecute. Un desencadenador define cómo se invoca una función. Una función debe tener exactamente un desencadenador. Los desencadenadores tienen datos asociados, que suelen proporcionarse como la carga de la función.
Un Enlace se usa para conectar un recurso a una función. Puede definir enlaces de entrada y enlaces de salida. Los datos de un enlace se proporcionan a la función como parámetros. Por ejemplo, puede conectar una base de datos al código de Azure Functions mediante un enlace. No es necesario conectar la base de datos a la función con cualquier código de conexión. Los enlaces son opcionales y cada función puede tener uno o varios enlaces de entrada y de salida.