Skip to main content

Schnellstart zum Erstellen von GitHub Apps

Erstelle schnell eine GitHub App, die Pull Requests kommentiert.

Einführung

Mit GitHub Apps kannst du Prozesse automatisieren oder andere Plattformen in GitHub integrieren. Weitere Informationen findest du unter AUTOTITLE.

In dieser Schnellstartanleitung wird beschrieben, wie du schnell eine GitHub App erstellst. Wenn ein Pull Request in einem Repository geöffnet wird, auf das der App Zugriff gewährt wurde, fügt die App einen Kommentar zum Pull Request hinzu.

In dieser Schnellstartanleitung wird vorab geschriebener Code verwendet, um dir den Einstieg zu erleichtern. Ein ausführlicheres Tutorial als Unterstützung beim Schreiben des Codes findest du unter AUTOTITLE.

Voraussetzungen

Dein Computer oder Codespace muss die Node.js-Version 12 oder höher verwenden. Weitere Informationen findest du unter Node.js.

Schritt 1: Klonen des App-Codes

Um dir den Einstieg zu erleichtern, haben wir Code geschrieben, den du verwenden kannst. Weitere Informationen dazu, wie du den Code selbst schreibst, findest du unter AUTOTITLE.

  1. Klone das Repository github/github-app-js-sample. Weitere Informationen finden Sie unter AUTOTITLE. Du kannst einen lokalen Klon oder GitHub Codespaces verwenden.
  2. Navigiere in einem Terminalfenster zu dem Verzeichnis, in dem dein Klon gespeichert ist.
  3. Führe den Befehl aus, um die Abhängigkeiten zu installieren.

Schritt 2: Abrufen einer Webhook-Proxy-URL

Um deine App lokal zu entwickeln, kannst du eine Webhook-Proxy-URL verwenden, um Webhooks von GitHub an deinen Computer oder Codespace weiterzuleiten. In dieser Schnellstartanleitung wird „Smee.io“ verwendet, um eine Webhook-Proxy-URL bereitzustellen und Webhooks weiterzuleiten.

  1. Navigiere im Browser zu .
  2. Klicke auf Neuen Kanal starten.
  3. Kopiere die vollständige URL unter „Webhook-Proxy-URL“. Du verwendest diese URL in einem späteren Schritt.

Schritt 3: Registrieren einer GitHub App

Die folgenden Schritte führen dich durch die Konfiguration der App-Einstellungen, die für diese Schnellstartanleitung erforderlich sind. Weitere Informationen zu den Einstellungen findest du unter AUTOTITLE.

  1. Klicke auf GitHub in der oberen rechten Ecke einer beliebigen Seite auf dein Profilfoto.
  2. Navigieren Sie zu den Einstellungen für Ihr Konto.
    • Klicken Sie bei einer App, die zu einem persönlichen Konto gehört, auf Einstellungen.
    • Für eine App im Besitz einer Organisation:
      1. Klicke Sie auf Ihre Organisationen.
      2. Klicke dann rechts neben der Organisation auf Einstellungen.
  3. Klicke in der linken Randleiste auf Developer settings.
  4. Klicke auf der linken Randleiste auf GitHub Apps .
  5. Klicken Sie auf neuen GitHub App.
  6. Geben Sie unter „Name der GitHub App“ einen Namen für Ihre App ein. Beispielsweise , wobei dein GitHub-Benutzername ist.
  7. Gibt unter „Homepage-URL“ Folgendes ein: .
  8. Überspringe für diesen Schnellstart die Abschnitte „Identifizieren und Autorisieren von Benutzern“ und „Nach der Installation“. Weitere Informationen zu diesen Einstellungen findest du unter AUTOTITLE.
  9. Stelle sicher, dass unter „Webhooks“ die Option Aktiv ausgewählt ist.
  10. Gib unter „Webhook-URL“ deine Webhook-Proxy-URL von früher ein. Weitere Informationen findest du unter Schritt 2: Abrufen einer Webhookproxy-URL.
  11. Gib unter „Webhookgeheimnis“ eine zufällige Zeichenfolge ein. Du wirst diese Zeichenfolge später noch verwenden.
  12. Wähle unter „Repository-Berechtigungen“ neben „Pull Requests“ die Option Lesen und Schreiben aus.
  13. Wähle unter „Ereignisse abonnieren“ die Option Pull Request aus.
  14. Wählen Sie unter „Wo kann diese GitHub App installiert werden?“ die Option Nur in diesem Konto aus.
  15. Klicken Sie auf Erstellen von GitHub App.

Schritt 4: Speichern von Informationen für Identifizierung und Anmeldung

In dieser Schnellstartanleitung speicherst du die Anmeldeinformationen und Identifikationsdaten deiner App als Umgebungsvariablen in einer Datei. Wenn du deine App bereitstellst, musst du die Art und Weise ändern, in der die Anmeldeinformationen gespeichert werden. Weitere Informationen findest du unter Bereitstellen deiner App.

Stelle sicher, dass du dich auf einem sicheren Computer befindest, bevor du diese Schritte ausführst, da du deine Anmeldeinformationen lokal speicherst.

Erstellen der Datei

Dein geklontes Repository enthält in der Datei. Dadurch vermeidest du, versehentlich die Zugangsdaten deiner App zu veröffentlichen. Weitere Informationen zu Dateien finden Sie unter AUTOTITLE.

  1. Navigiere zu dem Verzeichnis, in dem dein Klon von github/github-app-js-sample gespeichert ist.

  2. Erstelle eine Datei namens [Dateiname] auf der obersten Verzeichnisebene.

  3. Füge der -Datei den folgenden Inhalt hinzu. Du aktualisierst die Werte in einem späteren Schritt.

    Text
    APP_ID="YOUR_APP_ID"
    WEBHOOK_SECRET="YOUR_WEBHOOK_SECRET"
    PRIVATE_KEY_PATH="YOUR_PRIVATE_KEY_PATH"
    

Wenn du die App-Einstellungen nach dem Erstellen der App verlassen hast, wechsle jetzt zur Einstellungsseite für deine App:

  1. Klicke auf GitHub in der oberen rechten Ecke einer beliebigen Seite auf dein Profilfoto.
  2. Navigieren Sie zu den Einstellungen für Ihr Konto.
    • Klicken Sie bei einer App, die zu einem persönlichen Konto gehört, auf Einstellungen.
    • Für eine App im Besitz einer Organisation:
      1. Klicke Sie auf Ihre Organisationen.
      2. Klicken Sie rechts neben der Organisation auf Einstellungen.
  3. Klicke in der linken Randleiste auf Developer settings.
  4. Klicke auf der linken Randleiste auf GitHub Apps .
  5. Klicke neben dem Namen deiner App auf Bearbeiten.

Erhalte die Anmeldeinformationen und Identifikationsdaten deiner App.

  1. Suche auf der Einstellungenseite deiner App neben „App-ID“ die App-ID für deine App.
  2. Ersetze in deiner Datei die vorhandene Zeichenfolge mit der App-ID deiner App.
  3. Klicke auf der Einstellungenseite deiner App unter „Private Schlüssel“ auf Privaten Schlüssel generieren. Es wird ein privater Schlüssel im PEM-Format auf deinen Computer heruntergeladen. Weitere Informationen finden Sie unter AUTOTITLE.
  4. Wenn du einen Codespace verwendest, verschiebe die heruntergeladene PEM-Datei in deinen Codespace, damit dein Codespace auf die Datei zugreifen kann.
  5. Ersetze in deiner -Datei durch den vollständigen Pfad zu deinem privaten Schlüssel, einschließlich der -Erweiterung.
  6. Ersetze in deiner Datei die Platzhalter durch das Webhook-Geheimnis für deine App. Wenn du dein Webhookgeheimnis vergessen hast, klicke unter „Webhookgeheimnis (optional)“ auf Geheimnis ändern. Gib ein neues Geheimnis ein, und klicke dann auf Änderungen speichern.

Schritt 5: Installieren der App

Damit deine App einen Kommentar zu Pull Requests in einem Repository hinterlassen kann, muss sie in dem Konto installiert werden, das das Repository besitzt, und ihr muss Zugriff auf dieses Repository gewährt werden. Da deine App privat ist, kann sie nur auf dem Konto installiert werden, das Besitzer der App ist.

  1. Erstelle in dem Konto, das Besitzer der von dir erstellten App ist, ein neues Repository zum Installieren der App. Weitere Informationen finden Sie unter AUTOTITLE.
  2. Wenn du die App-Einstellungen nach dem Erstellen der App verlassen hast, wechsle jetzt zur Einstellungsseite für deine App. Weitere Informationen findest du unter Navigieren zu deinen App-Einstellungen.
  3. Klicke auf Öffentliche Seite.
  4. Klicke auf Installieren.
  5. Nur ausgewählte Repositorys.
  6. Wähle das Dropdownmenü Repositorys auswählen aus, und klicke auf das Repository, das du am Anfang dieses Abschnitts ausgewählt hast.
  7. Klicke auf Installieren.

Schritt 6: Starten des Servers

Zum Testen verwendest du deinen Computer oder Codespace als Server. Deine App ist nur dann aktiv, wenn dein Server ausgeführt wird.

  1. Navigiere in einem Terminalfenster zu dem Verzeichnis, in dem dein Klon von github/github-app-js-sample gespeichert ist.

  2. Führe den Befehl „run“ aus, um weitergeleitete Webhooks von „Smee.io“ zu empfangen. Ersetze die Webhook-Proxy-URL mit deiner eigenen. Wenn du deine URL vergessen hast, findest du sie im Feld "Webhook-URL" auf der Einstellungenseite deiner App.

    Du solltest eine Ausgabe sehen, die etwa so aussieht, wobei deine Webhook-Proxy-URL ist.

    Forwarding WEBHOOK_PROXY_URL to http://localhost:3000/api/webhook
    Connected WEBHOOK_PROXY_URL
    
  3. Navigiere in einem zweiten Terminalfenster zu dem Verzeichnis, in dem dein Klon von github/github-app-js-sample gespeichert ist.

  4. Ausführen. Auf deinem Terminal sollte Folgendes angezeigt werden: .

Schritt 7: Testen der App

Dein Server wird jetzt ausgeführt und empfängt weitergeleitete Webhook-Ereignisse. Teste deine App, indem du einen Pull Request öffnest.

  1. Öffne einen Pull Request für das Repository, das du in Schritt 5: Installieren der App erstellt hast. Weitere Informationen finden Sie unter AUTOTITLE.
  2. Navigiere zu deiner Webhook-Proxy-URL auf „smee.io“. Es sollte ein -Ereignis angezeigt werden. Dies zeigt, dass GitHub beim Erstellen eines Pull Requests erfolgreich ein Pull Request-Ereignis gesendet hat.
  3. In dem Terminal, in dem Sie den Befehl ausgeführt haben, sollte etwas wie „Pull-Request-Ereignis für #1 empfangen“ angezeigt werden, wobei die ganze Zahl nach dem # die Nummer des Pull Requests ist, den Sie geöffnet haben.
  4. Auf der Zeitachse deines Pull Requests sollte ein Kommentar deiner App angezeigt werden. Der Kommentar verwendet den Inhalt der -Datei in deinem geklonten Repository.
  5. Gib in beiden Terminalfenstern "Ctrl+C" ein, um deinen Server zu beenden und den Empfang von weitergeleiteten Webhooks zu beenden.

Nächste Schritte

Du verfügst jetzt über eine App. Als Nächstes kannst du den Code deiner App erweitern, die App bereitstellen und sie öffentlich machen.

Ändern des App-Codes

Forke das Repository github/github-app-js-sample, und ändere den Code, um auf verschiedene Webhookereignisse zu reagieren oder verschiedene API-Anforderungen zu übermitteln. Weitere Informationen zum Code findest du unter AUTOTITLE.

Denke daran, die Berechtigungen deiner App zu aktualisieren, wenn deine App zusätzliche Berechtigungen für die API-Anforderungen benötigt, die du erstellen möchtest, oder die Webhookereignisse, die du empfangen möchtest. Weitere Informationen finden Sie unter AUTOTITLE.

Bereitstellen Ihrer App

In diesem Tutorial wurde dein Computer oder Codespace als Server verwendet. Sobald die App für die Verwendung in der Produktion bereit ist, solltest du deine App auf einem dedizierten Server bereitstellen. Sie können z. B. Azure App Service verwenden.

Wenn du über einen Server verfügst, aktualisiere die Webhook-URL in den Einstellungen deiner App. Du solltest „Smee.io“ nicht verwenden, um deine Webhooks in der Produktion weiterzuleiten.

Außerdem musst du die Konstanten <placeholder_1> und <placeholder_2> im Code aktualisieren. Weitere Informationen finden Sie unter AUTOTITLE.

Du solltest niemals den privaten Schlüssel deiner App oder das Webhookgeheimnis veröffentlichen. In diesem Tutorial wurden die Anmeldeinformationen deiner App in einer von Git ignorierten -Datei gespeichert. Wenn du deine App bereitstellst, solltest du eine sichere Methode zum Speichern der Anmeldeinformationen auswählen und deinen Code aktualisieren, um den Wert entsprechend abzurufen. Du kannst die Anmeldeinformationen beispielsweise in einer Umgebungsvariable auf dem Server speichern, auf dem deine App bereitgestellt ist. Sie können auch einen Geheimverwaltungsdienst wie Azure Key Vault verwenden.

Teilen Sie Ihre App

Wenn du deine App für andere Benutzer und Organisationen freigeben möchtest, mache deine App öffentlich. Weitere Informationen finden Sie unter AUTOTITLE.

Bewährte Methode befolgen

Du solltest Best Practices für deine GitHub App befolgen. Weitere Informationen finden Sie unter AUTOTITLE.