webhook delivery github continuous-integration jenkins

delivery - ¿Hay alguna forma de usar Jenkins con las solicitudes de extracción de Github?



jenkins environment variables github (5)

Quiero que Jenkins encuentre y ejecute automáticamente el conjunto de pruebas para cada rama que forme parte de una solicitud de extracción abierta. ¿Es esto posible con algún complemento de Jenkins que no he encontrado?


Encontré el plugin Jenkins Github pull request builder inutilizable, así que escribí un pequeño demonio que sincroniza los trabajos de Jenkins con los RP, luego comenta el estado de compilación de nuevo en el hilo de comentarios de cada PR. Lo puedes encontrar aquí: https://github.com/percolate/jennifer




Si está utilizando Cloudbees, ellos ofrecen su propio complemento generador de solicitud de extracción.

https://wiki.cloudbees.com/bin/view/DEV/Github+Pull+Request+Validation

Las ventajas que ofrecen sobre el generador de solicitudes de extracción Jenkins Github estándar es que se ejecuta como un programa "aislado por el arrendatario", lo que evita que el código en la solicitud de extracción de la indagación para las contraseñas o las claves ssh. Pude ver que esto es particularmente útil para un proyecto público.


Un método que debería funcionar es que podría cambiar el nombre de la rama cuando esté "preparada para la integración" y lista para ser probada.

Una convención de nombres como prep / my_feature.

Luego, en el complemento de git Jenkins puede configurar los nombres de las sucursales que desea que aparezcan para la construcción. Puedes hacer que coincida con ''prep / *''.

Solíamos hacer esto para todas nuestras ramas de características usando un prefijo de ''dev /'' para marcar las ramas de características que deberían tener la autocompilación ejecutada para ellas. Parece funcionar bastante bien.