合并出版商 - 什么呢 在CruiseControl.Net实际上呢?(Merge Publi

2019-10-16 13:51发布

我继承了从CruiseControl的运行TestComplete脚本的项目。 对于每个脚本存在的ccnet.config一个条目,并且每个条目具有以下结束:

<publishers>
  <merge>
   <files>
     <file action="Copy">
        C:\Test\Log\TestCompleteResult\TestWebLog.mht
     </file>
   </files>
  </merge>
 <xmllogger />
 <statistics />

其中我认为复制TestComplete记录到该位置。 但是,如果我改变位置(即C:\测试\ LOG2 \ TestWebLog.mht),该文件仍然用C结束:\测试\登录\ TestCompleteResult。 我曾试图关闭CruiseControl的,重新启动系统等,并在文件仍然在相同的位置结束。

我已删除的目录和文件,检查时间戳,看着日志文件。 都表明它是由最近的TestComplete脚本的运行创造了一个新的文件,但它总是被摆在同一个位置:C:\测试\登录\ TestCompleteResult \ TestWebLog.mht。

是否有其他人这条道路可以定义一些地方?

Answer 1:

从CruiseControl.NET百科 :

复制:代替数据合并到生成日志,将指定文件复制到“构建”文件夹下的文物为项目文件夹

在的ccnet.config您可以指定每个项目到其中的构建结果将被置于一个工件目录。

<project name="Project">
<artifactDirectory>C:\ProjectDir\artifacts</artifactDirectory>
...
</project>

默认的合并动作是到指定的文件与神器目录中找到为result.xml结合起来。 “复制”合并动作复制指定文件到artifactdirectory \ build文件夹。

您在指定的文件<file>...</file>标签是将被复制到文件夹神器文件。



Answer 2:

<merge>出版商包括在构建报告现有文件。 如果你想改变在其中生成文件的位置,您需要更改任务配置(即在TestComplete被实际调用的地方)。



文章来源: Merge Publisher - what does actually do in CruiseControl.Net?