10

Estoy usando Hudson con el maven-release-plugin.Hudson y maven-release-plugin

Como ya sabrá, el proyecto maven-release-plugin construye en 2 pasos: release:prepare, luego release:perform.

¿Cómo debo configurar Hudson para ejecutar release:rollback en caso de que release:perform haya fallado?

+0

¿Por qué le gustaría hacer un lanzamiento a través de Hudson? ¿Quieres liberar cada compilación? – Raghuram

+0

@ Raghuram Él podría estar eligiendo qué versión lanzar a través de los parámetros. – despot

Respuesta

0

Respuesta corta: do not. Desactive la actualización (realice una comprobación limpia cada vez). FWIW, en mi versión de la experiencia: rollback no es terriblemente confiable de todos modos.

+0

Una comprobación limpia no ayudará si el paso de despliegue anterior se rompió * después de que * marcó el pom con el nuevo número de versión en el VCN. –

+0

Hmm, ¿qué paso se rompió? ¿Por qué falló? –

+0

Prefiero delegar la solución de problemas de estos problemas, por lo que no puedo darle detalles ;-) Sé que nos sucedió un par de veces. Sin embargo, fue una versión Maven altamente personalizada, por lo que algunos de los complementos adicionales podrían haberlo estropeado. –

9

La forma estándar de realizar el lanzamiento con Hudson/Jenkins es el Jenkins M2 release plugin. Envuelve el complemento de lanzamiento maven y automatiza su ejecución.

0

Si es absolutamente necesario, entonces debería poder hacer un paso de creación "Invocar objetivos Maven de primer nivel" donde invocará la versión: prepare y release: realice y capte el resultado de esta compilación a través de un Paso de compilación "Ejecutar guión de Groovy".
Eche un vistazo a here cómo comprobar pom.xml para las versiones (podría darle una idea si el rendimiento falló o no).