`
wangdeshui
  • 浏览: 256912 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

.NET环境下每日集成(7):CruiseControl.Net Task Blocks

阅读更多

Task Block 类型:

  • Build Publisher
  • Email Publisher
  • Executable Task
  • File Merge Task
  • FinalBuilder Task
  • ForceBuildPublisher
  • Modification Writer Task
  • MsBuild Task
  • NAnt Task
  • Null Task
  • NUnit Task
  • Statistics Publisher
  • Visual Studio Task
  • Xml Log Publisher

任务是顺序执行的,这里我只提Build Publisher,NUnit Task,MsBuild Task,Executable Task,Email Publisher

1.Build Publisher

编译成功后,如何发布

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><buildpublisher>
     
<sourceDir>C:\myprojects\project1</sourceDir>
     
<publishDir>\\myfileserver\project1</publishDir>
     
<useLabelSubDirectory>false</useLabelSubDirectory>
</buildpublisher>
sourceDir:源文件地址
publishDir:要发布到的地址
<useLabelSubDirectory>:是否每一个版本根据label标签创建一个字目录里并把发布内容放进去
2.MsBuild Task
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><msbuild> 
         <
executable>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe</executable>
      <workingDirectory>C:\dev\ccnet</workingDirectory>
     
<projectFile>CCNet.sln</projectFile>
     
<buildArgs>/noconsolelogger /p:Configuration=Debug /v:diag</buildArgs>
     
<targets>Build;Test</targets>
     
<timeout>15</timeout>
     
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
</msbuild>
这个不用解释了,但是ThoughtWorks.CruiseControl.MsBuild.dll是个单独组件,前面我提过
3.NUnit Task
编译后运行测试
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><tasks>
        
<nunit><path>D:\dev\ccnet\ccnet\tools\nunit\nunit-console.exe</path>
            
<assemblies>
                    <
assembly>D:\dev\Refactoring\bin\Debug\Refactoring.exe</assembly>
                 <assembly>D:\dev\Refactoring\bin\Debug\Refactoring.Core.dll</assembly>
            
</assemblies>
        
</nunit>
</tasks>

4. Executable Task
执行一个程序
示例1:<exec executable="c:\projects\myproject\build.bat"/>
示例2:
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><exec>
    
<executable>make</executable>
     
<baseDirectory>D:\dev\MyProject</baseDirectory>
    
<buildArgs>all</buildArgs>
    
<buildTimeoutSeconds>10</buildTimeoutSeconds>
</exec>

你可以在这里加载任何你需要执行的程序,比如Fxcop等

5. Email Publisher

邮件通知编译报告


<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><email from="buildmaster@mycompany.com" mailhost="smtp.mycompany.com"
          mailhostUsername
="smtpuser" mailhostPassword="smtppassword" includeDetails="TRUE">
    
<users>
        
<user name="BuildGuru" group="buildmaster" address="buildguru@mycompany.com"/>
        
<user name="JoeDeveloper" group="developers" address="joedeveloper@thoughtworks.com"/>
    
</users>
    
<groups>
        
<group name="developers" notification="change"/>
        
<group name="buildmaster" notification="always"/>
    
</groups>
</email>
notification:
  • always" - 只要编译发生
  • "change" - 编译的状态改变,成功到失败,或者失败到成功
  • "failed" - 编译失败
  • "success" -编译成功
  • 分享到:
    评论

    相关推荐

      CruiseControl.NET

      CruiseControl.NET 是 .NET 平台下的持续集成工具,CruiseControl (Java) 的 .NET 移植版本。CruiseControl是一个针对持续构建程序(项目持续集成)的框架,它包括一个email通知的插件,Ant和各种各样的CVS工具。Cruise...

      持续集成之CruiseControl.rb

      **持续集成之CruiseControl.rb** CruiseControl.rb是一款开源的持续集成工具,主要用于自动化构建、测试和部署软件项目。它是由ThoughtWorks公司开发的,是CruiseControl.NET的Ruby版本,因此在Ruby社区中被广泛...

      持续集成实践之CruiseControl

      **持续集成实践之CruiseControl** 在软件开发领域,持续集成(Continuous Integration,简称CI)是一种重要的实践,它强调开发者频繁地将代码更改合并到主分支,以尽早发现并解决问题。CruiseControl是一款开源的...

      CruiseControl.NET-CCTray-1.8.4.0

      CruiseControl.NET-CCTray-1.8.4.0-Setup.exe

      [CruiseControl]binary安装和启动

      2. **配置环境变量**:确保已正确设置了 `JAVA_HOME` 环境变量,以便 CruiseControl 能够找到正确的 Java 运行环境。 3. **启动服务**:使用 Windows 系统时,可以通过运行 `cruisecontrol.bat` 文件来启动服务;...

      CruiseControl.NET-1.4.4-Setup.exe

      CruiseControl.NET-1.4.4-Setup.exe

      CruiseControl.net

      **CruiseControl.net** 是一个开源的持续集成工具,它主要负责自动化软件开发过程中的各个环节,如代码版本控制、编译、代码质量检查、单元测试等。它的目标是提高开发效率,减少错误,并确保团队成员始终能获得最新...

      CruiseControl.NET:CruiseControl.NET是使用.NET Framework实现的自动连续集成服务器。 从sourceforge下载。 该文档可以在以下位置找到

      CruiseControl.NET是用于.NET平台的自动化连续集成服务器。 它是CruiseControl for Java的C#端口。 发行版 可以从下载高达1.8.5的版本。 发展 要求 视窗 Visual Studio 2019或Visual Studio 2017 + Visual Studio ...

      持续集成及CruiseControl技术交流

      主题:持续集成及CruiseControl技术交流 在提升软件质量、降低研发风险、拒绝浪费方面,处于敏捷实践领域的持续集成(Continuous Integration,CI)起到重要作用。持续集成能够解决研发工作中的80%任务(日常),...

      Automatic Integration with CruiseControl.NET, NAnt, and NUnit

      ### 自动化集成CruiseControl.NET、NAnt与NUnit:构建持续集成环境 #### 概述 在软件开发过程中,回归测试是一个重要的但经常被忽视的环节。回归测试是指在对已有代码进行修改后重新运行之前的测试用例,以确保...

      CruiseControl

      - **CruiseControl3.doc**:可能涵盖了CruiseControl与其他工具的集成,如Jenkins、Travis CI等,或者是针对特定项目或环境的配置案例。 - **OpenDoc-CruiseControl.pdf**:这可能是一个开源社区编写的Cruise...

      CruiseControl.NET-CCTray-1.5.6804.1-Setup

      CruiseControl.NET-CCTray-1.5.6804.1-Setup

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

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

      CC.NET持久化集成环境1.8.0

      CC.NET(CruiseControl .NET)是一款开源的持续集成工具,专为.NET Framework环境设计。它提供了一种自动化的方式来构建、测试和部署软件项目,帮助开发团队保持代码的质量并及时发现集成问题。CC.NET 1.8.0是该工具...

      CruiseControl-持续集成环境安装

      1、CruiseControl 的安装配置 2、CC + SVN + Msbuild 设置,配置文件详细描述 3、CCTray 的安装使用 ...7、软件包:CruiseControl.NET-CCTray-1.4.4-Setup.exe 8、软件包:VisualSVN-Server-2.1.10.msi

      CCnet的CruiseControl.NET-CCTray-1.4.1-Setup.exe

      Curisecontrol持续集成的客户端版,CruiseControl.NET-CCTray-1.4.1-Setup.exe

      CruiseControl持续集成

      而现在,CruiseControl已发展成为一个家族式系统,包括CruiseControl.java、CruiseControl.net、CruiseControl.ruby等适应不同语言环境的实现,其强大的插件和扩展能力也是诸多同类系统无法比你的。而在这里,我只...

      CruiseControl简介及使用举例

      CruiseControl是一款持续集成工具,它能够自动化地执行软件项目的构建、测试和部署流程,以确保代码的质量和项目的稳定性。本篇文章将详细介绍CruiseControl的基本概念、安装过程、配置方法以及一个简单的使用示例。...

    Global site tag (gtag.js) - Google Analytics