sitio - register gitlab
Gitlab-Creación de solicitudes de fusión en el servidor CI (1)
Tengo GitLab 6.3 y TeamCity 8 y también necesito construir ramas de características. Tenemos el siguiente flujo de trabajo (se basa en git-flow, pero se modificó ligeramente de acuerdo con nuestro ciclo de publicación).
Entonces, tenemos una rama de development y una rama de características de push con un nombre específico dev/feature-name-here .
A continuación, creamos una solicitud de fusión en GitLab desde dev/feature-name-here hasta el development .
TeamCity está configurado para ejecutar automáticamente compilaciones para cada sucursal con la siguiente refspec: +:refs/heads/dev/(*) refs +:refs/heads/dev/(*) para que podamos ver una compilación para la feature-name-here rama feature-name-here se inicia automáticamente.
A continuación, tengo un script personalizado que está incrustado en la página de solicitud de combinación de GitLab. Se hace lo siguiente.
- Detecta una rama de origen y destino mirando una página de MR
- Con la API REST de TeamCity se enumera la compilación que pertenece a una rama de destino (en TeamCity 8 podemos asignar una ID de configuración de compilación personalizada para la compilación, por lo que utilizamos algunos nombres semánticos como
devUnit,devIntegration,devWhatever, etc ...) - Crea una tabla que contiene imágenes de estado de compilación para las ramas de origen y destino para cada configuración de compilación relacionada.
Ahora se ve así:
Ahora, este enfoque tiene algunos inconvenientes, como si uno actualiza una rama con otro empuje que no puedo entender en la página de GitLab si los nuevos compromisos ya están construidos o estoy viendo el estado de compilación anterior, por lo que debo hacer clic en el enlace de compilación y verificar en TeamCity
Estamos utilizando GitLab para gestionar nuestros repositorios. Estamos tratando de seguir los procesos de GitFlow y, como parte de eso, nos gustaría poder construir y ejecutar las pruebas contra cualquier solicitud de combinación de forma automática en TeamCity.
Por lo que puedo ver, esto es posible en GitLab CI, pero pasar a eso no es una opción realista para nosotros.
He visto tutoriales sobre cómo lograr esto en GitHUB usando una especificación de rama como + refs / pull / * / merge - ¿GitLAB crea una especificación de rama similar?
Estamos utilizando la versión 4.2 de GitLab, pero podemos actualizarla si es necesario para esta función y la versión 8 de TeamCity