挖井

类库大魔王的挖井日记

挖一口属于自己的井


修改CruiseControl的配置

  在家无聊,看到CruiseControl里的东西就想整一下,一直以来只是抄袭了同事的脚本在这里跑,只能手动地去点击一下按钮才能激发,想着就不舒服。从网上搜了点资料看看,实在是找不到有用的,于是再回来看自带的帮助和自带的例子,偶然发现,虽然命令行中老是输出一堆一堆的内容,其实对于出错的情况还是解释得比较清楚的,尽管不详细。仔细调试配置脚本,终于可以定时轮循VSS中的文件并做出相应的响应了。其实非常简单,只是以前一直没有静下心来搞而已:

<listeners>
    <currentbuildstatuslistener file="${ccworkspace}/logs/${project.name}/status.txt"/>
</listeners>
<bootstrappers>
    <vssbootstrapper vsspath="${vsspath}" ssdir="${ssdir}" login="${username},${password}" serverpath="${serverpath}" localdirectory="${ccworkspace}/projects/${project.name}"/>
</bootstrappers>
<modificationset quietperiod="30">
    <vss ssdir="${ssdir}" login="${username},${password}" vsspath="${vsspath}" serverpath="${serverpath}" dateformat="yy-MM-dd" timeformat="HH:mm"/>
</modificationset>
<schedule interval="600">
    <ant antscript="${antpath}" antworkingdir="${ccworkspace}" buildfile="build.xml" target="wallpaperhelper_All"/>
</schedule>

各节属性的作用都可以查看CC帮助了解,只要把该填的都填好,就基本上没什么问题了。用VSS跟用SVN或CVS还是有一点区别的,网上很难找到用VSS的例子,好在也确实不复杂,呵呵。
  解决了这个问题后,我就开始得寸进尺期望CC能在后台运行。CC自带的解决方案是用一个叫Jetty的应用程序服务器,然后通过JAVA来运行。从这里可以看出,应该是能用Tomcat之类的其它的应用程序服务器来运行CC的,而Tomcat又能跟Apache配接在一起用,所以我觉得大概这是最好的方案,不过就是对于几人几十人的小项目来说,似乎有点杀鸡用牛刀了。其实再看一下那个启动CC用的bat文件就能发现,只要预先设置好几个环境变量,然后就能在后台用JAVAW.EXE来启动CC了。这里还有一个问题是,CC启动时,会在当前目录下寻找config.xml文件,所以一定要把config.xml文件放在它找得到的地方,我的办法是给这个命令行建立一个快捷方式,然后把开始位置设到config.xml所在的目录下,把这个快捷方式放到开始菜单的启动文件夹中,就可以让CC随着系统而在后台一起启动了。但是,后台运行也有一个不好的地方,不能随时看到CC最新的运行状态,通过浏览器的信息总感觉有些许延迟。

本文地址:

https://minidump.info/blog/2008/03/e4-bf-ae-e6-94-b9cruisecontrol-e7-9a-84-e9-85-8d-e7-bd-ae/

上一篇

使用Windbg定位程序崩溃

  今天突发奇想,看到Edraw的一个软件包里有个CrashReport程序,觉得这个功能真是很值得放到自己的工程中去。想想大概原理就是使用dbghelp.dll库中的Debug API来实现,不过具体细节我是一点都不懂。记起以前在公司网上看到有人提到过FileZilla就有这样的功能,可以在...…

Software 全文阅读
下一篇

htmlemail by CruiseControl

  继续捣鼓CruiseControl,从头到尾看了一遍Config Reference————的目录,发现有几项东东还是挺有趣的,主要集中在所谓的“持续反馈”部分。CC能支持Email通知是早就知道了,在公司里都偷偷用公司的SMTP给notes发过,只是后来想想公司那么刻板的信息安全问题,立...…

CPPOOPGPXP 全文阅读