build-process - 应用程式建立/部署工作流程

标签 build-process workflow release-management

构建完成后,您用什么来管理部署应用程序的工作流程?我并不是在谈论在服务器上获取文件的行为,而是在此之后发生的事情。验证,测试,批准,迁移到生产,淘汰旧版本等。

例:


构建完成
构建已部署到测试环境
测试完成(手动步骤)
如果测试通过,则部署到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/

相关文章:

javascript - Web生产:外部JS文件中的绝对URL?

continuous-integration - 配置 Visual Studio Team Services 以部署 WebJobs

deployment - 敏捷环境中的发布时间表

java - 如何获得 Ivy 的依赖

ant - 没有 -q 标志让 Ant 安静?

jira - 在流程设计中将步骤命名为任务与状态

Django - Mac OSX 工作流程 - 有关高效开发方法的问题

iOS:从命令行运行单个单元测试

cmake - 如何从 CMake 构建目标仅生成目标文件 (*.o)?

c# - [DebuggerDisplay] 等调试属性是否仍会编译到 Release 二进制文件中?