.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

编译成功后,如何发布

< buildpublisher >
     
< sourceDir > C:\myprojects\project1 </ sourceDir >
     
< publishDir > \\myfileserver\project1 </ publishDir >
     
< useLabelSubDirectory > false </ useLabelSubDirectory >
</ buildpublisher >
sourceDir:源文件地址
publishDir:要发布到的地址
<useLabelSubDirectory>:是否每一个版本根据label标签创建一个字目录里并把发布内容放进去
2.MsBuild Task
< 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
编译后运行测试
< 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:
< exec >
    
< executable > make </ executable >
      
< baseDirectory > D:\dev\MyProject </ baseDirectory >
    
< buildArgs > all </ buildArgs >
    
< buildTimeoutSeconds > 10 </ buildTimeoutSeconds >
</ exec >
 

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

5. Email Publisher

邮件通知编译报告


< 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" -编译成功
  • 本文转自敏捷的水博客园博客,原文链接http://www.cnblogs.com/cnblogsfans/archive/2008/04/24/1169638.html如需转载请自行联系原作者

  • 王德水
  • 相关文章
    |
    人工智能 安全 Shell
    Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
    Jupyter MCP服务器基于模型上下文协议(MCP),实现大型语言模型与Jupyter环境的无缝集成。它通过标准化接口,让AI模型安全访问和操作Jupyter核心组件,如内核、文件系统和终端。本文深入解析其技术架构、功能特性及部署方法。MCP服务器解决了传统AI模型缺乏实时上下文感知的问题,支持代码执行、变量状态获取、文件管理等功能,提升编程效率。同时,严格的权限控制确保了安全性。作为智能化交互工具,Jupyter MCP为动态计算环境与AI模型之间搭建了高效桥梁。
    889 2
    Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
    |
    人工智能 API C#
    使用Microsoft.Extensions.AI简化.NET中的AI集成
    使用Microsoft.Extensions.AI简化.NET中的AI集成
    460 5
    使用Microsoft.Extensions.AI简化.NET中的AI集成
    |
    弹性计算 开发框架 安全
    基于云效 Windows 构建环境和 Nuget 制品仓库进行 .Net 应用开发
    本文将基于云效 Flow 流水线 Windows 构建环境和云效 Packages Nuget 制品仓库手把手教你如何开发并部署一个 .NET 应用,从环境搭建到实战应用发布的详细教程,帮助你掌握 .NET 开发的核心技能。
    |
    开发框架 缓存 .NET
    GraphQL 与 ASP.NET Core 集成:从入门到精通
    本文详细介绍了如何在ASP.NET Core中集成GraphQL,包括安装必要的NuGet包、创建GraphQL Schema、配置GraphQL服务等步骤。同时,文章还探讨了常见问题及其解决方法,如处理复杂查询、错误处理、性能优化和实现认证授权等,旨在帮助开发者构建灵活且高效的API。
    543 3
    |
    存储 Prometheus 运维
    在云原生环境中,阿里云ARMS与Prometheus的集成提供了强大的应用实时监控解决方案
    在云原生环境中,阿里云ARMS与Prometheus的集成提供了强大的应用实时监控解决方案。该集成结合了ARMS的基础设施监控能力和Prometheus的灵活配置及社区支持,实现了全面、精准的系统状态、性能和错误监控,提升了应用的稳定性和管理效率。通过统一的数据视图和高级查询功能,帮助企业有效应对云原生挑战,促进业务的持续发展。
    470 3
    |
    开发框架 .NET API
    Windows Forms应用程序中集成一个ASP.NET API服务
    Windows Forms应用程序中集成一个ASP.NET API服务
    511 9
    |
    安全 算法 编译器
    .NET 9 AOT的突破 - 支持老旧Win7与XP环境
    【10月更文挑战第30天】在.NET 9 中,AOT(Ahead-of-Time)编译技术在支持老旧的 Windows 7 和 XP 系统方面取得了显著进展。主要突破包括:性能提升(启动速度加快、执行效率提高)、部署优化(无需安装.NET 运行时、减小应用程序体积)、兼容性保障(编译策略优化、依赖项管理改进)以及安全性增强(代码保护机制)。这些改进使得应用程序在老旧系统上运行更加流畅、高效和安全。
    738 2
    |
    XML 安全 API
    .NET 9 AOT的突破 - 支持老旧Win7与XP环境
    .NET 9开始,AOT支持Win7和XP,不仅仅只支持SP1版本
    .NET 9 AOT的突破 - 支持老旧Win7与XP环境
    .NET 4.0下实现.NET4.5的Task类相似功能组件
    【10月更文挑战第29天】在.NET 4.0 环境下,可以使用 `BackgroundWorker` 类来实现类似于 .NET 4.5 中 `Task` 类的功能。`BackgroundWorker` 允许在后台执行耗时操作,同时不会阻塞用户界面线程,并支持进度报告和取消操作。尽管它有一些局限性,如复杂的事件处理模型和不灵活的任务管理方式,但在某些情况下仍能有效替代 `Task` 类。
    305 0
    |
    监控 前端开发 API
    一款基于 .NET MVC 框架开发、功能全面的MES系统
    一款基于 .NET MVC 框架开发、功能全面的MES系统
    813 5