Verfolgen Sie mithilfe dieser API die GitHub-Repository-Aktivität in Echtzeit auf Slack.

Durch die Integration von GitHub mit Slack können Sie die Kommunikation Ihres Teams optimieren, indem Sie es über Repository-Ereignisse in Echtzeit informieren. Diese Integration trägt dazu bei, effizienter zusammenzuarbeiten, Änderungen im Kontext der Codebasis zu besprechen und eventuell während der Entwicklung auftretende Bedenken schnell auszuräumen.

Darüber hinaus können Sie durch die Integration von GitHub mit Slack Benachrichtigungen an den individuellen Arbeitsablauf Ihres Teams anpassen. Dies minimiert Ablenkungen und konzentriert sich auf das Wesentliche. Dieser maßgeschneiderte Kommunikationsansatz versetzt Ihr Team in die Lage, fundierte Entscheidungen zu treffen und rechtzeitig Maßnahmen zu ergreifen, um so die höchste Qualität der Ergebnisse zu gewährleisten.

Schritt 1: Erstellen Sie eine neue Slack-App

Um es durchzuhalten, sollten Sie sich wohlfühlen Nutzung der Slack-Plattform. Sie sollten auch mit GitHub vertraut sein.

instagram viewer

Der erste Schritt der Integration ist die Erstellung einer neuen Slack-App. Diese App ist für die Veröffentlichung von Nachrichten auf dem ausgewählten Slack-Kanal verantwortlich, wenn ein Repository-Ereignis auftritt. Um eine neue App zu erstellen, navigieren Sie zu Slack-Website und melden Sie sich bei Ihrem Konto an. Erstellen Sie dann einen neuen Arbeitsbereich. Sie verwenden diesen Arbeitsbereich, um Ihre App zu testen, bevor Sie sie im Arbeitsbereich Ihres Teams installieren.

Navigieren Sie zu Slack-API-Website in einem neuen Browser-Tab.

Klicke auf Ihre Apps Taste. Klicken Sie auf der angezeigten Seite auf Neue App erstellen Taste.

Wählen Sie die Option, die App von Grund auf zu erstellen. Benennen Sie dann Ihre App und wählen Sie den Arbeitsbereich aus, in dem Sie sie installieren möchten.

Klick auf das App erstellen Taste. Diese Aktion erstellt Ihre neue Slack-App und leitet Sie zu ihrem Dashboard weiter.

Schritt 2: Richten Sie einen eingehenden Slack-Webhook ein

Mit einem eingehenden Slack-Webhook können Sie Nachrichten von externen Quellen in Ihren Slack-Arbeitsbereich senden. Um den Webhook einzurichten, wählen Sie Eingehende Webhooks Besonderheit. Stellen Sie sicher, dass Sie das einschalten Aktivieren Sie Eingehende Webhooks Taste.

Scrollen Sie nach unten zum Webhook-URLs für Ihren Arbeitsbereich Abschnitt. Klick auf das Neuen Webhook zum Arbeitsbereich hinzufügen Taste.

Slack fordert Sie auf, den Kanal auszuwählen, in dem Ihre App Nachrichten veröffentlichen soll. Wählen Sie den Kanal und klicken Sie auf Erlauben Taste.

Dadurch wird Ihre App zum ausgewählten Kanal hinzugefügt. Gehen Sie zurück zum Webhook-URLs für Ihren Arbeitsbereich Abschnitt. Kopieren Sie das generierte Webhook-URL. Dies ist die URL, an die GitHub die Repository-Ereignisbenachrichtigungen sendet.

Sie sind nun mit der Konfiguration der Slack-Seite fertig.

Schritt 3: Konfigurieren Sie das GitHub-Repo

Navigieren Sie zu GitHub-Website und melden Sie sich bei Ihrem Konto an. Gehen Sie zu dem Repository, von dem Sie die Ereignisbenachrichtigungen erhalten möchten. Du kannst auch Erstellen Sie ein neues Repository. Klick auf das Aktionen Registerkarte unter dem Repository-Namen.

Klicken Sie dann auf Richten Sie selbst einen Workflow ein Verknüpfung. Auf der nächsten angezeigten Seite müssen Sie eine YAML-Datei im GitHub-Workflows-Verzeichnis erstellen. Diese Datei definiert den GitHub Actions-Workflow, der für das Senden von Benachrichtigungen an Ihren Slack-Arbeitsbereich verantwortlich ist.

Sie schreiben den YAML-Code im integrierten Editor. Dieser Code integriert GitHub mit Slack, indem er Benachrichtigungen an einen Slack-Kanal sendet, wenn bestimmte Ereignisse im Repository auftreten.

Der vollständige Quellcode, der in diesem Artikel verwendet wird, ist in a verfügbar GitHub-Repository.

Schritt 4: Schreiben Sie den YAML-Code für die Integration von GitHub mit Slack

Benennen Sie Ihren Workflow. Fühlen Sie sich frei, den Namen zu wählen, der Ihnen gefällt.

Name:LockerBenachrichtigung

Geben Sie die Ereignisse an, die den Workflow auslösen. Hier wählen Sie die Ereignisse aus, über die Ihr Team benachrichtigt werden soll. Fügen Sie die Ereignisse entsprechend Ihren Anforderungen hinzu oder entfernen Sie sie.

An:
drücken:
pull_request:
Themen:
Typen:
-geöffnet
-geschlossen
-wiedereröffnet
-bearbeitet
-gelöscht
-angepinnt
-nicht angepinnt
-zugewiesen
-nicht zugewiesen
-beschriftet
-unbeschriftet
-Meilenstein erreicht
-entmauert
Issue_comment:
Typen:[erstellt,bearbeitet,gelöscht]
erstellen:
löschen:

Konfigurieren Sie Ihren Job und wählen Sie die virtuelle Umgebung aus, in der er ausgeführt werden soll. notify_slack ist der Name des Jobs. Sie können es nach Ihren Wünschen ändern.

Arbeitsplätze:
notify_slack:
läuft auf:Ubuntu-neueste

Richten Sie einen Schritt ein, der für das Senden einer Benachrichtigung an Slack verantwortlich ist.

Schritte:
-Name:SchickenLockerBenachrichtigung

Definieren Sie eine Umgebungsvariable mit dem Namen SLACK_WEBHOOK_URL. Es speichert die Slack-Webhook-URL. Später fügen Sie die URL zu den Repository-Geheimnissen von GitHub hinzu.

Umgebung:
SLACK_WEBHOOK_URL:${{Geheimnisse. SLACK_WEBHOOK_URL}}

Konfigurieren Sie die Action-Slack GitHub-Aktion. Hierbei handelt es sich um eine Drittanbieteraktion, die die zugrunde liegende Logik der Interaktion mit der Slack-API verwaltet. Dadurch können Sie sich auf die Konfiguration der Nachrichten und Ereignisse konzentrieren, die die Benachrichtigungen auslösen. Dadurch wird das Versenden von Benachrichtigungen an Slack erheblich vereinfacht.

Verwendet:8398a7/action-slack@v3

Dieser Code verwendet die 8398a7/action-slack@v3Aktion.

Konfigurieren Sie die 8398a7/action-slack@v3 Aktion mit benutzerdefinierten Parametern. Der Status Parameter setzt den Nachrichtenstatus auf Brauch. Damit können Sie den Inhalt der Slack-Nachricht mithilfe einer benutzerdefinierten Nutzlast definieren. Der Felder Der Parameter listet die Felder auf, die in die Slack-Nachricht aufgenommen werden sollen.

mit:
Status:Brauch
Felder:Repo, Commit, Ereignis, Aktion, Workflow, Ref, URL

Ein... kreieren benutzerdefinierte_Nutzlast Dadurch wird das Erscheinungsbild der Slack-Nachricht an Ihre Vorlieben angepasst.

benutzerdefinierte_Nutzlast:|
{
"Anhänge":[
{
"Farbe":"${{ Beruflicher Status }}",
"Titel":>-
${{github.actor}}${{github.event.pull_request&&github.event.pull_request.merged==WAHR&&„Eine Pull-Anfrage zusammengeführt“||github.event.pull_request&&'hat eine Pull-Anfrage geöffnet'||github.event_name=='drücken'&&„Neue Änderungen vorangetrieben“||github.event_name=='erstellen'&&'hat einen neuen Zweig oder ein neues Tag erstellt'||github.event_name=='löschen'&&„Einen Zweig oder Tag gelöscht“||github.event_name=='Themen'&&github.event.action||„hat ein Ereignis ausgelöst“}},
"Text":>-
:tada:Veranstaltungsdetails:

-Repository:${{github.repository}}
-Zweig:${{github.ref}}
-Nachricht:${{github.event_name=='drücken'&&github.event.head_commit.message||github.event_name=='Themen'&&github.event.issue.title||github.event_name=='pull_request'&&github.event.pull_request.title||''}}
-:globe_with_meridians:Verknüpfung:${{github.event.pull_request.html_url||github.event.issue.html_url||github.event.repository.html_url}}
}

]
}

Sie können sich auf die beziehen 8398a7/action-slack@v3 benutzerdefinierter Anwendungsfall um alle unterstützten Anpassungen zu finden. Übertragen Sie die YAML-Datei, um den neuen Workflow zu erstellen.

Der letzte Schritt der Integration von GitHub mit Slack ist das Hinzufügen eines neuen Repository-Geheimnisses. Das Geheimnis liegt in diesem Fall darin Slack-Webhook-URL Du hast von Slack kopiert. Halten Sie diese URL geheim, da jeder, der Zugriff darauf hat, Nachrichten an Ihren Arbeitsbereich senden kann.

Navigieren Sie zu Ihren Repository-Einstellungen. Klick auf das Geheimnisse und Variablen unter dem Sicherheit Besonderheit. Wähle aus Aktionen Möglichkeit.

Klicke auf Neues Repository-Geheimnis. Fügen Sie den Namen des Geheimnisses hinzu als SLACK_WEBHOOK_URL. Dann fügen Sie das ein Slack-URL in das Feld „Geheim“ ein. Klicken Sie abschließend auf Geheimnis hinzufügen Klicken Sie auf die Schaltfläche, um das neue Geheimnis zu speichern.

Sie haben die Integration von GitHub mit Slack nun abgeschlossen. Jedes Mal, wenn in Ihrem Repository ein Ereignis auftritt, wird eine Nachricht in Ihrem Kanal angezeigt. Versuchen Erstellen einer neuen Pull-Anfrage. Dadurch wird ein Push-Ereignis ausgelöst.

Der Screenshot unten zeigt Beispielnachrichten auf Slack mit Ereignissen, die in einem Repository stattgefunden haben.

Sie können die Nachrichtennutzlast anpassen, um weitere Felder einzuschließen, die Sie möglicherweise für erforderlich halten.

Verbessern Sie Ihre Produktivität mit Slack-Integrationen

GitHub ist nicht die einzige Slack-Integration, die Sie Ihrem Arbeitsbereich hinzufügen können. Es gibt zahlreiche Integrationen, mit denen Sie die Produktivität Ihres Teams steigern und seine Kommunikation verbessern können. Wenn Sie sich mit diesen Integrationen vertraut machen, können Sie den Arbeitsablauf Ihres Teams optimieren und alle auf dem gleichen Stand halten.