在ccnet生成标签之前运行msbuild任务

在ccnet生成标签之前运行msbuild任务,msbuild,continuous-integration,build-process,cruisecontrol.net,Msbuild,Continuous Integration,Build Process,Cruisecontrol.net,ccnet操作的确切顺序(取自): 在ccnet中执行步骤3.1之前,是否有方法运行某些msbuild任务 问题陈述: 我正在使用“fileLabeller”在ccnet label中显示文件的内容。如果该文件存在,则效果良好。但是,假设该文件不存在,那么我想调用一个msbuild任务来创建该文件并设置一些伪文本 我在prebuild事件中调用了此msbuild任务,但令我沮丧的是,由于标签生成发生在prebuild之前,所以没有成功 是否有方法在生成标签之前调用此msbuild任务?Cruis

ccnet操作的确切顺序(取自):

在ccnet中执行步骤3.1之前,是否有方法运行某些msbuild任务

问题陈述

我正在使用“fileLabeller”在ccnet label中显示文件的内容。如果该文件存在,则效果良好。但是,假设该文件不存在,那么我想调用一个msbuild任务来创建该文件并设置一些伪文本

我在prebuild事件中调用了此msbuild任务,但令我沮丧的是,由于标签生成发生在prebuild之前,所以没有成功


是否有方法在生成标签之前调用此msbuild任务?

Cruisecontrol.net将所有输出记录到具有特定标签的文件中。这意味着在其他任何事情发生之前必须确定标签。
如果需要运行Msbuild来构建标签,则可能需要编写自己的标签程序

谢谢西蒙。我为这一款写了一个定制贴标机。
   1) Wait for the triggers to awaken.
   2) Ask the source control system for a list of the modifications since the last build.
   3) If any modifications were found or if the triggers said "force the build":
           3.1) Generate a label for the build.
           3.2) Run the prebuild tasks in the order specified, failing the build in case of error.
           3.3) Get the source code from the source control system.
           3.4) Run the build tasks in the order specified, failing the build in case of error.
           3.5) If the repository should be labeled:
                   3.5.1) Let the source control system apply the label.
           3.6) Run the publisher tasks.
   4) Go to 1.