Integración de Jira con GitLab

El objetivo

Al hacer un commit en git, mencionamos en el comentario alguna tarea de Jira por su nombre, después de lo cual suceden dos cosas:

  • en GitLab el nombre de la tarea se convierte en un enlace activo a ella en Jira

  • en Jira se añade un comentario a la tarea con enlaces al commit y al usuario que lo realizó, así como el texto de la mención

Configuración

  1. Necesitamos un usuario de Jira con derechos de nivel write. Se puede utilizar un existente, es importante recordar que todos los comentarios en Jira al mencionar tareas de git aparecerán a nombre de este usuario, por lo que es mejor crear uno nuevo, llamarlo, digamos, GitLab, y añadirlo a Jira con derechos de write en todos tus proyectos.
  2. Necesitamos un usuario de GitLab con derechos de administrador en cada uno de los proyectos que conectaremos. La integración se configura de manera independiente para cada proyecto.
  3. En GitLab abrimos el proyecto, entramos en Configura -> Integraciones. Desplazamos hacia abajo, vemos Servicios del proyecto con una larga lista de servicios que se pueden conectar.
    Integración de Jira con GitLab
  4. Encontramos en esta lista Jira, aparece un formulario
    Integración de Jira con GitLab
    • Marcaremos la casilla Activo, para activar la conexión.
    • Como se puede ver en el formulario, se puede configurar el comportamiento deseado para commits y merge requests por separado.
    • Ingresamos la URL web de tu empresa en Jira, por ejemplo ‘https://companyname.atlassian.net’
    • la URL de la API de Jira — se llena si tienes otra instancia de Jira, por defecto se usará el valor la URL web.
    • Campos Nombre de usuario/Email y Contraseña/Token se completan según si usas Jira Server o Jira Cloud. En el caso de Jira Server, ingresas el nombre de usuario y la contraseña del usuario que añadirá los comentarios. En el caso de Jira Cloud, ingresas el email y el token, que se puede obtener aquí.
    • Campo IDs de transición. Si deseas, por ejemplo, que al mencionar una tarea se cierre automáticamente, en este campo debes escribir el ID de la transición al estado cerrado. Este ID se puede obtener a través de la API:
      https://companyname.atlassian.net/rest/api/2/issue/ISSUENAME-123/transitions 

      donde ISSUENAME-123 es el nombre de alguna tarea en el estado deseado. Recibirás un JSON con un array de transiciones, del cual puedes tomar el id necesario.

    Como resultado, en GitLab en Configura -> Integraciones Jira ahora tiene un indicador verde:

    Integración de Jira con GitLab

    y en el menú del proyecto aparecerá un ítem Jira, que lleva al proyecto correspondiente en Jira:

    Integración de Jira con GitLab

Uso:

Cuando escribimos un comentario al commit (no importa qué herramienta estamos usando para trabajar con git), podemos agregar el nombre de las tareas en texto plano (sin comillas ni símbolos especiales como @)

bugfix XPROJECT-123, XPROJECT-124

como resultado, se añadirá un comentario a la tarea correspondiente:

Integración de Jira con GitLab

y aparecerá un enlace activo en GitLab:

Integración de Jira con GitLab

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster