Verbinde dein GitHub-Konto oder deine GitHub-Organisation mit InfraNest, damit deine Automatisierungen auf Ereignisse in deinen Repositories reagieren und selbst Aktionen auf GitHub ausführen können. Das ist für alle gedacht, die möchten, dass InfraNest GitHub-Aktivitäten beobachtet oder GitHub-Issues, Deployments und Pull Requests automatisch verwaltet.
#Übersicht
- Nach dem Verbinden kann InfraNest Pushes, Pull Requests, Issues, Workflow-Läufe, Deployments, Releases und Checks beobachten und als Teil einer Automatisierung auf GitHub agieren – zum Beispiel ein Issue öffnen, einen Workflow starten, einen Pull Request mergen oder den Status eines Deployments aktualisieren.
- GitHub kann auch zur Verfolgung von Vorfällen und Befunden genutzt werden, ähnlich wie Jira oder Linear: Verbundene Konten können für jeden Vorfall ein GitHub-Issue öffnen und es automatisch schließen, wenn der Vorfall behoben ist.
- Mit der App verbundene Konten können außerdem ihre Deploys neben deinen Monitoren anzeigen.
#GitHub verbinden
Der einfachste und sicherste Weg ist, die InfraNest Automations-App in deinem GitHub-Konto oder deiner Organisation zu installieren.
- Gehe zu Integrationen und öffne GitHub.
- Wähle Verbinden (oder Konto hinzufügen, wenn du bereits eines verbunden hast).
- Wähle unter Install app die Option Verbinden. Ein GitHub-Fenster öffnet sich. Wähle das Konto oder die Organisation aus, auf der installiert werden soll, wähle All repositories oder nur die Repositories, die InfraNest sehen soll, und bestätige.
- GitHub fragt dich möglicherweise, ob InfraNest prüfen darf, welche Installationen dein Konto nutzen kann. So stellt InfraNest sicher, dass die Installation wirklich dir gehört, bevor sie verbunden wird.
- Du kehrst zu InfraNest zurück, und die Verbindung erscheint unter Accounts.
Du kannst mehr als ein Konto verbinden – zum Beispiel dein persönliches Konto und eine Organisation. Jedes erscheint als eigene Verbindung.
NoteInfraNest funktioniert nur mit GitHub.com. GitHub Enterprise Server (selbst gehostetes GitHub) wird nicht unterstützt.
#Kein Owner der GitHub-Organisation?
Nur ein Owner einer GitHub-Organisation kann Apps darin installieren. Bist du nur Mitglied, leitet GitHub deine Anfrage stattdessen an die Owner der Organisation weiter, und InfraNest zeigt Waiting for approval an. Du musst nichts weiter tun: Sobald ein Owner die Anfrage auf GitHub genehmigt, erscheint die Verbindung in dem Workspace, von dem aus du gestartet hast. Erscheint sie nach der Genehmigung durch den Owner nicht, verbinde erneut über InfraNest.
#Von GitHub aus installiert?
Hast du InfraNest Automations direkt über GitHub installiert (zum Beispiel über den GitHub Marketplace), bittet dich InfraNest, dich anzumelden oder ein Konto zu erstellen, und den Workspace zu wählen, zu dem die Installation gehören soll. Der Link, um das abzuschließen, ist 30 Minuten lang gültig; danach verbinde GitHub stattdessen über InfraNest.
#Kannst du die App nicht installieren?
Wenn du in deinem GitHub-Konto oder deiner Organisation keine Apps installieren darfst, kannst du stattdessen mit einem Personal Access Token verbinden: Wähle API token statt Install app. Ein Token erlaubt Automatisierungen, auf GitHub zu agieren, kann sie aber nicht auslösen – GitHub-Trigger funktionieren nur mit der App.
#Festlegen, was InfraNest sehen kann
Beim Installieren der App legst du fest, auf welche Repositories InfraNest Zugriff hat. Um das später zu ändern, öffne die App auf GitHub (unter den Einstellungen deines Kontos oder deiner Organisation unter Settings → GitHub Apps → InfraNest Automations) und passe die ausgewählten Repositories an.
#GitHub trennen
- Öffne GitHub im Integrationen-Hub.
- Gehe zu Connections & settings.
- Wähle Disconnect.
Dadurch wird die App auch auf GitHub deinstalliert, sodass InfraNest keinen Zugriff mehr hat. Ist dieselbe Installation mit einem anderen Workspace geteilt, bleibt sie dort bestehen. Bei einer mit Connect with GitHub hergestellten Verbindung wird der Zugriff auf GitHub auf dieselbe Weise entzogen.
Disconnect zeigt zuerst in einem Dialog, was gestoppt wird, was InfraNest entfernt und was erhalten bleibt. Jede Automatisierung, die die Verbindung genutzt hat, wird abgeschaltet, damit keine davon später stillschweigend fehlschlägt. Der Rest deines Teams erhält eine Benachrichtigung mit dem Namen der Person, die die Verbindung getrennt hat, und den abgeschalteten Automatisierungen; da du es selbst warst, erhältst du keine. Beendet GitHub die Verbindung von seiner Seite aus, werden alle benachrichtigt. Issues for Incidents wird zusammen mit der Verbindung entfernt, und wird dieselbe Installation innerhalb von 30 Tagen erneut verbunden, bietet InfraNest an, sie wie zuvor wieder einzuschalten.
Deinstalliert oder sperrt jemand die App direkt auf GitHub, bemerkt InfraNest das: Die Verbindung wird als fehlerhaft angezeigt, mit Removed on the provider's side oder Suspended on the provider's side unter ihrem Namen, sie wird unter Needs attention aufgeführt, du erhältst eine Benachrichtigung, und Automatisierungen, die sie nutzen, stoppen mit einer Meldung, die den Grund nennt. Um sie wiederherzustellen, verbinde GitHub erneut mit demselben Konto (oder hebe die Sperre der App auf GitHub auf). Deine Automatisierungen behalten ihre Einstellungen und funktionieren sofort wieder. Werden der App auf GitHub Repositories entzogen, listet die Verbindung auf, auf welche sie nicht mehr zugreifen kann.
Bittet GitHub InfraNest wegen seines Rate Limits, langsamer zu machen, wird die Verbindung unter Needs attention als wartend bis zu einem bestimmten Zeitpunkt aufgeführt. Es gibt nichts zu reparieren: Es löst sich von selbst, auf „Erneut versuchen“ eingestellte Schritte versuchen es automatisch erneut, und der Hinweis verschwindet, sobald das Limit zurückgesetzt wird.
#Was InfraNest behält
InfraNest erhält von GitHub ein Ereignis für jeden Push, jedes Issue, jeden Kommentar, jeden Pull Request und so weiter in den von dir gewählten Repositories – unabhängig davon, ob eine Automatisierung es nutzt.
- Ereignisverlauf – wird genutzt, um zu zeigen, wie oft eine Automatisierung im Entwurfsstatus gelaufen wäre. Er speichert, welches Repository, welche Issue- oder Pull-Request-Nummer, wer es getan hat und was passiert ist, für 45 Tage. Er speichert nicht die von Personen geschriebenen Texte: Titel von Issues und Pull Requests, Kommentare, Release-Namen und -Beschreibungen bleiben außen vor.
- Lauf-Verlauf – wenn eine Automatisierung tatsächlich läuft, speichert ihr Lauf das vollständige Ereignis, auf das sie reagiert hat, einschließlich Kommentartext, für 90 Tage. Nur Mitglieder, deren Rolle das Bearbeiten von Automatisierungen erlaubt, können ihn einsehen. Alle anderen sehen, dass ein Lauf stattgefunden hat und ob er erfolgreich war.
Das Trennen stoppt das Eintreffen neuer Ereignisse. Was InfraNest bereits gespeichert hat, wird entfernt, sobald die 45 bzw. 90 Tage abgelaufen sind.
#Unter welchem Namen agiert wird
Als GitHub App installiert, erstellt InfraNest Issues und Kommentare als infranest[bot], nicht als persönliches Konto einer Person. Mit einem Personal Access Token verbunden, erstellt es sie als das GitHub-Konto, zu dem das Token gehört. Die Zeile der Verbindung auf der GitHub-Seite zeigt an, welches davon zutrifft.
In jedem Fall endet jedes Issue mit Filed from InfraNest by und dem Namen der Person, die es angefordert hat – oder Filed by InfraNest automatically, wenn eine Automatisierung es angelegt hat – und eine ins Issue kopierte Team-Notiz beginnt mit dem Namen der Person, die sie geschrieben hat. Verlässt die Person, deren Token eine Verbindung nutzt, deinen InfraNest-Workspace, erhalten dessen Owner und Admins eine Nachricht sowie eine E-Mail mit einem Link, um GitHub erneut zu verbinden.
#Tipps
TipTeambasierte Funktionen, wie das Anfordern eines Reviews von einem Team, funktionieren nur, wenn du eine Organisation verbindest, nicht ein persönliches Konto.
#Fehlerbehebung
- „We couldn't confirm your access“ — du warst mit einem GitHub-Konto angemeldet, das diese Installation nicht nutzen kann. Melde dich bei GitHub mit dem Konto an, das die App installiert hat, und verbinde erneut.
- „Took too long“ — starte die Verbindung erneut über InfraNest.
- Deine Zugangsdaten werden sicher gespeichert und nie wieder angezeigt.
War dieser Artikel hilfreich?
Danke für dein Feedback!
Danke, das geht direkt an das Docs-Team.