我真的很傻。我已经为我们的构建设置了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>

最佳答案

登录到CCNET的Web管理中心,例如-

http://localhost/ccnet/ViewFarmReport.aspx

检查包含您的特定项目的行的最后一栏“管理员”是否具有标题为“停止”的按钮。

如果显示的是“开始”,则需要单击它,以便将项目视为构建项目,单击“开始”还将其切换为“停止”。

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

艾比·N

10-04 14:31