我试图开发一个巡航控制步骤,它将处理数据库迁移脚本并应用它们。从Ant任务中获取对修改列表的引用
我想能够从SourceControl中获得修改列表(查看是否需要应用任何新的数据库更改)。
任何想法,我可以如何实现这一点?我知道这些信息被写入日志xml中,但我想知道是否有一种简单的机制可以从Ant构建器中获得对此的引用。
我已经研究过编写一个自定义CC Listener或Builder插件,但都没有在接口中提供这个。
我试图开发一个巡航控制步骤,它将处理数据库迁移脚本并应用它们。从Ant任务中获取对修改列表的引用
我想能够从SourceControl中获得修改列表(查看是否需要应用任何新的数据库更改)。
任何想法,我可以如何实现这一点?我知道这些信息被写入日志xml中,但我想知道是否有一种简单的机制可以从Ant构建器中获得对此的引用。
我已经研究过编写一个自定义CC Listener或Builder插件,但都没有在接口中提供这个。
我们有“SVN更新”为在Ant构建的步骤之一,后来我们用输出重定向到文件(Ant属性也可使用):
<exec executable="svn" dir=".">
<arg line="up"/>
<redirector output="svnup.log" alwayslog="true" append="true"/>
</exec>
<property name="svnup.log" value="svnup.log"/>
此建立文件名为“svnup .log“,并输出”svn up“命令。
我想我会尝试编写自定义插件实现出版商
@Override
public void publish(Element cruisecontrolLog) throws CruiseControlException { XMLLogHelper xmlHelper = new XMLLogHelper(cruisecontrolLog);
Set<Modification> modifications = xmlHelper.getModifications();
for (Modification modification : modifications) {
handleModification(modification);
}
}
或者另一个想法是使用时间戳标记在SSCM Ant任务与提供给Ant构建的cclastbuildtimestamp物业组合生成自上次构建以来更改的文件列表。
我想挖掘并利用巡航控制版本的修改集部分的结果。你的解决方案涉及到另外的svn调用,这也会起作用。 –