The defacto for continuous-integration.
This link is a comparison matrix of similar products:
http://docs.codehaus.org/display/DAMAGECONTROL/Continuous+Integration+Server+Feature+Matrix
Passing Cruise build number to ant:
Use
${label}
Linux service
http://confluence.public.thoughtworks.org/display/CC/RunningCruiseControlFromUnixInit
Sudo:
To enable sudo on a service see
SUDO for an example
Logging
Cruisecontrol can be configured, (or log4j really) to log to a telnet appender:
_log4j.properties_
log4j.rootCategory=INFO,HUB,A1# HUB is a socket hub appender
log4j.appender.HUB=org.apache.log4j.net.TelnetAppender
log4j.appender.HUB.layout=org.apache.log4j.PatternLayout
log4j.appender.HUB.layout.ConversionPattern=[cc]%d{MMM-dd HH:mm:ss} %-14.14c{1}- %m%n
log4j.appender.HUB.port=9007# File Appender to capture the overnight run output
log4j.appender.A1=org.apache.log4j.FileAppender
log4j.appender.A1.File=/tmp/r2_0_light.out
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[cc]%d{MMM-dd HH:mm:ss} %-14.14c{1}- %m%n
log4j.appender.A1.Append=falseIn the cruisecontrol config.xml:
<schedule interval="180">
<ant antWorkingDir="/export/my_build_loc/dev"
saveLogDir="/var/log/cruisecontrol/my-build/antlogs"
anthome="/opt/apache-ant-1.6.5"
target="-lib /etc/cruisecontrol/my-build:/opt/cruisecontrol/lib/log4j.jar
-listener org.apache.tools.ant.listener.Log4jListener cruise"
usequiet="true"
uselogger="true">
<property name="props.file" value="/etc/cruisecontrol/my-build/build.properties"/>
</ant>
</schedule>Then to see the logs, connect to the machine using telent with port 9007 (as specificed in the port above). ~(If using Putty, ensure that for Terminal, Implicit CR in ever LF) is selected for the output to look ok)~