Konfigurowanie elementu webhook na potrzeby repozytorium GitHub

Ukończone

W usłudze GitHub elementy webhook można skonfigurować dla organizacji lub dla określonego repozytorium. Element webhook jest wyzwalany za każdym razem, gdy wystąpi co najmniej jedno subskrybowane zdarzenie. Na przykład zdarzenie Gollum umożliwia nasłuchiwanie aktualizacji witryny typu wiki, w szczególności tworzenia i aktualizacji strony typu wiki.

W tej lekcji dowiesz się, jak skonfigurować element webhook, który nasłuchuje zdarzenia zmiany z firmowej witryny typu wiki usługi GitHub.

Konfigurowanie elementu webhook

Konfigurowanie elementu webhook jest procesem dwuetapowym. Najpierw należy określić w usłudze GitHub sposób działania elementu webhook i zdarzenia, które będą nasłuchiwać. Po drugie skonfigurujesz funkcję w usłudze Azure Functions, aby odbierać ładunek odebrany z elementu webhook i zarządzać nim. W przykładowym scenariuszu konfigurujemy element webhook dla określonego repozytorium.

Aby skonfigurować element webhook, w portalu GitHub wybierz pozycję Ustawienia na górnym pasku menu. Zostanie wyświetlona strona Ustawienia z nazwą repozytorium. W menu po lewej stronie wybierz pozycję Elementy webhook, a następnie wybierz pozycję Dodaj element webhook. Element webhook można również kompilować i zarządzać nim za pomocą interfejsu API elementów webhook, który nie został omówiony w tym module.

Elementy webhook wymagają zastosowania kilku opcji konfiguracji, zanim będzie można ich użyć. Teraz omówimy każde z tych ustawień.

Adres URL ładunku

Adres URL ładunku to adres URL serwera, który będzie odbierać żądania POST elementu webhook.

Każdy typ zdarzenia ma określony format ładunku. Ten ładunek zawiera informacje o zdarzeniu, które wyzwoliło element webhook.

Typ zawartości

Elementy webhook mogą być dostarczane przy użyciu dwóch różnych typów zawartości:

  • Typ zawartości application/json dostarcza ładunek JSON bezpośrednio jako treść żądania POST.
  • Typ zawartości application/x-www-form-urlencoded wysyła ładunek JSON jako parametr formularza o nazwie payload.

Uwaga

Strona Dodaj element webhook umożliwia również określenie sposobu ochrony informacji wysyłanych przez element webhook przy użyciu wpisu tajnego. Ten temat został omówiony w dalszej części tego modułu.

Zdarzenia

Zdarzenia leżą u podstaw elementów webhook. Zdarzenia występują za każdym razem, gdy w repozytorium są wykonywane akcje. Gdy wystąpi zdarzenie, element webhook zostanie wyzwolony i wywoła określony adres URL, wysyłając wraz z ładunkiem i informacjami o zdarzeniu do adresu URL. Na przykład, aby odpowiedzieć za każdym razem, gdy problem zostanie zgłoszony w repozytorium, wybierz pozycję Pozwól mi wybrać poszczególne zdarzenia, a następnie zaznacz pole wyboru Problemy . Upewnij się, że zaznaczono pole wyboru Aktywne , aby otrzymywać zdarzenia problemu dla wyzwolonych elementów webhook. Następnie wybierz pozycję Dodaj element webhook , aby aktywować wyzwalacz.

Aby nasłuchiwać aktualizacji strony typu wiki dla repozytorium, zaznacz pole wyboru Wiki. To zdarzenie jest zdarzeniem Gollum wspomnianym wcześniej. Wybierz pozycję Dodaj element webhook , aby zapisać wszystkie wybrane zdarzenia.

Pełną listę zdarzeń elementu webhook i ich uruchamiania można znaleźć, odwiedzając stronę Zdarzenia elementów webhook usługi GitHub.

W następnym ćwiczeniu omówimy proces konfigurowania elementu webhook dla repozytorium GitHub.