.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如需转载请自行联系原作者
王德水
相关文章
|
13天前
|
Linux C++ Windows
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
|
10天前
|
jenkins 测试技术 持续交付
解锁.NET项目高效秘籍:从理论迷雾到实践巅峰,持续集成与自动化测试如何悄然改变游戏规则?
【8月更文挑战第28天】在软件开发领域,持续集成(CI)与自动化测试已成为提升效率和质量的关键工具。尤其在.NET项目中,二者的结合能显著提高开发速度并保证软件稳定性。本文将从理论到实践,详细介绍CI与自动化测试的重要性,并以ASP.NET Core Web API项目为例,演示如何使用Jenkins和NUnit实现自动化构建与测试。每次代码提交后,Jenkins自动触发构建流程,通过编译和运行NUnit测试确保代码质量。这种方式不仅节省了时间,还能快速发现并解决问题,推动.NET项目开发迈向更高水平。
28 8
|
13天前
|
JavaScript 网络协议 API
【Azure API 管理】Azure APIM服务集成在内部虚拟网络后,在内部环境中打开APIM门户使用APIs中的TEST功能失败
【Azure API 管理】Azure APIM服务集成在内部虚拟网络后,在内部环境中打开APIM门户使用APIs中的TEST功能失败
|
17天前
|
jenkins Linux 持续交付
在Linux中,如何使用Jenkins和Ansible进行虚拟化环境的自动化和持续集成/持续部署(CI/CD)?
在Linux中,如何使用Jenkins和Ansible进行虚拟化环境的自动化和持续集成/持续部署(CI/CD)?
|
23天前
|
开发框架 .NET 数据库连接
闲话 Asp.Net Core 数据校验(三)EF Core 集成 FluentValidation 校验数据例子
闲话 Asp.Net Core 数据校验(三)EF Core 集成 FluentValidation 校验数据例子
|
7天前
|
Java Spring UED
Spring框架的异常处理秘籍:打造不败之身的应用!
【8月更文挑战第31天】在软件开发中,异常处理对应用的稳定性和健壮性至关重要。Spring框架提供了一套完善的异常处理机制,包括使用`@ExceptionHandler`注解和配置`@ControllerAdvice`。本文将详细介绍这两种方式,并通过示例代码展示其具体应用。`@ExceptionHandler`可用于控制器类中的方法,处理特定异常;而`@ControllerAdvice`则允许定义全局异常处理器,捕获多个控制器中的异常。
18 0
|
13天前
|
JavaScript Linux API
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
|
15天前
|
Kubernetes 监控 Shell
在K8S中,我们公司用户反应pod连接数非常多,希望看一下这些连接都是什么信息?什么状态?怎么排查?容器里面没有集成bash环境、网络工具,怎么处理?
在K8S中,我们公司用户反应pod连接数非常多,希望看一下这些连接都是什么信息?什么状态?怎么排查?容器里面没有集成bash环境、网络工具,怎么处理?
|
23天前
|
开发框架 NoSQL .NET
使用 Asp.net core webapi 集成配置系统,提高程序的灵活和可维护性
使用 Asp.net core webapi 集成配置系统,提高程序的灵活和可维护性
|
2月前
|
SQL 存储 JSON
DataWorks产品使用合集之没有dev环境的project,如何创建数据集成任务时完成网络与资源配置
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。

热门文章

最新文章

下一篇
DDNS