Övning – Konfigurera en webhook för en GitHub-lagringsplats

Slutförd

I den här övningen konfigurerar du en webhook för en GitHub-lagringsplats. Du lär dig att lyssna efter specifika händelser. i det här fallet Gollum-händelsen . Du får också lära dig hur du skapar återanropet för webhooken i din funktion när händelsen utlöses.

Ställ in

  1. Logga in på ditt GitHub-konto med hjälp av webbläsaren.

  2. Skapa en ny lagringsplats genom att välja Nytt i det vänstra menyfönstret. Sidan Skapa en ny lagringsplats visas.

  3. I rutan Lagringsplatsnamn anger du ett beskrivande namn, till exempel LearnWebhookTest.

  4. Välj Offentlig för att aktivera wiki-modulen och hitta den på menyn.

  5. Välj Skapa lagringsplats. Sidan Snabbkonfiguration visas.

  6. Välj länken skapa en ny fil .

  7. I den översta menyraden väljer du Wiki för att visa sidorna på lagringsplatsen (eller lagringsplatsen). En välkomstsida visas.

  8. Välj Skapa den första sidan. Mallen Skapa ny sida visas.

  9. Lägg till text och välj Spara sida. Den första sidan i en Wiki är startsidan.

Lägga till en webhook för Gollum-händelsen

Gollum är namnet på en GitHub-händelse som utlöses när en sida i en lagringsplatss wiki skapas eller uppdateras.

  1. På startsidan i Wiki-vyn finns det ett sidofält för sidor som visar sidorna i din lagringsplats. Välj Start för att visa startsidan.

  2. På startsidan går du till den översta menyraden och väljer Inställningar. Fönstret Inställningar visas.

  3. I sidofältet Inställningar väljer du Webhooks. Fönstret Webhooks visas.

  4. Längst upp till höger väljer du Lägg till webhook. GitHub kan be dig bekräfta ditt lösenord för GitHub.

  5. I fönstret Webhooks/Add webhook anger du följande värden för varje inställning.

    Inställning Värde
    Webbadress för nyttolast URL för din Azure-funktionsapp från föregående övning. Mer information finns i följande anteckning.
    Innehållstyp I listrutan väljer du program/json.
    Vilka händelser vill du utlösa den här webhooken? Välj Låt mig välja enskilda händelser. I händelselistan som visas rullar du nedåt och markerar kryssrutan Wiki . Kontrollera att inga andra kryssrutor är markerade.
    Aktiv Markerad.

    Dricks

    Kopiera funktions-URL:en från fönstret Azure HttpTrigger genom att välja Hämta funktions-URL från kommandofältet. Url:en ser ut ungefär så här: https://<your-functionapp-name>.azurewebsites.net/api/HttpTrigger1?code=aUjXIpqdJ0ZHPQuB0SzFegxGJu0nAXmsQBnmkCpJ6RYxleRaoxJ8cQ==

  6. Välj Lägg till webhook. Fönstret Webhooks visas.

  7. Kontrollera att den nya webhooken visas. Det bör ha (gollum) i slutet av sitt namn.

Testa din webhook

  1. I GitHub går du till den översta menyraden och väljer Wiki. Startsidan som du skapade tidigare visas.

  2. Välj Redigera. Fönstret Redigeringshem visas.

  3. I textområdet i fönstret anger du följande text:

    Testing Webhook
    
  4. Välj Spara sida. Startsidan visas igen.

  5. I den översta menyraden väljer du Inställningar. Fönstret Inställningar visas.

  6. I sidofältet väljer du Webhooks. Fönstret Webhooks visas.

  7. Välj Redigera. Webhooks/Manage webhook-fönstret visas.

  8. Välj din Webhook och välj sedan fliken Senaste leveranser .

  9. I listan väljer du den översta (senaste) leveransposten genom att välja ellipsen (...).

    Du bör se avsnittet Rubriker , inklusive händelsen:

    Request URL: https://testwh123456.azurewebsites.net/api/HttpTrigger1?code=aUjXIpqdJ0ZHPQuB0SzFegxGJu0nAXmsQBnmkCpJ6RYxleRaoxJ8cQ%3D%3D
    Request method: POST
    Accept: */*
    content-type: application/json
    User-Agent: GitHub-Hookshot/16496cb
    X-GitHub-Delivery: 9ed46280-6ab3-11e9-8a19-f1a14922a239
    X-GitHub-Event: gollum
    X-GitHub-Hook-ID: 312141005
    X-GitHub-Hook-Installation-Target-ID: 394459163
    X-GitHub-Hook-Installation-Target-Type: repository
    

    Du bör också se att avsnittet Payload innehåller information som anger att wiki-sidan har redigerats. Nyttolasten innehåller avsnitten sidor, arkiv och avsändare, och som bör se ut ungefär som följande exempel.

        "pages": [
            {
                "page_name": "Home",
                "title": "Home",
                "summary": null,
                "action": "edited",
                "sha": "04d012c5f92a95ae3f7721173bf9f2b1b35ea22f",
                "html_url": "https://github.com/.../wiki/Home"
            }
        ],
        "repository" : {
            "id": 176302421,
            "node_id": "MDEwOlJlcG9zaXRvcnkxNzYzMDI0MjE=",
            "name": "tieredstorage",
            ...
        },
        "sender" : {
            ...
        }
    
  10. Under fliken Senaste leveranser väljer du fliken Svar .

    Du bör se svarsmeddelandet som genereras av Azure-funktionen. I det här exemplet ska brödtexten innehålla meddelandet: Den här HTTP-utlösta funktionen har körts. Skicka ett namn i frågesträngen eller i begärandetexten för ett personligt svar.