• CruiseControl.Net学习记录


    一、下载

    官网

    二、安装

    本文版本:1.8.5.0

    运行安装程序,按照提示"下一步”,直到完成即可。

    安装完毕之后,

    生成一个windows服务,CruiseControl.NET Server ;

    生成一个webdashboard网站(可自行在IIS中配置)。

    三、启动

    在服务管理控制台,启动服务CruiseControl.NET Server;也可以不启动windows服务,而采用ccnet.exe控制台程序,需以管理员身份运行。

    在IIS中配置启动webdashboard站点。

    四、配置

    在server目录中的ccnet.config文件中进行项目配置。

     github(git协议)

     1 <cruisecontrol xmlns:cb="urn:ccnet.config.builder">
     2 
     3   <project name="ccnet.test" description="ccnet.test">
     4     <!--项目编译状态信息的保存位置-->
     5     <state type="state" directory="E:CCNetState" />
     6     <!--对这个项目的监控过程的日志记录目录-->
     7     <artifactDirectory>E:CCNetBuildArtifactsccnet.test</artifactDirectory>
     8     <!--源代码控制系统-->
     9     <sourcecontrol type="git">
    10       <repository>git://github.com/shashoutian/ccnet.test.git</repository>
    11       <branch>master</branch>
    12       <executable>E:ProgramFilesGitcmdgit.exe</executable>
    13       <committerName>shashoutian</committerName>
    14       <committerEMail>shashoutian2008@126.com</committerEMail>
    15       <workingDirectory>D:ProjectsGitProjectsccnet.test</workingDirectory>
    16     </sourcecontrol>
    17     <!--配置具体执行的任务-->
    18     <tasks>
    19       <exec>
    20         <!-- if you want the task to fail, ping an unknown server -->
    21         <executable>ping.exe</executable>
    22         <buildArgs>localhost</buildArgs>
    23         <buildTimeoutSeconds>15</buildTimeoutSeconds>
    24         <description>Pinging a server</description>
    25       </exec>
    26 
    27       <!--msbuild任务配置,用来编译项目-->
    28       <msbuild>
    29         <!--MSBuild.exe的路径-->
    30         <executable>C:WindowsMicrosoft.NETFrameworkv4.0.30319MSBuild.exe</executable>
    31         <!--源代码的存放位置,不配置的时候为默认值 -->
    32         <workingDirectory>D:ProjectsGitProjectsccnet.testCCNet.Test</workingDirectory>
    33         <!--要编译的项目名称 -->
    34         <projectFile>CCNet.Test.sln</projectFile>
    35         <!-- MSBuild编译时的参数,具体参数信息可以查看MSDN上的说明-->
    36         <buildArgs>/p:VisualStudioVersion=14.0;Configuration=Debug;OutputPath=E:Publishccnet.test /v:diag</buildArgs>
    37         <!--编译目标-->
    38         <targets>Build</targets>
    39         <!--超时时间-->
    40         <timeout>900</timeout>
    41         <!--日志记录模块-->
    42         <logger>E:ProgramFilesCCNetCruiseControl.NETserverThoughtWorks.CruiseControl.MsBuild.dll</logger>
    43       </msbuild>
    44 
    45       <!--发布和部署配置-->
    46       <buildpublisher>
    47         <sourceDir>E:Publishccnet.test\_PublishedWebsitesCCNet.Test</sourceDir>
    48         <publishDir>E:Publishccnet.test\_PublishedWebsitesCCNet.Test</publishDir>
    49         <useLabelSubDirectory>false</useLabelSubDirectory>
    50         <alwaysPublish>false</alwaysPublish>
    51       </buildpublisher>
    52     </tasks>
    53   </project>
    54 
    55 </cruisecontrol>

    gitlab(ssh协议)

     1 <cruisecontrol xmlns:cb="urn:ccnet.config.builder">
     2   <!-- This is your CruiseControl.NET Server Configuration file. 
     3        Add your projects below! -->
     4   <project name="Disney" description="Disney ManageWeb">
     5     <!--分类-->
     6     <category>后台系统</category>
     7     <!--日志目录-->
     8     <state type="state" directory="C:CCNetState" />
     9     <artifactDirectory>C:CCNetBuildArtifactsDisney</artifactDirectory>
    10     <!--源码控制-->
    11     <sourcecontrol type="git">
    12       <repository>git@gitlab.mtime-dev.com:partner/disney-mw.git</repository>
    13       <branch>develop</branch>
    14       <executable>C:Program Files (x86)Gitcmdgit.exe</executable>
    15       <workingDirectory>D:GitProjectspartnerabc</workingDirectory>
    16     </sourcecontrol>
    17     <!--任务-->
    18     <tasks>
    19       <exec>
    20         <!-- if you want the task to fail, ping an unknown server -->
    21         <executable>ping.exe</executable>
    22         <buildArgs>localhost</buildArgs>
    23         <buildTimeoutSeconds>15</buildTimeoutSeconds>
    24         <description>Pinging a server</description>
    25       </exec>
    26       <!--编译项目-->
    27       <msbuild>
    28         <executable>C:WindowsMicrosoft.NETFramework64v4.0.30319MSBuild.exe</executable>
    29         <workingDirectory>D:GitProjectspartnerabcDisney.Manage.Web</workingDirectory>
    30         <projectFile>Disney.Manage.Web.csproj</projectFile>
    31         <logger>E:ccnetCruiseControl.NETserverThoughtWorks.CruiseControl.MSBuild.dll</logger>
    32         <targets>Build</targets>
    33         <timeout>900</timeout>
    34         <!--/p 最后一对属性值后面不需要分号(切记)-->
    35         <buildArgs>/p:OutputPath=E:BuildOutputdisney;Configuration=Release;Platform=AnyCPU</buildArgs>
    36       </msbuild>
    37       <!--发布到站点-->
    38       <buildpublisher>
    39         <sourceDir>E:BuildOutputdisney</sourceDir>
    40         <publishDir>E:websitesdisney</publishDir>
    41         <useLabelSubDirectory>false</useLabelSubDirectory>
    42       </buildpublisher>
    43     </tasks>
    44     <publishers>
    45       <xmllogger />
    46       <artifactcleanup cleanUpMethod="KeepLastXBuilds" cleanUpValue="50" />
    47     </publishers>
    48   </project>  
    49 </cruisecontrol>

    五、配置节点详解

    六、需要注意的问题

    1、ccnet的webdashboard站点基于.net2.0运行;

    2、ccnet通过git控制源代码时,需要首先确保在cmd命令行中可以执行git的各个命令,即需要配置环境变量Path:安装目录Gitcmd,如 E:ProgramFilesGitcmd;

    3、使用github时,在ccnet.config中sourcecontrol节点的repository需采用git协议,而不是http协议和ssh协议,并且git协议获取的文件是只读的(待确认;如

    <repository>git://github.com/shashoutian/ccnet.test.git</repository>

     七、参考资料

    使用CruiseControl.Net全面实现持续集成

    .NET环境下每日集成系列

    使用CruiseControl.NET进行自动化构建总结

    每日集成CruiseControl.NET + SVN + Msbuild + NAnt

    项目管理实践三、每日构建【Daily Build Using CruiseControl.NET and MSBuild】

  • 相关阅读:
    pytest(二十四)--运行上次失败用例(--if 和 --ff)
    pytest(二十三)--conftest.py作用范围
    pytest(二十二)--fixture的作用范围(scope)
    pytest(二十一)--使用多个fixture和fixture直接互相调用
    pytest(二十)--fixture详细介绍-作为参数传入,error和failed区别
    pytest(十八)--doctest测试框架
    HDU
    Hrbust-1132 水数(排列组合)
    HDU
    UPC-5842 硬币游戏IV(DP)
  • 原文地址:https://www.cnblogs.com/wangwangfei/p/5695993.html
Copyright © 2020-2023  润新知