Integration externer Dienste
Verbinden Sie Ihre GitHub-Actions-Workflows mit Monitoring-, Logging- und Incident-Management-Tools von Drittanbietern.
Integration externer Dienste ist eine kostenlose DevOps Bootcamp-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Ihre Pipelines verbinden
Willkommen bei der Integration von GitHub Actions in externe Dienste! Die moderne Softwareentwicklung beruht darauf, dass viele Tools zusammenarbeiten.
Wenn Sie Ihre CI/CD-Pipelines mit diesen Tools verbinden, können Sie die Kommunikation automatisieren, Daten zentralisieren und die Effizienz Ihres gesamten Teams steigern.
- Benachrichtigungen: Erhalten Sie Benachrichtigungen in Slack oder Teams.
- Issue-Tracking: Erstellen Sie automatisch JIRA-Tickets.
- Monitoring: Senden Sie Daten an Datadog oder Splunk.
Webhooks: Die grundlegende Verbindung
Viele externe Dienste verwenden Webhooks als primäre Möglichkeit, Informationen zu empfangen. Stellen Sie sich einen Webhook als automatisierte Nachricht vor, die von einer Anwendung an eine andere gesendet wird, sobald ein bestimmtes Ereignis eintritt.
Wenn Ihr GitHub-Actions-Workflow abgeschlossen ist, fehlschlägt oder einen bestimmten Step ausführt, kann er eine POST-Anfrage mit Daten an eine von einem externen Dienst bereitgestellte Webhook-URL senden. Dadurch wird eine Aktion in diesem Dienst ausgelöst.
Slack: Echtzeitbenachrichtigungen
Echtzeitbenachrichtigungen über den Status Ihres Workflows zu erhalten, ist entscheidend. Slack ist dafür ein sehr verbreitetes Tool.
Um eine Nachricht aus GitHub Actions an Slack zu senden, benötigen Sie in der Regel eine Slack Incoming Webhook URL. Diese URL können Sie in den Einstellungen Ihres Slack-Workspace erstellen, beispielsweise unter „Apps & integrations“.
Wichtig: Speichern Sie diese vertrauliche URL immer als GitHub Secret und tragen Sie sie niemals fest in Ihren Workflow-Dateien ein.
Workflow für Slack-Benachrichtigungen
So können Sie mit einem einfachen curl-Befehl in Ihrem Workflow eine grundlegende Slack-Benachrichtigung senden. Dabei wird die Webhook-URL aus einem Secret mit dem Namen SLACK_WEBHOOK_URL verwendet.
Dieses Beispiel benachrichtigt Sie bei jedem Push auf main.
name: Slack Notification Demo
on:
push:
branches:
- main
jobs:
notify:
runs-on: ubuntu-latest
steps:
- name: Send Slack Notification
run: |
curl -X POST -H 'Content-type: application/json' \
--data '{"text":"GitHub Actions workflow *${{ github.workflow }}* for commit `{{ github.sha }}` by _${{ github.actor }}_ on branch `${{ github.ref_name }}` has completed!"}' \
${{ secrets.SLACK_WEBHOOK_URL }}Mit Marketplace Actions vereinfachen
curl funktioniert zwar, viele Integrationen lassen sich jedoch mit vorgefertigten GitHub Marketplace Actions vereinfachen. Diese Actions kapseln die Logik für die Kommunikation mit bestimmten Diensten und machen Ihre Workflows übersichtlicher und leichter lesbar.
Sie können im GitHub Marketplace nach Actions suchen, die eine Verbindung zu dem gewünschten Dienst herstellen. Beispielsweise gibt es zahlreiche Actions für Slack, JIRA, Microsoft Teams und weitere Dienste.
JIRA: Issue-Tracking automatisieren
Die Integration in Issue-Tracking-Systeme wie JIRA kann Aufgaben automatisieren, zum Beispiel:
- Erstellen eines neuen Fehler-Tickets, wenn ein Workflow fehlschlägt.
- Hinzufügen von Kommentaren zu bestehenden Issues auf Grundlage von Pull-Request-Ereignissen.
- Aktualisieren von Issue-Status, während der Code die Pipeline durchläuft.
So bleiben Ihre Entwicklungs- und Betriebsteams ohne manuellen Aufwand aufeinander abgestimmt.
Workflow für JIRA-Issues
Dieses Beispiel verwendet eine beliebte Marketplace Action, um ein JIRA-Issue zu erstellen, wenn ein bestimmter Workflow, beispielsweise Ihr CI-Workflow, fehlschlägt. Beachten Sie, dass GitHub Secrets zur Authentifizierung verwendet werden.
Mit dem Trigger workflow_run kann dieser Workflow auf den Abschluss eines anderen Workflows reagieren.
name: JIRA Issue on Failed Workflow
on:
workflow_run:
workflows: ["Your CI Workflow Name Here"]
types:
- completed
jobs:
create_issue:
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
runs-on: ubuntu-latest
steps:
- name: Create JIRA Bug Ticket
uses: atlassian/github-jira-action@v2.1.0
with:
jira-base-url: ${{ secrets.JIRA_BASE_URL }}
jira-user-email: ${{ secrets.JIRA_USER_EMAIL }}
jira-api-token: ${{ secrets.JIRA_API_TOKEN }}
project: 'DEV'
issue-type: 'Bug'
summary: 'Workflow failed: ${{ github.event.workflow_run.workflow_name }}'
description: 'Workflow run URL: ${{ github.event.workflow_run.html_url }}\nFailed commit: ${{ github.event.workflow_run.head_sha }}'Mit Monitoring und Logs verbinden
Neben Benachrichtigungen und Issue-Tracking können Sie auch fortschrittliche Monitoring- und Logging-Tools wie Datadog, Splunk, New Relic oder benutzerdefinierte Log-Aggregatoren integrieren.
- Metriken: Senden Sie benutzerdefinierte Metriken zu Build-Zeiten oder Testergebnissen.
- Logs: Leiten Sie Workflow-Logs zur zentralen Analyse weiter.
- Tracing: Verknüpfen Sie Bereitstellungsereignisse mit der Anwendungsleistung.
Diese Integrationen verwenden häufig bestimmte APIs oder dedizierte Marketplace Actions, die von den jeweiligen Tool-Anbietern bereitgestellt werden.
Ihre Integrationen absichern
Bei der Integration externer Dienste hat Sicherheit höchste Priorität. Häufig arbeiten Sie dabei mit API-Schlüsseln, Tokens und Webhook-URLs, die Zugriff auf Ihre externen Konten gewähren.
Verwenden Sie zum Speichern dieser vertraulichen Zugangsdaten immer GitHub Secrets. Tragen Sie sie niemals direkt in Ihre Workflow-Dateien ein. So verhindern Sie eine versehentliche Offenlegung und schützen Ihre Zugangsdaten.
Schnellcheck: Integrationssicherheit
Sie müssen Ihren GitHub-Actions-Workflow über einen API-Schlüssel mit einem externen Incident-Management-System verbinden. Welche Methode ist für den Umgang mit diesem API-Schlüssel in Ihrem Workflow am sichersten und empfehlenswertesten?
Zusammenfassung: Integrierte Workflows
Sie haben gelernt, wie Sie Ihre GitHub-Actions-Workflows in verschiedene externe Dienste integrieren.
- Webhooks sind ein gängiger Mechanismus für diese Verbindungen.
- Slack und JIRA sind beliebte Beispiele für Benachrichtigungen und Issue-Tracking.
- GitHub Marketplace Actions vereinfachen komplexe Integrationen.
- Verwenden Sie immer GitHub Secrets, um vertrauliche Zugangsdaten wie API-Schlüssel und Webhook-URLs sicher zu verwalten.
Durch diese Integrationen werden Ihre CI/CD-Pipelines leistungsfähiger und besser mit dem weiteren Ökosystem Ihres Teams verbunden.
Häufig gestellte Fragen
Ist die Lektion „Integration externer Dienste“ kostenlos?
Ja — der vollständige Text von „Integration externer Dienste“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des DevOps Bootcamp-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Integration externer Dienste“?
Verbinden Sie Ihre GitHub-Actions-Workflows mit Monitoring-, Logging- und Incident-Management-Tools von Drittanbietern. Du übst DevOps Bootcamp mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um DevOps Bootcamp zu starten?
Keine Vorkenntnisse erforderlich. DevOps Bootcamp auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Integration externer Dienste“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser DevOps Bootcamp-Lektion Code schreiben und ausführen?
Ja. Jede DevOps Bootcamp-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Strategien für das Pipeline-Monitoring
- Integration externer Dienste
- Benachrichtigungen und Alerts einrichten
- Strukturiertes Logging und verteiltes Tracing