Zum Hauptinhalt springen

GitHub Integration

Überblick über die GitHub Integration​

SEW unterstützt derzeit die Integration mit GitHub, sodass Sie Ihr GitHub-Konto und Ihre Repositories direkt mit der Plattform verknüpfen können. Über diese Verbindung kann GitHub als lokales, versionsverwaltetes Repository dienen, das mit dem SEW-Repository synchron bleibt. Administratoren können die Authentifizierung konfigurieren, Repositories auswählen und Synchronisierungseinstellungen verwalten – so können Teams ihre vertrauten GitHub-Workflows beibehalten und gleichzeitig von der zentralen Projektverwaltung und den Automatisierungsfunktionen von SEW profitieren.

Wesentliche Merkmale der Integration​

Die Integration von GitHub mit SEW bietet mehrere Vorteile:

  • Optimierter Workflow: Nahtlose Verbindung der leistungsstarken Versionsverwaltung von GitHub mit der PLC-Projektversionierung und den PLC-Verwaltungsfunktionen von SEW, wodurch die Zusammenarbeit im Team verbessert wird.
  • Zentrale Verwaltung: Kombinieren Sie Code-Repositories und die PLC-Projektverwaltung in einer einzigen Plattform, um Administration und Zugriffssteuerung zu vereinfachen.
  • Automatisierung und Bereitstellung: Nutzen Sie die Pipelines von SEW für automatisierte Bereitstellungsfunktionen, um Projektfreigaben direkt aus GitHub-Repositories zu vereinfachen.
  • Zusammenarbeit in Echtzeit: Aktualisierungen und Änderungen werden unmittelbar synchronisiert, sodass alle Teammitglieder mit der aktuellsten Projektversion arbeiten.

Durch die Integration von GitHub mit SEW kann Ihr Team Produktivität und Projekteffizienz steigern.

SEW mit GitHub verbinden​

GitHub für die SEW Integration konfigurieren​

  1. Bei GitHub anmelden: Stellen Sie sicher, dass Ihre GitHub-Zugangsdaten bereitliegen.
  2. Personal Access Token erzeugen: Um SEW Zugriff zu gewähren, öffnen Sie die Developer settings, wählen Sie Personal access tokens und erstellen Sie ein neues Fine-grained token. Setzen Sie die Berechtigungen auf Contents und Metadata für die Repositories, die Sie freigeben möchten.
  3. Token kopieren: Bewahren Sie Ihr Token sicher auf, da es während des Authentifizierungsvorgangs in SEW verwendet wird.

Wenn Sie diese Vorbereitungsschritte befolgen, ist Ihr GitHub-Konto für die Integration mit SEW bereit, sodass Sie von einer verbesserten Zusammenarbeit und Projektverwaltung profitieren.

Ihr GitHub-Konto mit Ihrem SEW-Konto verbinden​

Um Ihre SEW-Plattform mit GitHub zu verbinden, führen Sie die folgenden Schritte aus:

  1. Einstellungen aufrufen: Navigieren Sie zur SEW-Plattform und öffnen Sie den Bereich „General Settings“.
  2. Neue Integration erstellen: Wechseln Sie in den Bereich Integrations und fügen Sie über „Add Integration“ eine neue Integration hinzu.
  3. GitHub-Konto authentifizieren: Geben Sie im Fenster „Add Integration“ den Integrationsnamen ein und fügen Sie Ihr GitHub-Access-Token ein.

Webhooks für automatische Aktualisierungen konfigurieren​

Damit automatische Aktualisierungen möglich sind und SEW zeitnah über Änderungen informiert wird, müssen Sie Webhooks in Ihren GitHub-Repositories entsprechend einrichten. So konfigurieren Sie diese Funktion:

  1. Repository-Einstellungen aufrufen:

    • Navigieren Sie zunächst zu Ihrem GitHub-Repository.
    • Klicken Sie auf den Tab „Settings“, der sich in der Regel am rechten Ende der Repository-Navigationsleiste befindet.
  2. Bereich „Webhooks“ finden:

    • Scrollen Sie in den Einstellungen nach unten oder suchen Sie im linken Menü nach der Option „Webhooks“.
    • Klicken Sie auf „Webhooks“, um Hooks zu verwalten und neue hinzuzufügen.
  3. Neuen Webhook erstellen:

    • Klicken Sie auf die Schaltfläche „Add webhook“, um die Einrichtung eines neuen Webhooks zu starten.
    • Sie werden aufgefordert, eine Payload URL einzugeben – den Endpunkt, an den bei bestimmten Ereignissen HTTP-POST-Anfragen gesendet werden sollen. Diesen Wert können Sie aus Ihrer neu erstellten Integration kopieren.
  4. Webhook-Payload konfigurieren:

    • Wählen Sie unter „Content type“ die Option application/json, damit Sie die Daten in einem strukturierten Format erhalten.
    • Richten Sie den Secret Key ein, um Ihren Webhook gegen unbefugten Zugriff zu schützen. Diesen Wert können Sie aus Ihrer SEW-Integration kopieren.
  5. Ereignisse auswählen:

    • Wählen Sie die Option „Just push events“.
  6. Einrichtung abschließen:

    • Überprüfen Sie die Konfigurationen noch einmal.
    • Klicken Sie auf „Add webhook“, um den Webhook abzuschließen und zu aktivieren.

Nach der Konfiguration sendet Ihr Webhook Aktualisierungen an SEW.

Ein Repository mit einem SEW-Projekt verknüpfen​

Um ein Repository mit einem SEW-Projekt zu verknüpfen, führen Sie die folgenden Schritte aus:

  1. Projektbereich aufrufen: Öffnen Sie Ihr SEW-Projekt.

  2. Projektbearbeitungsmenü aufrufen: Wählen Sie die drei Punkte in der oberen rechten Ecke der Projektseite.

  3. Repository verbinden:

    • Wählen Sie „Link to Repository“.
    • Wählen Sie ein Repository aus der Liste zur Verknüpfung aus.
  4. Bestätigung: Prüfen Sie, ob die Einrichtung funktioniert. Bei Erfolg sehen Sie ein GitHub-Symbol in der Kopfzeile der Projektdetails.

Ihr Repository für die SEW Integration vorbereiten​

Nachdem Ihr Repository konfiguriert und verbunden ist, bereiten Sie dessen Inhalt so vor, dass SEW den Umgang damit erkennen kann.

Ordnerstruktur des GitHub-Repositories​

Der SEW-Integrationsprozess setzt voraus, dass jedes Repository ein einzelnes PLC-Projekt enthält. Die Ordnerstruktur kann zwar vom Benutzer angepasst werden, der Wurzelordner muss jedoch eine Datei config.sda.json enthalten. Diese Datei gibt den Hersteller und die IDE-Version des PLC-Projekts an.

Schema der Konfigurationsdatei

  • schema_version: Gibt die Version des Schemas der Konfigurationsdatei an. Der Standardwert ist 1.0.0, wodurch zukünftige Erweiterungen unterstützt und die Rückwärtskompatibilität gewahrt wird.
  • vendor: Gibt den Hersteller des PLC-Projekts an. Zulässige Werte sind:
    • siemens
    • rockwell
  • ide_version: Gibt die Version des PLC-Projekts an. Sie folgt dem Format {major}.{minor}.{patch}. Beispielsweise entspricht Siemens TIA V17 dem Wert 17.0.0 und Rockwell V37 wird als 37.0.0 dargestellt.
  • project_path: Dieses Feld gibt den korrekten Pfad zum PLC-Projekt innerhalb Ihres Repositories an. Es verwendet ein relatives Pfadformat, das im Wurzelordner des Repositories beginnt. Das bedeutet, dass Sie beim Festlegen von project_path das Wurzelverzeichnis selbst nicht in den Pfad aufnehmen sollten. Geben Sie stattdessen die Pfadsegmente an, die zum jeweiligen PLC-Projektordner führen. Wenn sich Ihr PLC-Projekt beispielsweise in einem Ordner namens Projects befindet, der direkt im Wurzelverzeichnis liegt, und innerhalb von Projects ein Ordner PLC1 existiert, in dem die gewünschten Projektdateien gespeichert sind, wäre Ihr project_path ./Projects/PLC1/MySiemensPLCProject.zap17. Diese Vorgehensweise hilft dabei, eine konsistente Dateireferenzierung in allen Umgebungen, in denen das Repository verwendet werden kann, beizubehalten, da sie nicht auf absolute Pfade angewiesen ist, die sich zwischen Systemen unterscheiden können.
    • Siemens PLC-Projekt: Für die Verwaltung von Siemens PLC-Projekten unterstützen wir sowohl die komprimierte .zap-Datei als auch die unkomprimierte Ordnerstruktur mit .ap-Dateien. So können Sie mit diesen Formaten arbeiten:
      • Komprimierte Datei: Wenn Ihr Projekt in einem komprimierten Format vorliegt, können Sie die .zap-Datei direkt verwenden. Das ist nützlich, um Projekte einfach als einzelnes Paket zu übertragen. Verwenden Sie beispielsweise den Dateipfad:
        • ./Projects/PLC1/MySiemensPLCProject.zap17
        • ./MySiemensPLCProject.zap19
      • Unkomprimierter Ordner: Alternativ können Sie mit einem unkomprimierten Ordner arbeiten, der die .ap-Dateien enthält. Diese Variante ermöglicht einen einfacheren Zugriff auf einzelne Projektkomponenten, was während der Entwicklung oder Fehlersuche vorteilhaft sein kann. Verwenden Sie den folgenden Pfad, um auf Ihr Projekt zuzugreifen:
        • ./Projects/PLC1/MySiemensPLCProject/MySiemensPLCProject.ap17
        • ./MySiemensPLCProject/MySiemensPLCProject.ap19
    • Rockwell PLC-Projekt: Bei Rockwell PLC-Projekten ist der Ablauf schlanker. Diese Projekte sind in einer einzelnen .ACD-Datei gekapselt, was Projektverwaltung und -austausch vereinfacht. Führen Sie die folgenden Schritte aus, um auf Ihr Rockwell PLC-Projekt zuzugreifen:
      • ACD-Datei: Die .ACD-Datei enthält alle erforderlichen Projektdaten. Verweisen Sie einfach auf die Datei:
        • ./Projects/PLC1/MyRockwellPLCProject.ACD
        • ./MyRockwellPLCProject.ACD

Beispiel einer config.sda.json-Datei​

{
"schema_version": "1.0.0",
"vendor": "siemens",
"ide_version": "17.0.0",
"project_path": "./SimulatedAxisSinamicsV90_S71212C.zap17"
}

Nach erfolgreichem Abschluss ist Ihr Repository mit dem SEW-Projekt verknüpft, was eine bessere Zusammenarbeit und Projektverwaltung ermöglicht. Von nun an erzeugt jeder neue Commit, der in Ihr GitHub-Repository gepusht wird, eine entsprechende Projektversion in Ihrem SEW-Projekt.