Pregunta

Estoy intentando configurar Hudson para que voy a ser capaz de desplegar automáticamente una compilación (un archivo .war) para Tomcat. La acumulación recién desplegada entonces será utilizada por alguien para probar la aplicación.

He intentado usar el plugin de Despliegue para desplegar automáticamente el archivo .war, y esto funciona. Sin embargo, el trabajo que construye el archivo .war se ejecutará después de cada cambio de SMC (vez que se cometa el código). Con la Implementación de Programas, el archivo .war se desplegaría a Tomcat cada vez que se hace una generación. Dado que el código se obliga con frecuencia, esto significará que la aplicación web se reiniciará con frecuencia también, y esto va a interrumpir el proceso de prueba.

aprecio el hecho de que Hudson se ejecuta mis unidad de pruebas y hace una acumulación con regularidad, por lo que no quiero cambiar los disparadores para este trabajo.

Estoy buscando una manera que yo puedo decidir desplegar manualmente desde el interior de Hudson. He intentado crear un trabajo independiente que se desplegará el .war desde el primer trabajo, pero esto no funcionó. ¿Alguien tiene alguna experiencia configuración algo como esto?

¿Fue útil?

Solución

¿Cómo conseguir los artefactos

Mire la sección " Cómo deshacer o volver a implementar una versión anterior " en la Distribuir Plugin Página . En él se describe la idea básica. Se utiliza el Copia Artefacto Plugin para copiar los artefactos de la construcción oferta en tu trabajo actual (el trabajo de distribución). Desde allí se puede hacer lo mismo que hizo en su etapa de construcción.

¿Cómo activar el despliegue

El trabajo de construcción no puede ser activado después de iniciar el despliegue de modo que los primeros a construir pistas, y que el trabajo de distribución. Así que hay un unas pocas opciones:

  • activar manualmente la construcción. El usuario que inicia las necesidades de despliegue para seleccionar una carrera específica de la preparación del trabajo.
  • despliegue programado Esto podría ser parte de las tareas nocturnas. El trabajo se desencadenó en un determinado intervalo (como todas las noches o los fines de semana). Ya que está automatizado, el trabajo de distribución debe recoger la última generación correcta (que no es necesario un trabajo parametrizada a continuación). Usted no tiene la oportunidad de pasar un número de ejecución.
  • el trabajo de distribución obtiene activado cada vez que termina una construcción exitosa (no se ajusta a sus necesidades, pero que aparece para completar la lista)
  • Algunos otro (esotérico) de disparo . Esto puede ser muchos diferentes piensa por ejemplo remota desencadenada por llamar a la URL de la construcción. La llamada puede provenir de uno de su sistema de gestión de laboratorio de pruebas systen emisión de billetes, o cualquier otro sistema te gusta. También puede desencadenar el despliegue, por los cambios específicos en su sistema de control de código fuente, como cambiar el número de versión (por ejemplo, marcado por una palabra clave en el mensaje de confirmación). Este disparador puede ser implementada dentro o fuera de Hudson. Hay otros factores desencadenantes disponibles también. Esto incluye pero no se limita a cambio de página html, el cambio en una parte monitorizado del sistema de archivos, mensajes de mensajería instantánea, correo electrónico. Los tres primeros son ejecutados por un plugin de Hudson. Echar un vistazo a la lista de plugins, para saber qué es todo evailable o En ambos casos, es necesario asegurarse de que los archivos de trabajo de construcción todos los artefactos necesarios para la implementación.

Otros consejos

Tengo varias ofertas de empleo de Hudson por proyectos:

  1. Un trabajo principal que simplemente genera el proyecto y se ejecutan las pruebas. Si tiene éxito, se pone en marcha los siguientes puestos de trabajo:
  2. Una métricas de código trabajo (PMD, FindBugs, Cobertura, CheckStyle, también la generación de JavaDoc) y
  3. un trabajo de distribución que se basa el proyecto usando mvn package -DskipTests y despliega la guerra en Tomcat

Me parece que separan estas cosas hechas más fácil, sólo las primeras escuchas de trabajo para SMC cambios.

Sin embargo, otra manera sería dejar que la tercera trabajo también escuchar la SMC (pero con un intervalo más largo, tal vez una hora).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top