¿Cómo puedo dejar de control de crucero reconstrucción después de una acumulación fallado?

StackOverflow https://stackoverflow.com/questions/2845832

Pregunta

Me regresar de fin de semana para descubrir que alguien **** **** ejem había perdido un archivo de cometer última cosa Viernes control de la tarde ... Cruise ha estado teniendo diversión, y trató de reconstruir cada cinco minutos desde entonces, a pesar de no más confirmaciones.

Esto significa que mis colegas y yo hemos recibido aproximadamente seis correos electrónicos hojillion de control de crucero. Un correo electrónico única fallar sería más que suficiente para notificarnos.

¿Hay alguna forma de edificio de control de crucero parada en caso de fallo, al menos hasta que se produce un nuevo commit?


Editar Agregado de configuración XML

<project name="XXXX">
<listeners>
  <currentbuildstatuslistener file="logs/${project.name}/status.txt" />
</listeners>
<bootstrappers>
  <svnbootstrapper file="https://XXXXX/trunk/build/cruisecontrol.xml" username="XXXX" password="XXXX" />
</bootstrappers>
<modificationset quietperiod="300">
  <svn localWorkingCopy="projects/${project.name}/" RepositoryLocation="https://XXXXX/trunk/project1" username="XXXX" password="XXXX" />
  <svn localWorkingCopy="projects/${project.name}/" RepositoryLocation="https://XXXXX/trunk/project2" username="XXXX" password="XXXX" />
  <svn localWorkingCopy="projects/${project.name}/" RepositoryLocation="https://XXXXX/trunk/project3" username="XXXX" password="XXXX" />
  <svn localWorkingCopy="projects/${project.name}/" RepositoryLocation="https://XXXXX/trunk/project4" username="XXXX" password="XXXX" />
</modificationset>
<schedule interval="300">
  <ant anthome="apache-ant-1.7.0" buildfile="projects/${project.name}/build/cruisecontrol.xml" propertyfile="projects/${project.name}/project1/production.build.properties" />
</schedule>
<log dir="logs/${project.name}/">
  <merge file="projects/${project.name}/_reports/checkstyle_report.xml" />
  <merge dir="projects/${project.name}/_reports/pmd_report.xml" />
  <merge dir="projects/${project.name}/_reports/junit" />
</log>
<publishers>
  <onsuccess>
    <artifactspublisher dest="artifacts/${project.name}" dir="projects/${project.name}/_dist" />
    <artifactspublisher dest="artifacts/${project.name}" dir="projects/${project.name}/_reports" subdirectory="_reports"/>
  </onsuccess>
  <email spamWhileBroken="true" returnAddress="XXX@EXAMPLE.com" subjectPrefix="[BUILD]" buildResultsURL="http://XXXXX/dashboard/build/detail/project" mailHost="mail.EXAMPLE.com" skipUsers="true" >
    <failure address="XXX@EXAMPLE.com" />
    <success address="XXX@EXAMPLE.com"/>
 </email>
</publishers>

¿Fue útil?

Solución

No es atributo de buildafterfailed <project> lo que necesita?

Descripción del atributo en la CruiseControl config referencia :

  

En caso climatizador seguir construyendo a pesar de que ha fallado y no hay nueva   se detectan modificaciones? Esta función es útil si desea climatizador   para detectar situaciones en que una generación falla debido a las dependencias externas   (Como la conexión de base de datos falla temporal).

Otros consejos

pensé que era posible el control de crucero configure para construir sólo cuando detectó cambios en el sistema de control de versiones. Si se rompe la construcción, y usted no comprueba nada en, Crucero simplemente debe comprobar el repositorio de código fuente, encontrar ningún cambio, y volver a dormir hasta la próxima vez.

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