Zum Hauptinhalt springen

GitHub-Integration

Überblick über die GitHub-Integration​

SDA unterstützt derzeit die Integration mit GitHub, sodass Sie Ihr GitHub-Konto und Ihre Repositories direkt mit der Plattform verbinden können. Über diese Verbindung kann GitHub als lokales, versioniertes Repository dienen, das mit dem SDA-Repository synchron bleibt. Administratoren können die Authentifizierung konfigurieren, Repositories auswählen und Synchronisierungseinstellungen verwalten. So behalten Teams ihre gewohnten GitHub-Abläufe bei und profitieren zugleich von der zentralen Projektverwaltung und den Automatisierungsfunktionen von SDA.

Wesentliche Merkmale der Integration​

Die Integration von GitHub mit SDA bietet mehrere Vorteile:

  • Reibungsloser Ablauf: Verbindet die leistungsfähige Versionsverwaltung von GitHub nahtlos mit der SPS-Projektversionierung und den SPS-Verwaltungsfunktionen von SDA und verbessert so die Zusammenarbeit im Team.
  • Zentrale Verwaltung: Führt Code-Repositories und SPS-Projektverwaltung in einer Plattform zusammen und vereinfacht damit Administration und Zugriffssteuerung.
  • Automatisierung und Deployment: Nutzen Sie die Pipelines von SDA für automatisierte Deployments, um Projektfreigaben direkt aus GitHub-Repositories heraus zu vereinfachen.
  • Zusammenarbeit in Echtzeit: Aktualisierungen und Änderungen werden unmittelbar synchronisiert, sodass alle Teammitglieder mit der jeweils neuesten Projektversion arbeiten.

Durch die Integration von GitHub mit SDA steigert Ihr Team Produktivität und Projekteffizienz.

So verbinden Sie SDA mit GitHub​

GitHub für die SDA-Integration konfigurieren​

  1. Bei GitHub anmelden: Halten Sie Ihre GitHub-Zugangsdaten bereit.
  2. Personal Access Token erzeugen: Um SDA Zugriff zu gewähren, gehen Sie zu den Developer settings, wählen Personal access tokens und erstellen ein neues Fine-grained token. Setzen Sie die Berechtigungen für die freizugebenden Repositories auf Contents und Metadata.
  3. Token kopieren: Bewahren Sie Ihr Token sicher auf, da es bei der Authentifizierung in SDA benötigt wird.

Mit diesen Vorbereitungsschritten ist Ihr GitHub-Konto bereit für die Integration mit SDA, sodass Sie von verbesserter Zusammenarbeit und Projektverwaltung profitieren.

Ihr GitHub-Konto mit Ihrem SDA-Konto verbinden​

Gehen Sie wie folgt vor, um Ihre SDA-Plattform mit GitHub zu verbinden:

  1. Einstellungen aufrufen: Wechseln Sie in der SDA-Plattform in den Bereich "General Settings".
  2. Neue Integration anlegen: Gehen Sie in den Bereich Integrations und legen Sie über Add Integration eine neue Integration an.
  3. GitHub-Konto authentifizieren: Geben Sie im Fenster Add Integration den Namen der Integration ein und fügen Sie Ihr GitHub-Zugriffstoken ein.

Webhooks für automatische Aktualisierungen konfigurieren​

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

  1. Repository-Einstellungen aufrufen:

    • Wechseln Sie zunächst zu Ihrem GitHub-Repository.
    • Klicken Sie auf die Registerkarte "Settings", die sich üblicherweise ganz rechts in der Navigationsleiste des Repositorys befindet.
  2. Bereich Webhooks aufrufen:

    • Scrollen Sie in den Einstellungen nach unten bzw. suchen Sie im linken Menü den Eintrag "Webhooks".
    • Klicken Sie auf "Webhooks", um Hooks zu verwalten und neue anzulegen.
  3. Neuen Webhook anlegen:

    • Klicken Sie auf die Schaltfläche "Add webhook", um die Einrichtung eines neuen Webhooks zu starten.
    • Sie werden aufgefordert, eine Payload URL anzugeben – 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" den Wert application/json, damit die Daten strukturiert übermittelt werden.
    • Richten Sie den geheimen Schlüssel ein, um Ihren Webhook vor unbefugtem Zugriff zu schützen. Diesen Wert können Sie aus Ihrer SDA-Integration kopieren.
  5. Ereignisse auswählen:

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

    • Prüfen Sie die Konfiguration noch einmal.
    • Klicken Sie auf "Add webhook", um den Webhook anzulegen und zu aktivieren.

Nach der Konfiguration sendet Ihr Webhook Aktualisierungen an SDA.

Ein Repository mit einem SDA-Projekt verknüpfen​

Gehen Sie wie folgt vor, um ein Repository mit einem SDA-Projekt zu verknüpfen:

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

  2. Menü zum Bearbeiten des Projekts öffnen: Klicken Sie oben rechts auf der Projektseite auf die drei Punkte.

  3. Repository verbinden:

    • Wählen Sie "Link to Repository".
    • Wählen Sie aus der Liste ein Repository zur Verknüpfung aus.
  4. Bestätigung: Prüfen Sie, ob die Einrichtung funktioniert. Bei Erfolg erscheint im Kopfbereich der Projektdetails ein GitHub-Symbol.

Ihr Repository für die SDA-Integration vorbereiten​

Nachdem Ihr Repository konfiguriert und verbunden ist, bereiten Sie dessen Inhalt so auf, dass SDA weiß, wie damit umzugehen ist.

Ordnerstruktur des GitHub-Repositorys​

Der Integrationsprozess von SDA setzt voraus, dass jedes Repository genau ein SPS-Projekt enthält. Die Ordnerstruktur kann zwar frei gewählt werden, der Stammordner muss jedoch eine Datei config.sda.json enthalten. Diese gibt Hersteller und IDE-Version des SPS-Projekts an.

Schema der Konfigurationsdatei

  • schema_version: Gibt die Version des Schemas der Konfigurationsdatei an. Der Standardwert ist 1.0.0; er unterstützt künftige Erweiterungen und wahrt die Abwärtskompatibilität.
  • vendor: Gibt den Hersteller des SPS-Projekts an. Zulässige Werte sind:
    • siemens
    • rockwell
  • ide_version: Gibt die Version des SPS-Projekts an. Das Format lautet {major}.{minor}.{patch}. Siemens TIA V17 entspricht beispielsweise 17.0.0 und Rockwell V37 wird als 37.0.0 dargestellt.
  • project_path: Dieses Feld gibt den korrekten Pfad zum SPS-Projekt innerhalb Ihres Repositorys an. Verwendet wird ein relativer Pfad ausgehend vom Stammordner des Repositorys. Das bedeutet: Beim Setzen von project_path sollten Sie das Stammverzeichnis selbst nicht in den Pfad aufnehmen, sondern lediglich die Pfadsegmente angeben, die zum konkreten SPS-Projektordner führen. Liegt Ihr SPS-Projekt beispielsweise in einem Ordner Projects unmittelbar im Stammverzeichnis und darin wiederum in einem Ordner PLC1, in dem die gewünschten Projektdateien liegen, lautet Ihr project_path ./Projects/PLC1/MySiemensPLCProject.zap17. Dieses Vorgehen sorgt für einheitliche Dateiverweise in unterschiedlichen Umgebungen, in denen das Repository genutzt wird, da keine absoluten Pfade verwendet werden, die zwischen Systemen abweichen können.
    • Siemens-Automatisierungsprojekt: Für die Verwaltung von Siemens-Automatisierungsprojekten unterstützen wir sowohl die komprimierte .zap-Datei als auch die unkomprimierte Ordnerstruktur mit .ap-Dateien. So arbeiten Sie mit diesen Formaten:
      • Komprimierte Datei: Liegt Ihr Projekt in komprimierter Form vor, können Sie die .zap-Datei direkt verwenden. Das eignet sich gut, um Projekte 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. Das erleichtert den Zugriff auf einzelne Projektbestandteile, was bei Entwicklung oder Fehlersuche hilfreich sein kann. Nutzen Sie den folgenden Pfad, um auf Ihr Projekt zuzugreifen:
        • ./Projects/PLC1/MySiemensPLCProject/MySiemensPLCProject.ap17
        • ./MySiemensPLCProject/MySiemensPLCProject.ap19
    • Rockwell-Automatisierungsprojekt: Bei Rockwell-Automatisierungsprojekten ist der Ablauf einfacher. Diese Projekte sind in einer einzigen .ACD-Datei gekapselt, was Verwaltung und Weitergabe erleichtert. Gehen Sie wie folgt vor, um auf Ihr Rockwell-SPS-Projekt zuzugreifen:
      • ACD-Datei: Die .ACD-Datei enthält sämtliche 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 SDA-Projekt verknüpft, was Zusammenarbeit und Projektverwaltung verbessert. Von nun an erzeugt jeder neue Commit, der in Ihr GitHub-Repository gepusht wird, eine entsprechende Projektversion in Ihrem SDA-Projekt.