Cruise Control.Net 1.5 + Visual Source Safe + MSBuild.exe

时间:2011-01-05 05:32:14

标签: cruisecontrol.net

我正在尝试将Cruise Control.net 1.5集成到Visual Source Safe。

任何人都可以一步一步地与我分享(Build + Email + Triggers + Publish的配置)来安装带有Visual Source的cruise control.net。

提前致谢...

1 个答案:

答案 0 :(得分:1)

你看过"How to Hook Up a VS.NET 2005 Solution with CruiseControl.NET in a few minutes."吗?

配置文件(对于vss)如下所示:

<cruisecontrol>
  <project name="Johans Test System">
    <sourcecontrol type="vss" autoGetSource="true" applyLabel="true">
      <executable>C:\Program Files\Microsoft Visual SourceSafe\ss.exe</executable>
      <project>$/JohansTestSystem.root</project>
      <username>Johan</username>
      <password></password>
      <ssdir>c:\vss\</ssdir>
      <workingDirectory>C:\CI\</workingDirectory>
      <cleanCopy>true</cleanCopy>
    </sourcecontrol>

    <triggers>
      <intervalTrigger seconds="60" />
    </triggers>

    <tasks>
      <msbuild>
        <executable>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe</executable>
        <workingDirectory>c:\CI\JohansTestSystem</workingDirectory>
        <projectFile>JohansTestSystem.sln</projectFile>
        <buildArgs>/noconsolelogger /p:Configuration=Debug /v:diag</buildArgs>
        <targets>Build</targets>
        <timeout>15</timeout>
        <logger>ThoughtWorks.CruiseControl.MsBuild.XmlLogger,ThoughtWorks.CruiseControl.MsBuild.dll</logger>
      </msbuild>
      <nunit path="C:\nunit\bin\nunit-console.exe">
        <assemblies>
          <assembly>C:\CI\JohansTestSystem\Johan.Test\bin\Debug\Johan.Test.dll</assembly>
        </assemblies>
      </nunit>
    </tasks>

    <publishers>
      <xmllogger />
    </publishers>

  </project>
</cruisecontrol>

Email blocks documentation非常简单。

这是CruiseControl.NET的例子:

 1<email mailport="25" includeDetails="TRUE" mailhostUsername="smtpuser" mailhostPassword="smtppassword" useSSL="FALSE">
 2  <from>buildmaster@mycompany.com</from>
 3  <mailhost>smtp.mycompany.com</mailhost>
 4  <users>
 5    <user name="BuildGuru" group="buildmaster" address="buildguru@mycompany.com" />
 6    <user name="JoeDeveloper" group="developers" address="joedeveloper@thoughtworks.com" />
 7  </users>
 8  <groups>
 9    <group name="developers">
10      <notifications>
11        <notificationType>Failed</notificationType>
12        <notificationType>Fixed</notificationType>
13      </notifications>
14    </group>
15    <group name="buildmaster">
16      <notifications>
17        <notificationType>Always</notificationType>
18      </notifications>
19    </group>
20  </groups>
21  <converters>
22    <regexConverter find="$" replace="@TheCompany.com" />
23  </converters>
24  <modifierNotificationTypes>
25    <NotificationType>Failed</NotificationType>
26    <NotificationType>Fixed</NotificationType>
27  </modifierNotificationTypes>
28  <subjectSettings>
29    <subject buildResult="StillBroken" value="Build is still broken for {CCNetProject}" />
30  </subjectSettings>
31  <xslFiles>
32    <file>xsl\header.xsl</file>
33    <file>xsl\compile.xsl</file>
34    <file>xsl\unittests.xsl</file>
35    <file>xsl\modifications.xsl</file>
36  </xslFiles>
37  <attachments>
38    <file>C:\Data\AFile.txt</file>
39    <file>Relative.txt</file>
40  </attachments>
41</email>

当然如果你想通过gmail发送,那也很酷:

  

GMail用于通过Gmail发送邮件:   * mailhost =“smtp.gmail.com”   * mailport =“587”   * mailhostUsername =“xxx.yyy@gmail.com”   * mailhostPassword =“yourpassword”   * useSSL =“TRUE”

您可能还应该查看有关CC.NET电子邮件发布的this SO thread