如何在基于功能的发布模型中部署到生产?

时间:2012-07-03 14:14:41

标签: deployment release release-management

我们是一个非常小的团队,负责为非软件公司开发Intranet Web系统。我们是一个RAD团队:当问题关闭时(无论是新功能,错误修复还是某种配置),它会立即投入生产并上线。

问题是:该过程完全是手动的,容易出错。它包括将所有新/更新的文件逐个手动复制到生产服务器。我们经常需要根据更新类型运行SQL查询或清除应用程序缓存。

功能或错误修正每天更新两到三次,可能更多,具体取决于需求。当然这会造成很多问题。

它必须有一种更简单,更专业的方式。我能想到的一个解决方案是更新整个应用程序,但目前不可能,因为我们的主干不稳定并且有很多提交尚未准备好生产(好吧,我知道这是我们的错):))

那么我们如何自动化和改进流程呢?我们对任何工具都开放,最好免费或不太贵。

有关我们的应用程序和工具的更多信息: - PHP MVC(Zend框架) - Ubuntu - SVN(转向Git) - Redmine(转移到私人Github)

1 个答案:

答案 0 :(得分:1)

对于您的情况,工具只会到目前为止。我怀疑你需要进行一些PHP单元测试,一些UI冒烟和验收测试,可能还有一些性能测试,然后让一个工具为你想要应用于生产的每个补丁运行所有这些。然后,您还需要自动部署脚本以及可能需要用于测试这些脚本的临时环境。这是持续交付的一般领域,有一本关于这个主题的书。 http://martinfowler.com/delivery.html