构建完成后,您用什么来管理部署应用程序的工作流程?我并不是在谈论在服务器上获取文件的行为,而是在此之后发生的事情。验证,测试,批准,迁移到生产,淘汰旧版本等。
例:
构建完成
构建已部署到测试环境
测试完成(手动步骤)
如果测试通过,则部署到UAT,否则拒绝构建
UAT已完成(手动步骤)
如果UAT通过部署到产品,否则拒绝构建
淘汰以前在Prod中构建
有没有好的应用程序可以管理长期运行的构建工作流程?
更新资料
我还应该提到,我在寻找真正实现工作流程的工具,而不仅仅是跟踪它的状态。(复制构建,更改构建状态,发送电子邮件,启动/停止服务等)
最佳答案
此构建和发布系统混合了不同的内容,因此在您列出之后,我会做出回应:
构建完成(带有Maven Build的CruiseControl)
将构建部署到测试环境(Ant任务,从CruiseControl调用)
测试完成(手动步骤)(Maven会告诉您)
如果测试通过将部署部署到UAT,否则将拒绝构建(如果测试失败,则Maven不会结束,不会调用ant部署者)
从这里开始,我们几乎混合使用了ant和bash脚本
UAT已完成(手动步骤)
如果UAT通过部署到产品,否则拒绝构建
淘汰以前在Prod中构建
我们发现最困难的事情是重新启动应用程序服务器,因为我们对热部署没有很好的经验,但是只有maven,ant和bash才可行。
关于build-process - 应用程式建立/部署工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3096588/