用MSBuild实现持续集成

来源:互联网 发布:土豆mac 编辑:程序博客网 时间:2024/05/16 13:02

用MSBuild实现持续集成

MSBuild是微软随 .Net Framework 2.0 一起推出的一款编译工具。能够替换原来由开源社区提供的NAnt编译工具。

MSBuild功能强大(具体用法MSDN中有详细的文档),而且有良好的可扩展性。通过实现ITask接口,我们可以自定义MSBuild的Task,为MSBuild提供无限可能,实现几乎任何你想要的功能。当然,许多常用功能都已由Microsoft预定义;也有人已经扩展了许多功能供我们使用。

The MSBuild Community Tasks Project (http://msbuildtasks.tigris.org/) 就是其中比较优秀的MSBuild扩展。看看它的Task列表,就可以知道它有多强大。

AppPoolController, AppPoolCreate, AppPoolDelete, AssemblyInfo, Attrib, ExecuteDDL, FileUpdate, FtpUpload, FxCop, GetSolutionProjects, InstallAspNet, InstallAssembly, JSCompress, Mail, Math.Add, Math.Divide, Math.Modulo, Math.Multiple, Math.Subtrac, Move, NDoc, NUnit, Prompt, RegexMatch, RegexReplace, RegistryRead, RegistryWrite, Script, ServiceController, ServiceQuery, Sleep, SqlExecute, SvnCheckout, SvnClient, SvnCommit, SvnCopy, SvnExport, SvnInfo, SvnUpdate, SvnVersion, TaskSchema, TemplateFile, TfsVersion, Time, UninstallAssembly, Unzip, Version, VssAdd, VssCheckin, VssCheckout, VssClean, VssDiff, VssGet, VssHistory, VssLabel, VssUndoCheckout, WebDirectoryCreate, WebDirectoryDelete, WebDirectoryScriptMap, WebDirectorySetting, WebDownload, Xml.XmlMassUpdate, Xml.XmlQuery, XmlRead, XmlWrite, Xslt, Zip

把这些Task组合起来可以完成“从源代码服务器中取出代码”,“执行编译”,“运行数据库脚本”,“运行单元测试”,“代码质量审查”(FxCop),“步署软件”,"生成报告",“发送集成结果通知”等所有持续集成任务。

Continuous Integration: Improving Software Quality and Reducing Risk》(Jolt 2008)所描述的Compile Source Code, Run Tests, Run Inspections, Deploy Software, Integrate Database 他都能做到。

只要好好使用,它一定可以成为一个轻量级且强大的集成工具。

 

原创粉丝点击