浏览 2799 次
锁定老帖子 主题:ant+cvs实现增量部署
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-09-20
最后修改:2010-12-16
因为老大要求增量部署,一直没时间写,终于找点时间搞了一下:
思路: 各开发人员将本次需要上线的代码的全路径提到一个文本文件里,然后ant解析文本文件挨个打上线tag,最后统一取该 tag的内容打包,OK
其中用到了 ant 的逻辑插件antcontrib
ant 版本:apache-ant-1.7.1 contrib版本:ant-contrib-1.0b3
注意这两个版本是对应的
具体目录和脚本见附件 config目录用于放置本地编译需要的jar包,这些包可能不允许上传也没必要上传到CVS上; deployfile里的addFile.txt文件为代码路径的文本文件,一次用完后手动该名为当天日期,再新建一个该文件; temp目录下放置的是操作CVS和构造包目录的内容; work目录下是ant的工作脚本
将contrib的jar放到ant里就行了
测试了一下110M的工程需要6分多钟,还是感觉太慢,所以一直没用。各位有没有更快的方法共享下。
详情见附件,ant的包太大,自己下吧,是1.7.1版本哦
2010-12-16日编辑该脚本对部署逻辑进行了修改: 1:获取需要增量部署的代码列表 2:先按照生产的tag取出所有代码 3:再按照增量的代码列表从CVS覆盖获取-A 4:编译构造文件路径打包 该逻辑第一次需要取全量TAG的代码,以后就只需要取增量的代码就行了,生产包确定后,执行build.xml里的tag任务将 增量的代码打上生产标签,下一个测试周期再重新取一次生产tag的全量代码,如此反复即可。 优点:减少CVS和JAVAC的时间。 本次修改后的包见附件cc_ant.rar 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-10-19
谢谢!非常有用!
不过我想知道,用svn的话,你的脚本应该变动不大吧。 还有就是,我现在用 maven,要是 maven 有直接支持的插件就好了。我想自己写maven插件的,但够呛有时间。maven里面调用ant应该没有问题,so 你的脚本应该也可以直接用在maven上了。不过我还得试试,不知道行不行啊。 |
|
返回顶楼 | |