Saltar al contenido principal

Integración con GitHub

Descripción general de la integración con GitHub​

SEW admite actualmente la integración con GitHub, lo que le permite vincular su cuenta y repositorios de GitHub directamente a la plataforma. Mediante esta conexión, GitHub puede funcionar como un repositorio local con control de versiones que se mantiene sincronizado con el repositorio de SEW. Los administradores pueden configurar la autenticación, seleccionar repositorios y gestionar los ajustes de sincronización, lo que permite a los equipos mantener los flujos de trabajo habituales de GitHub y, al mismo tiempo, aprovechar las capacidades centralizadas de gestión de proyectos y automatización de SEW.

Características principales de la integración​

La integración de GitHub con SEW ofrece varias ventajas:

  • Flujo de trabajo optimizado: integra sin problemas el sólido control de versiones de GitHub con las funciones de versionado de proyectos PLC y gestión de PLC de SEW, mejorando la colaboración del equipo.
  • Gestión centralizada: combine los repositorios de código y la gestión de proyectos PLC en una única plataforma para simplificar la administración y el control de acceso.
  • Automatización e implementación: utilice las pipelines de SEW para las funciones de implementación automatizada y agilizar las publicaciones de proyectos directamente desde los repositorios de GitHub.
  • Colaboración en tiempo real: las actualizaciones y los cambios se sincronizan al instante, garantizando que todos los miembros del equipo trabajen con la versión más reciente del proyecto.

Al integrar GitHub con SEW, su equipo puede mejorar la productividad y la eficiencia de los proyectos.

Cómo conectar SEW con GitHub​

Configurar GitHub para la integración con SEW​

  1. Inicie sesión en GitHub: asegúrese de tener sus credenciales de GitHub a mano.
  2. Genere un token de acceso personal: para conceder acceso a SEW, vaya a Developer settings, elija Personal access tokens y cree un nuevo Fine-grained token. Establezca los permisos en Contents y Metadata para los repositorios que desee compartir.
  3. Copie el token: guarde el token de forma segura, ya que se utilizará durante el proceso de autenticación en SEW.

Al seguir estos pasos de preparación, su cuenta de GitHub estará lista para la integración con SEW, lo que le permitirá beneficiarse de una mejor colaboración y gestión de proyectos.

Conectar su GitHub con su cuenta de SEW​

Para conectar su plataforma SEW con GitHub, siga estos pasos:

  1. Acceda a los ajustes: vaya a la plataforma SEW y diríjase a la sección 'General Settings'.
  2. Cree una nueva integración: acceda a la sección Integrations y añada una nueva integración haciendo clic en Add Integration.
  3. Autentique la cuenta de GitHub: en la ventana Add Integration, introduzca el nombre de la integración y pegue su token de acceso de GitHub.

Configurar webhooks para actualizaciones automáticas​

Para habilitar las actualizaciones automáticas y garantizar que SEW reciba información puntual sobre los cambios, debe configurar correctamente webhooks en sus repositorios de GitHub. A continuación se explica cómo configurar esta función:

  1. Acceda a los ajustes del repositorio:

    • Comience navegando a su repositorio de GitHub.
    • Haga clic en la pestaña "Settings", que normalmente se encuentra en el extremo derecho de la barra de navegación del repositorio.
  2. Localice la sección Webhooks:

    • Una vez en los ajustes, desplácese hacia abajo o busque la opción "Webhooks" en el menú de la izquierda.
    • Haga clic en "Webhooks" para gestionar y añadir nuevos hooks.
  3. Cree un nuevo webhook:

    • Pulse el botón "Add webhook" para iniciar la configuración de un nuevo webhook.
    • Se le pedirá que introduzca una Payload URL, que es el endpoint al que desea enviar solicitudes HTTP POST cuando se produzcan determinados eventos. Puede copiar este valor de la integración que acaba de crear.
  4. Configure el payload del webhook:

    • En "Content type", elija application/json para asegurarse de recibir los datos en un formato estructurado.
    • Configure la clave secreta para proteger su webhook frente a accesos no autorizados. Puede copiar este valor de su integración de SEW.
  5. Seleccione los eventos:

    • Elija la opción "Just push events".
  6. Finalice la configuración:

    • Revise de nuevo las configuraciones.
    • Haga clic en "Add webhook" para finalizar y activar el webhook.

Una vez configurado, su webhook enviará actualizaciones a SEW.

Vincular un repositorio a un proyecto de SEW​

Para vincular un repositorio a un proyecto de SEW, siga estos pasos:

  1. Acceda a la sección del proyecto: abra su proyecto de SEW.

  2. Acceda al menú de edición del proyecto: seleccione los tres puntos en la esquina superior derecha de la página del proyecto.

  3. Conecte el repositorio:

    • Seleccione 'Link to Repository'.
    • Elija un repositorio de la lista para vincularlo.
  4. Confirmación: compruebe que la configuración funciona. Si es correcta, verá un icono de GitHub en el encabezado de los detalles del proyecto.

Preparar su repositorio para la integración con SEW​

Ahora que su repositorio está configurado y conectado, prepare su contenido para que SEW pueda entender cómo gestionarlo.

Estructura de carpetas del repositorio de GitHub​

El proceso de integración de SEW requiere que cada repositorio albergue un único proyecto PLC. Aunque el usuario puede personalizar la estructura de carpetas, la carpeta raíz debe contener un archivo config.sda.json. Este archivo especifica el proveedor y la versión del IDE del proyecto PLC.

Esquema del archivo de configuración

  • schema_version: indica la versión del esquema del archivo de configuración. El valor predeterminado es 1.0.0, que admite mejoras futuras y mantiene la compatibilidad retroactiva.
  • vendor: especifica el proveedor del proyecto PLC. Los valores aceptados son:
    • siemens
    • rockwell
  • ide_version: especifica la versión del proyecto PLC. Sigue el formato {major}.{minor}.{patch}. Por ejemplo, Siemens TIA V17 se traduce como 17.0.0 y Rockwell V37 se representa como 37.0.0.
  • project_path: este campo especifica la ruta correcta al proyecto PLC dentro de su repositorio. Utiliza un formato de ruta relativa que comienza en la carpeta raíz del repositorio. Esto significa que, al establecer project_path, no debe incluir el propio directorio raíz en la ruta. En su lugar, indique los segmentos de ruta que conducen a la carpeta concreta del proyecto PLC. Por ejemplo, si su proyecto PLC se encuentra en una carpeta llamada Projects que reside directamente en el directorio raíz y, dentro de Projects, hay una carpeta PLC1 donde se guardan los archivos del proyecto deseado, su project_path sería ./Projects/PLC1/MySiemensPLCProject.zap17. Esta configuración ayuda a mantener referencias de archivos coherentes en los distintos entornos en los que se pueda utilizar el repositorio, ya que no depende de rutas absolutas que pueden variar entre sistemas.
    • Proyecto PLC de Siemens: para gestionar proyectos PLC de Siemens, ofrecemos compatibilidad tanto con el archivo comprimido .zap como con la estructura de carpetas sin comprimir que incluye archivos .ap. A continuación se explica cómo puede trabajar con estos formatos:
      • Archivo comprimido: si tiene su proyecto en formato comprimido, puede utilizar directamente el archivo .zap. Esto resulta útil para transferir proyectos fácilmente como un único paquete. Por ejemplo, utilice la ruta de archivo:
        • ./Projects/PLC1/MySiemensPLCProject.zap17
        • ./MySiemensPLCProject.zap19
      • Carpeta sin comprimir: como alternativa, puede trabajar con una carpeta sin comprimir que contenga los archivos .ap. Esta configuración permite un acceso más sencillo a los componentes individuales del proyecto, lo que puede ser beneficioso durante el desarrollo o la depuración. Utilice la siguiente ruta para acceder a su proyecto:
        • ./Projects/PLC1/MySiemensPLCProject/MySiemensPLCProject.ap17
        • ./MySiemensPLCProject/MySiemensPLCProject.ap19
    • Proyecto PLC de Rockwell: en el caso de los proyectos PLC de Rockwell, el proceso está simplificado. Estos proyectos se encapsulan en un único archivo .ACD, lo que facilita la gestión y el intercambio de proyectos. Siga estos pasos para acceder a su proyecto PLC de Rockwell:
      • Archivo ACD: el archivo .ACD contiene todos los datos necesarios del proyecto. Solo tiene que apuntar al archivo:
        • ./Projects/PLC1/MyRockwellPLCProject.ACD
        • ./MyRockwellPLCProject.ACD

Ejemplo de un archivo config.sda.json​

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

Una vez completado correctamente, su repositorio quedará vinculado al proyecto de SEW, lo que facilitará una mejor colaboración y gestión de proyectos. A partir de ese momento, cada nuevo commit enviado a su repositorio de GitHub creará una versión de proyecto correspondiente en su proyecto de SEW.