当巡航构建被触发时,它会调用我的构建脚本。我的构建脚本使用版本号安装内容。这个版本不是恒定的,而且非常随机,因为我在每次安装时都会提取它,并且需要在电子邮件主题中使用。(决定cruise labellers
不是一个好的解决方案)
我已经在 ccnet.config <cb:define version="" />
中定义了我在构建过程中使用构建脚本进行更新的位置。但是由于此更新是在构建运行时完成的,因此巡航已经读取了配置文件,并且在构建之前获取了值。
我想在构建过程中获取值。此值显示在电子邮件主题中,如下所示:
<publishers>
<email>
<subjectSettings>
<subject buildResult="Success" value="Version $(version) was installed " />
</subjectSettings>
</email>
</publishers>
有没有办法告诉我 Cruise 在准备发送电子邮件时在构建过程中使用新值?也许如果我弄清楚这些信息是如何存储的,我可以在构建运行时清理它,然后显示我的新值。
我没有发现在构建过程中更新版本的方法,所以我拆分了 curise 控制消息。如果失败,它将使用巡航控制触发电子邮件。如果成功,它将通过 NAnt 触发电子邮件。通过在 Nant 中成功完成部分,我能够获得触发构建所需的版本,并保留${CCNetProject}, ${CCNetBuildTime}
等巡航属性。