Aller au contenu principal

Intégration GitHub

Présentation de l'intégration GitHub​

SEW prend actuellement en charge l'intégration avec GitHub, ce qui vous permet de relier votre compte et vos dépôts GitHub directement à la plateforme. Grâce à cette connexion, GitHub peut servir de dépôt local, géré en version, qui reste synchronisé avec le dépôt SEW. Les administrateurs peuvent configurer l'authentification, sélectionner les dépôts et gérer les paramètres de synchronisation — permettant ainsi aux équipes de conserver leurs flux de travail GitHub habituels tout en bénéficiant des capacités centralisées de gestion de projet et d'automatisation de SEW.

Principales fonctionnalités de l'intégration​

L'intégration de GitHub avec SEW offre plusieurs avantages :

  • Flux de travail simplifié : intègre de manière transparente la robuste gestion de versions de GitHub avec les fonctionnalités de versionnage de projets PLC et de gestion PLC de SEW, améliorant ainsi la collaboration au sein de l'équipe.
  • Gestion centralisée : combinez les dépôts de code et la gestion des projets PLC sur une seule plateforme afin de simplifier l'administration et le contrôle des accès.
  • Automatisation et déploiement : utilisez les pipelines de SEW pour bénéficier de fonctionnalités de déploiement automatisé et fluidifier les livraisons de projets directement depuis les dépôts GitHub.
  • Collaboration en temps réel : les mises à jour et modifications sont synchronisées instantanément, garantissant que tous les membres de l'équipe travaillent avec la dernière version du projet.

En intégrant GitHub avec SEW, votre équipe peut améliorer sa productivité et l'efficacité de ses projets.

Comment connecter SEW à GitHub​

Configurer GitHub pour l'intégration SEW​

  1. Connectez-vous à GitHub : assurez-vous d'avoir vos identifiants GitHub à portée de main.
  2. Générez un jeton d'accès personnel : pour donner accès à SEW, accédez aux Developer settings, choisissez Personal access tokens et créez un nouveau Fine-grained token. Définissez les autorisations sur Contents et Metadata pour les dépôts que vous souhaitez partager.
  3. Copiez le jeton : conservez votre jeton en lieu sûr, car il sera utilisé lors du processus d'authentification dans SEW.

En suivant ces étapes de préparation, votre compte GitHub sera prêt pour l'intégration avec SEW, ce qui vous permettra de bénéficier d'une collaboration et d'une gestion de projet améliorées.

Connecter votre compte GitHub à votre compte SEW​

Pour connecter votre plateforme SEW à GitHub, procédez comme suit :

  1. Accédez aux paramètres : rendez-vous sur la plateforme SEW et ouvrez la section « General Settings ».
  2. Créez une nouvelle intégration : accédez à la section Integrations et ajoutez une nouvelle intégration en cliquant sur Add Integration.
  3. Authentifiez le compte GitHub : dans la fenêtre Add Integration, saisissez le nom de l'intégration et collez votre jeton d'accès GitHub.

Configurer les webhooks pour les mises à jour automatiques​

Pour activer les mises à jour automatiques et garantir que SEW soit informé rapidement des modifications, vous devez configurer efficacement des webhooks dans vos dépôts GitHub. Voici comment procéder :

  1. Accédez aux paramètres du dépôt :

    • Commencez par ouvrir votre dépôt GitHub.
    • Cliquez sur l'onglet « Settings », généralement situé à l'extrême droite de la barre de navigation du dépôt.
  2. Localisez la section Webhooks :

    • Une fois dans les paramètres, faites défiler la page ou recherchez l'option « Webhooks » dans le menu de gauche.
    • Cliquez sur « Webhooks » pour gérer et ajouter de nouveaux hooks.
  3. Créez un nouveau webhook :

    • Appuyez sur le bouton « Add webhook » pour lancer la configuration d'un nouveau webhook.
    • Vous serez invité à saisir une Payload URL, c'est-à-dire le point de terminaison vers lequel vous souhaitez envoyer des requêtes HTTP POST lorsque certains événements se produisent. Vous pouvez copier cette valeur depuis l'intégration que vous venez de créer.
  4. Configurez la charge utile du webhook :

    • Sous « Content type », choisissez application/json afin de recevoir les données dans un format structuré.
    • Définissez la clé secrète pour protéger votre webhook contre les accès non autorisés. Vous pouvez copier cette valeur depuis votre intégration SEW.
  5. Sélectionnez les événements :

    • Choisissez l'option « Just push events ».
  6. Finalisez la configuration :

    • Vérifiez à nouveau les paramètres.
    • Cliquez sur « Add webhook » pour finaliser et activer le webhook.

Une fois configuré, votre webhook enverra les mises à jour à SEW.

Lier un dépôt à un projet SEW​

Pour lier un dépôt à un projet SEW, procédez comme suit :

  1. Accédez à la section Projet : ouvrez votre projet SEW.

  2. Ouvrez le menu d'édition du projet : cliquez sur les trois points situés dans le coin supérieur droit de la page du projet.

  3. Connectez le dépôt :

    • Sélectionnez « Link to Repository ».
    • Choisissez un dépôt dans la liste pour le lier.
  4. Confirmation : vérifiez que la configuration fonctionne. Si l'opération a réussi, une icône GitHub apparaîtra dans l'en-tête des détails du projet.

Préparer votre dépôt pour l'intégration SEW​

Maintenant que votre dépôt est configuré et connecté, préparez son contenu afin que SEW puisse déterminer comment le traiter.

Structure des dossiers du dépôt GitHub​

Le processus d'intégration SEW exige que chaque dépôt contienne un seul projet PLC. Bien que la structure des dossiers puisse être personnalisée par l'utilisateur, le dossier racine doit contenir un fichier config.sda.json. Ce fichier précise le fournisseur et la version de l'IDE du projet PLC.

Schéma du fichier de configuration

  • schema_version : indique la version du schéma du fichier de configuration. La valeur par défaut est 1.0.0, ce qui permet des évolutions futures et maintient la rétrocompatibilité.
  • vendor : indique le fournisseur du projet PLC. Les valeurs acceptées sont :
    • siemens
    • rockwell
  • ide_version : indique la version du projet PLC. Elle suit le format {major}.{minor}.{patch}. Par exemple, Siemens TIA V17 correspond à 17.0.0 et Rockwell V37 est représenté par 37.0.0.
  • project_path : ce champ indique le chemin correct vers le projet PLC au sein de votre dépôt. Il utilise un format de chemin relatif à partir du dossier racine du dépôt. Cela signifie que, lors de la définition de project_path, vous ne devez pas inclure le répertoire racine lui-même dans votre chemin. Indiquez plutôt les segments de chemin menant au dossier du projet PLC concerné. Par exemple, si votre projet PLC se trouve dans un dossier nommé Projects situé directement dans le répertoire racine et que, dans Projects, se trouve un dossier PLC1 contenant les fichiers de projet souhaités, votre project_path serait ./Projects/PLC1/MySiemensPLCProject.zap17. Cette configuration permet de conserver des références de fichiers cohérentes dans les différents environnements où le dépôt peut être utilisé, car elle ne repose pas sur des chemins absolus susceptibles de varier d'un système à l'autre.
    • Projet PLC Siemens : pour la gestion des projets PLC Siemens, nous prenons en charge à la fois le fichier compressé .zap et la structure de dossiers non compressée contenant les fichiers .ap. Voici comment utiliser ces formats :
      • Fichier compressé : si votre projet est au format compressé, vous pouvez utiliser directement le fichier .zap. Cela s'avère utile pour transférer facilement des projets sous forme d'un seul paquet. Par exemple, utilisez le chemin de fichier :
        • ./Projects/PLC1/MySiemensPLCProject.zap17
        • ./MySiemensPLCProject.zap19
      • Dossier non compressé : vous pouvez également travailler avec un dossier non compressé contenant les fichiers .ap. Cette configuration facilite l'accès aux composants individuels du projet, ce qui peut être avantageux lors du développement ou du débogage. Utilisez le chemin suivant pour accéder à votre projet :
        • ./Projects/PLC1/MySiemensPLCProject/MySiemensPLCProject.ap17
        • ./MySiemensPLCProject/MySiemensPLCProject.ap19
    • Projet PLC Rockwell : pour les projets PLC Rockwell, le processus est simplifié. Ces projets sont encapsulés dans un unique fichier .ACD, ce qui facilite la gestion et le partage du projet. Suivez ces étapes pour accéder à votre projet PLC Rockwell :
      • Fichier ACD : le fichier .ACD contient toutes les données nécessaires du projet. Il suffit d'indiquer le fichier :
        • ./Projects/PLC1/MyRockwellPLCProject.ACD
        • ./MyRockwellPLCProject.ACD

Exemple de fichier config.sda.json​

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

Une fois l'opération réussie, votre dépôt sera lié au projet SEW, facilitant ainsi la collaboration et la gestion de projet. Désormais, chaque nouveau commit poussé vers votre dépôt GitHub créera une version de projet correspondante dans votre projet SEW.