代码之家  ›  专栏  ›  技术社区  ›  Lanceomagnifico

CruiseControl<Buildargs>Nant参数未被传递

  •  2
  • Lanceomagnifico  · 技术社区  · 16 年前

    我一直在尝试使用CruiseControl构建配置文件中的参数,但没有用。在检查CruiseControl日志文件时,我尝试传递的任何buildArgs都不会传递给对Nant的调用。

    这是南特任务:

    <nant>
      <buildArgs>-D:CCFoo="Unknown" -D:foo="$(foo)"</buildArgs>
      <executable>C:\MCR\Trunk\BuildLibrary\NAnt.exe</executable>
      <baseDirectory>C:\MCR\Trunk\tek.Build</baseDirectory>
      <buildFile>tek.build</buildFile>
      <targetList>
        <target>cc</target>
      </targetList>
      <buildTimeoutSeconds>1800</buildTimeoutSeconds>
    </nant>
    

    以下是对Nant调用的日志文件中显示的内容:

    2010-01-28 08:45:12,815 [TekWebsite:DEBUG] Starting process [C:\MCR\Trunk\BuildLibrary\NAnt.exe] in working directory [C:\MCR\Trunk\tek.Build] with arguments [-nologo -buildfile:tek.build -logger:NAnt.Core.XmlLogger -D:CCNetArtifactDirectory="C:\Program Files (x86)\CruiseControl.NET\server\builds" -D:CCNetBuildCondition=ForceBuild -D:CCNetBuildDate=2010-01-28 -D:CCNetBuildTime=08:45:12 -D:CCNetFailureUsers= -D:CCNetIntegrationStatus=Unknown -D:CCNetLabel=50 -D:CCNetLastIntegrationStatus=Failure -D:CCNetListenerFile="C:\Program Files (x86)\CruiseControl.NET\server\builds\ClarksWebsite_ListenFile.xml" -D:CCNetModifyingUsers= -D:CCNetNumericLabel=50 -D:CCNetProject=TekWebsite -D:CCNetProjectUrl=http://cor-str-mcr08/ccnet/server/local/project/TekWebsite/ViewProjectReport.aspx -D:CCNetRequestSource=Dashboard -D:CCNetWorkingDirectory="C:\Program Files (x86)\CruiseControl.NET\server" cc]
    

    我想也许有一个CruiseControl的配置设置告诉它忽略buildArgs?

    我试过重新排序Nant任务中的行,如您所见,将buildArgs放在顶部,在中间和底部放置一些位置。我尝试了不同的buildArgs语法,例如:

    -d:ccfoo=“未知” -D:CCFOO=未知 -DCCFOO=未知

    2 回复  |  直到 9 年前
        1
  •  2
  •   Lanceomagnifico    16 年前

    我发现了这一点-ccnet守护进程使用的ccnet.config文件将不会重新加载构建配置文件,除非:

    a)过程重启或
    b)ccnet.config文件以某种方式被更改或触摸。

    所以我刚进入c:\program files(x86)\cruisecontrol.net\server.c c net.config,添加了一个空间,保存了,现在buildArgs被传递给了nant。哇哦!

        2
  •  0
  •   markmnl    9 年前

    我在运行某些BAT文件时遇到了完全相同的问题,但我的原因是我使用了:

    <msbuild>
      ...
    

    而不是

    <exec>
      ...
    
    推荐文章