天天看點

Cruise Control

Cruise Control 使用報告

1.       Cruise Control 介紹

Cruise Control 是一種持續內建過程的架構,包括了郵件通知,ant 和各種源碼控制工具的插件,并提供了 web 接口,用于檢視目前和以前的建立的結果。

2.       下載下傳安裝

在http://sourceforge.net/projects/cruisecontrol/files/CruiseControl/2.8.2/下載下傳Crusie Control的exe安裝版本,然後輕按兩下安裝即可。

3.       環境配置

下載下傳安裝java JDK ,并配置環境變量,建立環境變量如:JAVA_HOME: C:\Program Files\Java\jdk1.6.0_16。

4.       運作界面簡單說明

打開CC(Cruise Control)的安裝目錄,運作cruisecontrol.bat,當指令提示符中出現:wait for next time to build時表示CC已經啟動成功。打開浏覽器在浏覽器中輸入http://localhost:8080/dashboard即可看到目前建構工程總的結果,包括建構成功與失敗的工程數量等。http://localhost:8080/cruisecontrol/ 頁面中顯示了工程建構的清單,建構時間及現在的狀态,并且可以對某工程強制重新建構。單擊工程名可以看到工程建構的詳細資訊,包括建構過程中的錯誤與警告,單元測試的結果等。

5.       配置檔案說明

主配置檔案  config.xml 的根元素是<cruisecontrol>,該元素下最主要的<project>。結構如下:

<cruisecontrol>

<project>

<plugin/>

<dateformat/>

<labelincrementer/>

                                     <listeners/>

<bootstrappers/>

<modificationset/>

<schedule/>

<log/>

<publishers/>

</project>

</cruisecontrol>

(1)<plugin >注冊插件的資訊。

(2)<dateformat >指定日期格式,如果配置了這個部分,會修改預設的日期格式。

(3)<listeners> 在其中指明一些工程的監視資訊,如日志資訊的寫入位置<currentbuildstatuslistener   file="logs/MY_PROJECT_1/status.txt"/>

(4)<bootstrappers>的子元素就是Bootstrapper插件的配置資訊,如在其中指明ant使用資訊

      <antbootstrapper anthome="apache-ant-1.7.0" buildfile="projects/${project.name}/build.xml" target="clean" />

(5)<modificationset>包括了 SourceControl 插件的配置資訊,用于檢查各個源碼控制系統中是否發生變化,如下:

<modificationset quietperiod="30">

      <filesystem folder="projects/${project.name}" />

    </modificationset>

(6)<schedule >指定了建立的時間間隔,<schedule>定時驅動<modificationset>,如果檢測到變化,就執行所指定的builder 的任務:

<schedule interval="300">

         <ant anthome="apache-ant-1.7.0" buildfile="projects/${project.name}/build.xml" />

     </schedule>

(7)<log >指定項目日志儲存的地點,主要是合并項目建立過程 junit 測試結果的報表檔案(xml)。 <log>的用法很簡單,通常是指定 CC 的合并日志的目錄就可以了,如:

<log>

      <merge dir="projects/${project.name}/target/test-results" />

</log>

(8)<publishers >的子元素包括了 Publisher 插件的配置資訊,其中主要元素有<email>,<artifactspublisher>等。<email>主要是用來通知使用者。  最常用的用法是根據不同的結果發送到不同的郵件清單, 如每次 build,無論成功失敗都發送給某個郵件清單,還有失敗的時候才發送的郵件清單。 <artifactspublisher>用于對建立過程中産生的人工制品進行釋出

6.       本地應用舉例

在C:\Program Files\CruiseControl\projects\HelloWorld\src建立java檔案HelloWorld.java,

C:\Program Files\CruiseControl\projects\HelloWorld建立ant建構腳本build.xml。内容如下:

<project name="HelloWorld" default="all">

    <target name="all" depends="clean, compile, sleep,jar"/>

    <target name="clean">

        <delete dir="target" quiet="true" />

    </target>

    <target name="compile">

        <mkdir dir="target/classes"/>

        <javac srcdir="src" destdir="target/classes"/>

    <target name="sleep">

        <echo message="Sleeping for a while so you can see the build in the new dashboard" />

        <sleep seconds="60" />

    <target name="jar" depends="compile">

        <jar jarfile="target/HelloWorld.jar" basedir="target/classes"/>

然後打開http://localhost:8080/cruisecontrol/ 等待工程HelloWorld被檢測到并進行建構。建構完成後,可以單擊該工程檢視建構資訊。

本文來自CSDN部落格,轉載請标明出處:http://blog.csdn.net/guopengzhang/archive/2009/10/17/4688419.aspx

繼續閱讀