初步开始研究持续集成引擎:CruiseControl(CC),其web容器默认使用了jetty,习惯了tomcat作为web容器,所以尝试将CC的web容器替换为tomcat,具体步骤总结如下:
1. 下载CruiseControl和tomcat
2. 将两个压缩包加压到一个目录,例如:
cc_work/cruisecontrol
cc_work/tomcat6
3. 将cruisecontrol目录下的cruisecontrol\webapps\dashboard文件夹拷贝到cc_work\tomcat6\webapps\dashboard
4. 修改CC的两个配置文件:
(1)config.xml
<cruisecontrol> <dashboard url="http://localhost:8080/dashboard" postinterval="5"/> <project name="connectfour"> ........ </project> </cruisecontrol>
(2) dashboard-config.xml
<dashboard> <buildloop logsdir="D:/cc_work/cruisecontrol/logs" artifactsdir="D:/cc_work/cruisecontrol/artifacts" /> <features allowforcebuild="true"/> <trackingtool projectname="" baseurl="" keywords=""/> <subtabs> <subtab class="net.sourceforge.cruisecontrol.dashboard.widgets.ErrorsAndWarningsMessagesWidget" /> </subtabs> </dashboard>
5. 修改cc和tomcat的启动文件
(1)cruisecontrol.bat 去掉 -webport 8080
set EXEC=%JAVA_PATH% %CC_OPTS% -Djavax.management.builder.initial=mx4j.server.MX4JMBeanServerBuilder "-Djetty.logs=%JETTY_LOGS%" -jar "%LAUNCHER%" %* -jmxport 8000 -rmiport 1099
(2)catalina.bat 在此文件中添加dashboard-config.xml配置文件路径(或者将此文件直接拷贝至与catalina.bat 同一目录)
rem Execute Java with the applicable properties if not "%JPDA%" == "" goto doJpda if not "%SECURITY_POLICY_FILE%" == "" goto doSecurity %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Ddashboard.config=D:/cc_work/cruisecontrol/dashboard-config.xml -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% goto end :doSecurity %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Ddashboard.config=D:/cc_work/cruisecontrol/dashboard-config.xml -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% goto end :doJpda if not "%SECURITY_POLICY_FILE%" == "" goto doSecurityJpda %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %JPDA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Ddashboard.config=D:/cc_work/cruisecontrol/dashboard-config.xml -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% goto end :doSecurityJpda %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %JPDA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Ddashboard.config=D:/cc_work/cruisecontrol/dashboard-config.xml -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% goto end
5. 启动
启动时先启动tomcat,再启动cc.