2010-09-14 61 views
8

Estoy intentando configurar CruiseControl para compilar el proyecto en cada modificación del código fuente y todos los días a las 3:00 a.m. Esto es lo que he hecho hasta ahora en project.xml (y no funciona, las construcciones diarias no se hace):cómo configurar CruiseControl para dos compilaciones separadas?

... 
<schedule interval="120"> 
    <maven2 … /> 
    <maven2 … time="0300"/> 
</schedule> 
... 

¿Qué estoy haciendo mal?

+0

CruiseControl o Cruisecontrol.NET? Seleccione la etiqueta correspondiente –

+0

@The Chairman Es CruiseControl 2.8.3 – yegor256

Respuesta

1

Según entiendo que no hay posibilidad de climatizador hacer esto :(

+0

Hacemos esto, y lo hemos hecho durante varios años con CruiseControl. Entonces definitivamente es posible, por favor vea mi respuesta. – daramarak

0

Yo estaba usando ScheduleTrigger para CruiseControl.net.

Hace algún tiempo he migrado el servidor de CI de CC.net a TeamCity - échele un vistazo (también tienen la versión gratuita). Es mucho mejor y más fácil de configurar (decir adiós a esos enormes inmanejables ;-) archivos de configuración XML

+0

¿Es posible usar este complemento con CruiseControl 2.8.3? Por cierto, esos enormes archivos XML son algo bueno para mí, ya que puedo configurar CC de forma automática, sin ninguna interfaz de usuario. – yegor256

+0

@Vincenzo - No creo que puedas usarlo en CC (está en CC.net). Como nota al margen, una vez pensé que tener un generador automático de archivos de configuración de cc es algo bueno.En TeamCity simplemente no necesita mucha configuración (tienen plantillas de compilación, etc.) –

+0

Gracias por su comentario, pero no puedo migrar a CC.net (debido a la plataforma), y no estoy listo para migrar a TeamCity. Entonces, estoy buscando una solución para CruiseControl 2.8.3. – yegor256

2

Normalamente yo uso cc.net, pero cuando entiendo la documentación correctamente usted tiene dos opciones:

  • Use 2 proyectos
  • Establecer el atributo requireModifications-false (que no es exactamente lo que quiere)

¿Qué pasa con la configuración es la siguiente: la "modificación" de construcción se llevará a cabo durante todo el día y por lo tanto, a las 03:00 a.m., CruiseControl no puede detectar ninguna modificación (al menos supongo que sí). Como no hay modificaciones, la compilación diaria no se ejecuta.

Desde el documentation:

... por lo general no es una buena idea para mezclar tiempo construye y construye múltiples en el mismo proyecto que el múltiplo construye va a "comer" todos los cambios antes de que puedan ser detectados por las compilaciones basadas en el tiempo.

+0

¿Es posible lograr lo que estoy tratando de hacer? – yegor256

+0

Creo que sí. Defina dos proyectos: uno para la construcción nocturna y uno para las compilaciones de "modificación". –

0

pensé en cierto modo, la escritura de la estructura de división para hacer que los plug-ins

Por ejemplo:. https://github.com/LightWare/LightCI/blob/master/config.xml

+0

¡Bienvenido a Stack Overflow! Bienvenido a stackoverflow. Esta pregunta es vieja y ya fue respondida. Por lo general, es mejor no resucitar subprocesos obsoletos a menos que su respuesta contribuya con algo significativamente nuevo o diferente a las respuestas anteriores. – oers

1

escuchamos los cambios en un gitrepo y hacemos versiones compiladas todas las noches, lo hacemos de esta manera:

<schedule interval="${buildtime}"> 
    <ant antscript="ant.bat" 
    buildfile="build.xml" 
    </ant> 
</schedule> 
<bootstrappers> 
    <gitbootstrapper localWorkingCopy="${checkout_folder}"/> 
</bootstrappers> 
<modificationset quietperiod="${quiettime}" 
     Ignorefiles="${ignorelist}"> 
    <git localWorkingCopy="${checkout_folder}"/> 
    <timebuild username="Cruisecontrol nightwatch" 
    time="0300" 
    property="build_nightly"/> 
</modificationset> 

Como puede ver aquí, la clave aquí es que la compilación cronometrada se coloca en el modificationset, no en el schedule, por lo que a cada hora programada se verificará si el repositorio de git ha cambiado o si ha llegado el momento de hacer la compilación nocturna.

Cuestiones relacionadas