`
meetrice
  • 浏览: 196373 次
  • 来自: 南京
社区版块
存档分类
最新评论

cruisecontrol与svn集成之config.xml与build.xml

阅读更多
config.xml

<cruisecontrol>
    <project name="demo">
		<!--据说是老版才需要
		<plugin name="svn" classname="net.sourceforge.cruisecontrol.sourcecontrols.SVN"/>
		<plugin name="svnbootstrapper" classname="net.sourceforge.cruisecontrol.bootstrappers.SVNBootstrapper"/>
		-->
        <listeners>
            <currentbuildstatuslistener file="logs/${project.name}/status.txt"/>
        </listeners>

        <!--bootstrappers>
            <cvsbootstrapper localWorkingCopy="projects/${project.name}" />
        </bootstrappers-->
        
        <bootstrappers>  
            <svnbootstrapper localWorkingCopy="projects/${project.name}" />  
        </bootstrappers>  
        <!--quietperiod会使用svn log命令检查,出错,未解决,暂时注释-->
        <!--modificationset quietperiod="30">
            <svn LocalWorkingCopy="projects/${project.name}"/-->
            <!--cvs localWorkingCopy="projects/${project.name}"/-->
            <!--filesystem folder="projects/${project.name}"/-->
        <!--/modificationset-->
        
        <schedule interval="600">
            <ant anthome="apache-ant-1.6.5" buildfile="build.xml" target="pull"/>
        </schedule>
        
        <log>
            <merge dir="projects/${project.name}/build/test/data"/>
        </log>
        
        <publishers>
            <onsuccess>
                <artifactspublisher dest="artifacts/${project.name}" file="projects/${project.name}/dist/webapps/${project.name}.war"/>
            </onsuccess>
               
            <htmlemail mailhost="localhost" 
                returnaddress="no-reply@appfuse.dev.java.net" 
                buildresultsurl="http://home.raibledesigns.com:8888/buildresults/${project.name}" 
                css="webapps/cruisecontrol/css/cruisecontrol.css"
                xsldir="webapps/cruisecontrol/xsl"
                logdir="logs/${project.name}" 
                subjectprefix="[CruiseControl] ">
                
                <map alias="mraible" address="mraible@dev.java.net"/>
                <failure address="mraible" reportWhenFixed="true"/>
            </htmlemail>
        </publishers>
    </project>
</cruisecontrol>



config.xml
<project name="demo" default="pull" basedir=".">

    <!-- Uncomment if you're using Subversion - you'll need to download svnant into the same directory -->
	<path id= "svnant.classpath" >
     <fileset dir= "D:/cruisecontrol-bin-2.6.1/svnant-1.1.0-RC2/lib" >
         <include name= "*.jar" />
     </fileset>
	</path>
    
	<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="svnant.classpath" /> 

    <target name="svn">
        <delete dir="projects/${ant.project.name}"/>
        <svn>
            <checkout url="http://daiah:52463732@192.168.100.199/project/omm/trunk/src/demo" 
                  revision="HEAD" destPath="projects/${ant.project.name}" />
        </svn>
    </target>
    
    <target name="pull">
		<delete dir="projects/${ant.project.name}"/>
		<svn username="xx" password="xx">
			<checkout url="http://192.168.100.1/project/test/trunk" revision="HEAD" destPath="projects/demo" />
		</svn>
	</target>

    <!--target name="cvs">
        <delete dir="projects/${ant.project.name}"/>
        <cvs command="co ${ant.project.name}" dest="projects"
            cvsRoot=":pserver:guest@cvs.dev.java.net:/cvs"/> 
    </target-->
    
    <target name="test" depends="svn">
        <!-- Test on a port that's not being used --> 
        <property name="http.port" value="8180"/>
        <ant dir="projects/${ant.project.name}" target="setup"/>
        <ant dir="projects/${ant.project.name}" target="test-all"/>
    </target>

    <!--target name="clean">
        <delete dir="projects/${ant.project.name}"/>
    </target-->
</project>

分享到:
评论

相关推荐

    SVN+cruisecontrol 搭建持续集成开发环境

    在配置 CruiseControl 时,需要编辑 config.xml 文件,以便指定构建项目的详细信息,例如项目名称、SVN 仓库的地址、构建脚本的地址等。同时,需要在 CruiseControl 中配置构建脚本,以便自动地构建和测试软件。 在...

    cruisecontrol配置文件.rar

    总结来说,"cruisecontrol配置文件.rar" 包含了CruiseControl运行所需的关键组件:`main.jsp` 提供用户友好的Web界面,`build.xml` 定义了构建流程,而`config.xml` 是整个系统的灵魂,控制着CruiseControl的行为。...

    CruiseControl简介及使用举例

    配置CruiseControl是关键步骤,主要涉及两个文件:`config.xml`和`build.xml`。`config.xml`用于设置初始化、调度等高级任务参数,而`build.xml`是Ant脚本,定义了构建过程中执行的具体任务,如代码检出、编译、打包...

    利用CruiseControl软件进行持续集成

    CruiseControl系统的架构图中,我们可以看到,CruiseControl系统的主体是Build Loop机制,它采用了Source Code轮询机制,对持续集成环境的状态进行定时检测,并根据config.xml配置信息做出相应处理。 2.Cruise...

    CruiseControl及ant配置

    `config.xml`是CruiseControl的核心配置文件,它定义了CruiseControl如何执行构建任务,主要包括以下几个方面: 1. **监听器(Listeners)**:用于监听项目的构建状态变化,并将这些变化通知给指定的目标,例如记录...

    持续集成与自动化测试

    2. **配置CruiseControl**:安装CruiseControl,从SVN检出项目至其项目目录,并配置config.xml文件以添加新项目。 3. **安装其他工具**:如Maven2用于自动化构建,Tomcat作为应用服务器,以及用于功能测试的工具,如...

    CruiseControl.NET:用于.NET平台的自动化连续集成服务器-开源

    CruiseControl.NET是一个专为.NET平台设计的自动化持续集成服务器,它的出现是为了满足.NET开发者在项目构建与测试自动化方面的需求。作为CruiseControl for Java的C#版本,CruiseControl.NET继承了其核心理念,即...

    CCNET配置文档

    CCNET,全称CruiseControl.NET,是一款开源的持续集成服务器,主要用于自动化软件开发过程中的构建、测试和部署任务。它的核心功能是监控源代码仓库的变更,并在检测到变化时自动触发构建流程。本篇文章将详细解析...

    CCNet 安装、部署、配置文档及过程

    CCNet,全称CruiseControl.NET,是一款开源的持续集成工具,主要用于自动化软件开发过程中的构建、测试和部署。它通过监控版本控制系统中的改动,自动触发构建流程,帮助团队及时发现并修复问题,提高软件质量与开发...

Global site tag (gtag.js) - Google Analytics