CruiseControl.net构建不会触发

时间:2010-06-18 13:06:07

标签: cruisecontrol.net

我觉得自己真的很蠢。我为我们的构建设置了cruisecontrol.net。如果我从命令行运行它,它工作正常:ccnet.exe -p = TestLib

但是,如果我将CCNET作为服务器运行或者从启动/程序运行它,它什么都不做。我希望以下脚本每隔10分钟建一次......

我做错了什么???

<cruisecontrol xmlns:cb="urn:ccnet.config.builder">
<!-- This is your CruiseControl.NET Server Configuration file. Add your projects below! -->

<project name="TestLib">
    <triggers>
        <intervalTrigger seconds="600" buildCondition="ForceBuild"/>
    </triggers>

    <sourcecontrol type="svn" autoGetSource="true">
        <trunkUrl>xxxx://xxxxxxxxxxx/svn/testlib/trunk</trunkUrl> 
        <workingDirectory>c:\Projects\TestLib</workingDirectory> 
        <executable>C:\Program Files\Subversion\bin\svn.exe</executable> 
        <username>xxxxxxx</username> 
        <password>xxxxxxx</password> 
    <timeout units="minutes">5</timeout> 
    </sourcecontrol>

    <tasks>
       <msbuild>
            <executable>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
            <workingDirectory>c:\Projects\TestLib</workingDirectory>
            <projectFile>TestLib.sln</projectFile>
            <buildArgs>/noconsolelogger /p:Configuration=Release;Platform=x86 /v:diag</buildArgs>
            <targets>Clean,Build</targets>
            <timeout>600</timeout>
            <logger>ThoughtWorks.CruiseControl.MsBuild.XmlLogger,C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
        </msbuild>

        <exec>
            <executable>copyfiles_testlib.bat</executable>
            <baseDirectory>C:\Projects</baseDirectory>
            <buildArgs></buildArgs>
            <buildTimeoutSeconds>60</buildTimeoutSeconds>
        </exec>
    </tasks>

    <publishers>
        <statistics />
        <xmllogger />
    </publishers>
</project>

4 个答案:

答案 0 :(得分:5)

登录CCNET的网络管理中心,如 -

http://localhost/ccnet/ViewFarmReport.aspx

检查包含特定项目的行的最后一列Admin是否有一个带标题的按钮 - 停止。

如果它显示的是Start,那么您需要单击它以便项目将被考虑用于构建并单击Start也将其切换为Stop。

基本上这个步骤称为启动项目的集成商。

Abhy N

答案 1 :(得分:2)

你确定它不起作用吗?因为如果你查看-p param的文档,它会说:

“有时它对调试特定项目很有用。如果使用此选项,CruiseControl.NET将只启动指定项目,强制构建它,然后关闭服务器。”

所以...如果您不使用该参数,它将在构建项目之前等待10分钟,因为这是您设置的时间间隔。

我认为您的意思是将其作为服务运行?

  1. 您确定该服务正在运行吗?检查服务控制面板。是否设置为自动启动并且是否正在运行?检查日志文件。您是否按照此处http://confluence.public.thoughtworks.org/display/CCNET/The+Server+Service+Application的步骤设置了服务?

  2. 您确定它具有访问工作文件夹和工件文件夹的凭据。该服务应该以具有访问这些文件夹的凭据的用户身份运行。

  3. 如果您确定它正在运行,您是否看过仪表板?它是否显示该项目?

  4. 如果您可以删除所有.log文件,那将有所帮助...启动服务然后查看日志。如果您仍然不确定会出现什么问题,请在此处发布。

答案 2 :(得分:2)

我和Enrico有完全相同的问题:

如果我使用-p运行项目以强制构建,则从命令行开始,构建成功完成。

当我双击桌面上的CCNET图标(在安装时放置)时,构建过程似乎开始,然后突然停止,没有明显的原因。

CruiseControl.NET Server 1.5.7256.1 -- .NET Continuous Integration Server
Copyright c 2003 - 2010 ThoughtWorks Inc.  All Rights Reserved.
.NET Runtime Version: 2.0.50727.3053    Image Runtime Version: v2.0.50727
OS Version: Microsoft Windows NT 5.1.2600 Service Pack 3        Server locale: en-CA

[1:DEBUG] The trace level is currently set to debug.  This will cause CCNet to log at the most verbose level, which is u
seful for setting up or debugging the server.  Once your server is running smoothly, we recommend changing this setting
in C:\Program Files\CruiseControl.NET\server\ccnet.exe.Config to a lower level.
[1:DEBUG] [FileChangedWatcher] Add config file 'ccnet.config' to file change watcher collection.
[CCNet Server:INFO] Reading configuration file "C:\Program Files\CruiseControl.NET\server\ccnet.config"
[CCNet Server:DEBUG] [FileChangedWatcher] Add config file 'C:\Program Files\CruiseControl.NET\server\ccnet.config' to fi
le change watcher collection.
[CCNet Server:WARN] Configuration does not have any version information - assuming the configuration is for version 1.5
[CCNet Server:INFO] Log cache time set to 5 minutes
[CCNet Server:INFO] Registered channel: tcp
[CCNet Server:INFO] CruiseManager: Listening on url: tcp://192.168.1.52:21234/CruiseManager.rem
[CCNet Server:INFO] Registered channel: tcp
[CCNet Server:INFO] CruiseServerClient: Listening on url: tcp://192.168.1.52:21234/CruiseServerClient.rem
[CCNet Server:INFO] Starting CruiseControl.NET Server
[CCNet Server:INFO] Initialising security
[CCNet Server:INFO] Starting extensions

答案 3 :(得分:0)

在信息中心页面中,深入查看相关项目报告,然后选择查看服务器日志。观察并解决重复出现的异常。

如果您可以看到CC.NET服务器的命令行,也可以查看这些异常。

在我的情况下,由于从SVN中删除了一个目录,我看到了异常,但是服务器仍然希望将其下载到磁盘。