Vytvoření funkce aktivované webhookem
Rozhodli jste se použít Azure Functions k monitorování aktualizací wikiwebu GitHubu společnosti. Pokaždé, když se wikiweb aktualizuje, chcete být schopni spustit funkci, která zpracuje podrobnosti o této aktualizaci (například datum aktualizace, jméno přispěvatele atd.). Prvním krokem je vytvoření aplikace funkcí Azure, která obsahuje funkci aktivovanou webhookem.
V této lekci se dozvíte o výhodách používání webhooků a o tom, jak můžete aktivovat funkci Azure pomocí webhooků.
Co je webhook?
Webhooky jsou uživatelem definovaná zpětná volání HTTP. Aktivují se nějakou událostí, jako je doručení kódu do úložiště nebo aktualizace stránky wikiwebu. Když k takové události dojde, zdrojová lokalita vytvoří požadavek HTTP na adresu URL nakonfigurovanou pro webhook. Pomocí Azure Functions můžeme definovat logiku ve funkci, která se spustí při přijetí zprávy webhooku.
Jeden obvyklý způsob použití webhooků v prostředí DevOps je informovat funkci Azure, že se ve službě GitHub změnil kód nebo konfigurace pro aplikaci. Datová část zprávy poslané přes webhook obsahuje podrobnosti o události. Webhook můžete použít s funkcí k provedení úlohy, jako je nasazení aktualizované verze aplikace.
Co je Azure Functions?
Azure Functions je výpočetní služba bez serveru. Umožňuje spustit kód bez nutnosti explicitně zřizovat nebo spravovat nějakou infrastrukturu. Azure Functions můžete použít ke spuštění skriptu nebo kódu v reakci na různé události.
Aktivační událost (trigger) způsobí spuštění funkce. Aktivační událost definuje, jak se funkce vyvolá. Funkce musí mít přesně jeden trigger. Aktivační události obsahují související data, která se často poskytují jako datová část funkce.
Vazba slouží k připojení prostředku k funkci. Můžete definovat vstupní a výstupní vazby. Data z vazeb jsou funkci k dispozici jako parametry. Pomocí vazby tak například můžete připojit ke kódu služby Azure Functions databázi. Tu pak nemusíte k funkci napojovat pomocí kódu připojení. Vazby jsou volitelné a funkce může mít jednu nebo více vstupních nebo výstupních vazeb.